Bug #81603 [Csd]: zend_gc_delref: Assertion failed
| From: | mbeccati@php.net | Date: | Tue, 16 Nov 2021 10:22:45 +0000 |
| Subject: | Bug #81603 [Csd]: zend_gc_delref: Assertion failed | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-237784@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=81603&edit=1
ID: 81603
Updated by: mbeccati@php.net
Reported by: mbeccati@php.net
Summary: zend_gc_delref: Assertion failed
Status: Closed
Type: Bug
Package: Reproducible crash
Operating System: Ubuntu 20.04.2 LTS
PHP Version: 7.4.26RC1
Assigned To: nikic
Block user comment: N
Private report: N
New Comment:
Well, thank you! Great job tracking this down! :-)
Previous Comments:
------------------------------------------------------------------------
[2021-11-16 09:25:57] nikic@php.net
Great, thanks for the quick confirmation!
------------------------------------------------------------------------
[2021-11-16 09:24:58] mbeccati@php.net
Confirmed, the build is green now: https://revive.beccati.com/bamboo/browse/PHP-PHPSPEC-2723
------------------------------------------------------------------------
[2021-11-16 09:17:52] nikic@php.net
This is most likely fixed by https://github.com/php/php-src/commit/18a0d46a1b44cc67e97ccdf9f828c690d651c7f1.
Could you please confirm?
------------------------------------------------------------------------
[2021-11-09 15:04:03] mbeccati@php.net
No particular warnings in valgrind here either, just the SIGABRT. Not sure if there are any other
useful options I can add.
$ USE_ZEND_ALLOC=0 valgrind --tool=memcheck --num-callers=30 --track-origins=yes ~/php74/bin/php
bin/phpspec run
==869939== Memcheck, a memory error detector
==869939== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==869939== Using Valgrind-3.15.0 and LibVEX; rerun with -h for copyright info
==869939== Command: /home/atlassian/php74/bin/php bin/phpspec run
==869939==
php: /home/atlassian/bamboo/local-working-dir/PHP-SRC9-BUIL/Zend/zend_types.h:1039: zend_gc_delref:
Assertion `p->refcount > 0' failed.
==869939==
==869939== Process terminating with default action of signal 6 (SIGABRT)
==869939== at 0x5CE818B: raise (raise.c:51)
==869939== by 0x5CC7858: abort (abort.c:79)
==869939== by 0x5CC7728: __assert_fail_base.cold (assert.c:92)
==869939== by 0x5CD8F35: __assert_fail (assert.c:101)
==869939== by 0x990545: zend_gc_delref (zend_types.h:1039)
==869939== by 0x9918E6: gc_mark_grey (zend_gc.c:872)
==869939== by 0x991D24: gc_mark_roots (zend_gc.c:977)
==869939== by 0x99303D: zend_gc_collect_cycles (zend_gc.c:1452)
==869939== by 0x990D76: gc_possible_root_when_full (zend_gc.c:592)
==869939== by 0x990EFF: gc_possible_root (zend_gc.c:642)
==869939== by 0x96B4DD: gc_check_possible_root (zend_gc.h:83)
==869939== by 0x96B52F: i_zval_ptr_dtor (zend_variables.h:46)
==869939== by 0x9708F2: zend_array_destroy (zend_hash.c:1611)
==869939== by 0x953FB7: rc_dtor_func (zend_variables.c:57)
==869939== by 0x953F36: i_zval_ptr_dtor (zend_variables.h:44)
==869939== by 0x95415C: zval_ptr_dtor (zend_variables.c:84)
==869939== by 0x725B86: php_usort (array.c:1040)
==869939== by 0x725CBA: zif_usort (array.c:1052)
==869939== by 0x9CD8BB: ZEND_DO_FCALL_BY_NAME_SPEC_RETVAL_UNUSED_HANDLER (zend_vm_execute.h:1442)
==869939== by 0xA39095: execute_ex (zend_vm_execute.h:53513)
==869939== by 0x93EE32: zend_call_function (zend_execute_API.c:820)
==869939== by 0x756E48: zif_call_user_func (basic_functions.c:4935)
==869939== by 0x9CDC55: ZEND_DO_FCALL_BY_NAME_SPEC_RETVAL_USED_HANDLER (zend_vm_execute.h:1526)
==869939== by 0xA390A9: execute_ex (zend_vm_execute.h:53517)
==869939== by 0x93EE32: zend_call_function (zend_execute_API.c:820)
==869939== by 0x6697C8: reflection_method_invoke (php_reflection.c:3168)
==869939== by 0x669982: zim_reflection_method_invokeArgs (php_reflection.c:3204)
==869939== by 0x9CE047: ZEND_DO_FCALL_SPEC_RETVAL_UNUSED_HANDLER (zend_vm_execute.h:1618)
------------------------------------------------------------------------
[2021-11-09 09:40:53] nikic@php.net
I wasn't able to reproduce this on current 7.4 HEAD. I tried both with and without opcache and
also checked that there are no warnings under USE_ZEND_ALLOC=0 valgrind.
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
https://bugs.php.net/bug.php?id=81603
--
Edit this bug report at https://bugs.php.net/bug.php?id=81603&edit=1