Bug #81648 [Com]: SIGSEGV on Symfony controller annotations

From: Date: Tue, 02 May 2023 12:26:08 +0000
Subject: Bug #81648 [Com]: SIGSEGV on Symfony controller annotations
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-244337@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=81648&edit=1

 ID:                 81648
 Comment by:         jeffsteven22 at aol dot com
 Reported by:        hhoechtl at 1drop dot de
 Summary:            SIGSEGV on Symfony controller annotations
 Status:             Open
 Type:               Bug
 Package:            Reproducible crash
 Operating System:   Debian 10
 PHP Version:        8.0.13
 Block user comment: N
 Private report:     N

 New Comment:

(https://www.linkedin.com/pulse/augusta-precious-metals-review-best-gold-ira-company-jeffrey-keever/)github.com
(https://www.linkedin.com/pulse/goldco-review-gold-ira-rollover-precious-metal-company-jeffrey-keever/)github.com
(https://www.linkedin.com/pulse/how-apply-employee-retention-credit-erc-complete-guide-jeffrey-keever/)github.com
(https://www.linkedin.com/pulse/best-gold-ira-companies-investment-retirement-accounts-jeffrey-keever/)github.com
(https://www.linkedin.com/pulse/ira-allowable-precious-metals-best-ira-approved-metal-jeffrey-keever/)github.com
(https://www.linkedin.com/pulse/roth-gold-ira-account-best-companies-how-works-jeffrey-keever/)github.com
(https://www.linkedin.com/pulse/what-employee-retention-tax-credit-ertc-jeffrey-keever/)github.com
(https://www.linkedin.com/pulse/best-precious-metals-ira-2023-jeffrey-keever/)github.com
(https://www.linkedin.com/pulse/best-silver-ira-companies-2023-jeffrey-keever/)github.com
(https://www.linkedin.com/pulse/how-protect-your-401k-from-market-crash-recession-jeffrey-keever/)github.com
(https://www.linkedin.com/pulse/goldco-vs-augusta-precious-metals-which-best-gold-ira-jeffrey-keever/)github.com
(https://www.linkedin.com/pulse/how-move-401k-gold-ira-without-penalty-jeffrey-keever/)github.com 
(https://www.linkedin.com/pulse/how-buy-physical-gold-your-401k-jeffrey-keever/)github.com
(https://www.linkedin.com/pulse/noble-gold-investments-review-jeffrey-keever/)github.com
(https://www.linkedin.com/pulse/best-paying-jobs-precious-metals-jeffrey-keever/)github.com
(https://www.linkedin.com/pulse/how-buy-gold-ira-jeffrey-keever-1e/)github.com


Previous Comments:
------------------------------------------------------------------------
[2022-12-16 08:48:41] Jeffre89Kruger at gmail dot com

Check if you have in config/routes/annotations.yaml:

controllers:
    resource: ../../src/Controller/
    type: annotation

(https://www.mythdhr.ltd/)github.com

------------------------------------------------------------------------
[2022-11-23 05:38:47] barrykaauamo at gmail dot com

I’m especially stayed aware of the article and I will get many benefits from
it.(https://www.myloyola.net/)github.com

------------------------------------------------------------------------
[2022-01-10 17:44:44] emiel at crisp dot nl

Presumably same issue here on 8.1.1, using tideways

Simple test case:

# cat x.php
<?php

#[Attribute(Attribute::TARGET_METHOD)]
class X {
        public function __construct(int $i) {
        }
}

class Y {
        #[X(123)]
        public static function x() {
        }
}

$refClass = new ReflectionClass('Y');
$refMethod = $refClass->getMethod('x');
$refAttributes = $refMethod->getAttributes();
foreach ($refAttributes as $refAttribute) {
        $attribute = $refAttribute->newInstance();
}

# php x.php
fish: Job 2, 'php x.php' terminated by signal SIGSEGV (Address boundary error)

(gdb) run x.php
Starting program: /usr/bin/php x.php
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".

Program received signal SIGSEGV, Segmentation fault.
0x00005555558c94b3 in zend_observer_fcall_end ()
(gdb) bt
#0  0x00005555558c94b3 in zend_observer_fcall_end ()
#1  0x0000555555897ab7 in execute_ex ()
#2  0x000055555582333c in zend_call_function ()
#3  0x000055555582370d in zend_call_known_function ()
#4  0x000055555570e362 in ?? ()
#5  0x00005555556691fb in ?? ()
#6  0x000055555566a159 in ?? ()
#7  0x00005555558a0bad in zend_execute ()
#8  0x0000555555831ab5 in zend_execute_scripts ()
#9  0x00005555557ced7a in php_execute_script ()
#10 0x000055555591a56e in ?? ()
#11 0x0000555555674098 in ?? ()
#12 0x00007ffff76480b3 in __libc_start_main (main=0x555555673c90, argc=2, argv=0x7fffffffe418,
init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>,
    stack_end=0x7fffffffe408) at ../csu/libc-start.c:308
#13 0x000055555567423e in _start ()


Indeed running without tideways extension does not trigger it

------------------------------------------------------------------------
[2021-11-29 11:11:23] cmb@php.net

Ah!  Re-opening then.

------------------------------------------------------------------------
[2021-11-29 09:49:22] beberlei@php.net

@cmb Just to clarify, this is a PHP bug caused by the interaction of a zend_observer and Attributes.
Tideways extension (and others) are just the trigger.

------------------------------------------------------------------------


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=81648


--
Edit this bug report at https://bugs.php.net/bug.php?id=81648&edit=1


Thread (12 messages)

« previous php.bugs (#244337) next »