Bug #80307 [NEW]: Segfault in zend_execute when opcache preload enabled
| From: | php at shyim dot de | Date: | Mon, 02 Nov 2020 20:32:45 +0000 |
| Subject: | Bug #80307 [NEW]: Segfault in zend_execute when opcache preload enabled | ||
| Groups: | php.bugs | ||
| Request: | Send a blank email to php-bugs+get-230065@lists.php.net to get a copy of this message | ||
From: php at shyim dot de
Operating system: Ubuntu 20.04
PHP version: 8.0.0RC3
Package: opcache
Bug Type: Bug
Bug description:Segfault in zend_execute when opcache preload enabled
Description:
------------
Tried my Symfony 5.1 project on PHP 8.0RC3, working in 7.4. With enabled
opcache preload a segmentation fault happens on any request. See
backtrace below
Test script:
---------------
Clone https://github.com/symfony/demo
Change .env APP_ENV to prod
composer install
./bin/console cache:clear
Add var/cache/prod/App_KernelProdContainer.preload.php to
opcache.preload
Start web server
/opt/php-7.4/bin/php -S 0.0.0.0:7050 -t .
curl localhost:7050
=> Segmentation fault...
Expected result:
----------------
Its working like in 7.4
Actual result:
--------------
Program received signal SIGSEGV, Segmentation fault.
0x00005555557973ca in zend_verify_recv_arg_type
(cache_slot=0x7ffff4011120, arg=0x7ffff4014c80, arg_num=1,
zf=0x4122f6f8) at /home/shyim/src/php-8.0.0RC3/Zend/zend_execute.c:1043
1043 cur_arg_info = &zf->common.arg_info[arg_num-1];
(gdb) bt
#0 0x00005555557973ca in zend_verify_recv_arg_type
(cache_slot=0x7ffff4011120, arg=0x7ffff4014c80, arg_num=1,
zf=0x4122f6f8) at /home/shyim/src/php-8.0.0RC3/Zend/zend_execute.c:1043
#1 zend_verify_recv_arg_type_helper_SPEC (op_1=0x7ffff4014c80) at
/home/shyim/src/php-8.0.0RC3/Zend/zend_vm_execute.h:2450
#2 0x000055555579abb7 in ZEND_RECV_SPEC_UNUSED_HANDLER () at
/home/shyim/src/php-8.0.0RC3/Zend/zend_vm_execute.h:3629
#3 execute_ex (ex=0x7ffff4014c80) at
/home/shyim/src/php-8.0.0RC3/Zend/zend_vm_execute.h:54626
#4 0x0000555555bac3c4 in zend_execute (op_array=0x7ffff4003000,
return_value=0x0) at
/home/shyim/src/php-8.0.0RC3/Zend/zend_vm_execute.h:58789
#5 0x0000555555b43c23 in zend_execute_scripts (type=-201241552,
type@entry=8, retval=retval@entry=0x0, file_count=file_count@entry=3) at
/home/shyim/src/php-8.0.0RC3/Zend/zend.c:1680
#6 0x0000555555ae0712 in php_execute_script
(primary_file=primary_file@entry=0x7fffffffcff0) at
/home/shyim/src/php-8.0.0RC3/main/main.c:2490
#7 0x0000555555bd8e42 in php_cli_server_dispatch_script
(server=server@entry=0x555556b76000 <server>,
client=client@entry=0x555556c3d530) at
/home/shyim/src/php-8.0.0RC3/sapi/cli/php_cli_server.c:2081
#8 0x0000555555bd93f3 in php_cli_server_dispatch
(client=0x555556c3d530, server=0x555556b76000 <server>) at
/home/shyim/src/php-8.0.0RC3/sapi/cli/php_cli_server.c:2253
#9 php_cli_server_recv_event_read_request (server=0x555556b76000
<server>, client=0x555556c3d530) at
/home/shyim/src/php-8.0.0RC3/sapi/cli/php_cli_server.c:2525
#10 0x0000555555bd9759 in php_cli_server_do_event_for_each_fd_callback
(_params=_params@entry=0x7fffffffd290, fd=fd@entry=5,
event=event@entry=1) at
/home/shyim/src/php-8.0.0RC3/sapi/cli/php_cli_server.c:2611
#11 0x0000555555bda215 in php_cli_server_poller_iter_on_active
(poller=0x555556b76008 <server+8>, callback=0x555555bd9700
<php_cli_server_do_event_for_each_fd_callback>, opaque=0x7fffffffd290)
at /home/shyim/src/php-8.0.0RC3/sapi/cli/php_cli_server.c:920
#12 php_cli_server_do_event_for_each_fd (whandler=0x555555bd8070
<php_cli_server_send_event>, rhandler=0x555555bd8e50
<php_cli_server_recv_event_read_request>, server=0x555556b76000
<server>) at
/home/shyim/src/php-8.0.0RC3/sapi/cli/php_cli_server.c:2629
#13 php_cli_server_do_event_loop (server=0x555556b76000 <server>) at
/home/shyim/src/php-8.0.0RC3/sapi/cli/php_cli_server.c:2639
#14 do_cli_server (argc=<optimized out>, argv=<optimized out>) at
/home/shyim/src/php-8.0.0RC3/sapi/cli/php_cli_server.c:2769
#15 0x00005555557a3a53 in main (argc=5, argv=0x555556bafe10) at
/home/shyim/src/php-8.0.0RC3/sapi/cli/php_cli.c:1339
--
Edit bug report at https://bugs.php.net/bug.php?id=80307&edit=1
--
Fix committed: https://bugs.php.net/fix.php?id=80307&r=fixed
Fixed in release: https://bugs.php.net/fix.php?id=80307&r=alreadyfixed
Need backtrace: https://bugs.php.net/fix.php?id=80307&r=needtrace
Need Reproduce Script: https://bugs.php.net/fix.php?id=80307&r=needscript
Try newer version: https://bugs.php.net/fix.php?id=80307&r=oldversion
Not developer issue: https://bugs.php.net/fix.php?id=80307&r=support
Expected behavior: https://bugs.php.net/fix.php?id=80307&r=notwrong
Not enough info: https://bugs.php.net/fix.php?id=80307&r=notenoughinfo
Submitted twice: https://bugs.php.net/fix.php?id=80307&r=submittedtwice
register_globals: https://bugs.php.net/fix.php?id=80307&r=globals
PHP version support discontinued: https://bugs.php.net/fix.php?id=80307&r=phptooold
Daylight Savings: https://bugs.php.net/fix.php?id=80307&r=dst
IIS Stability: https://bugs.php.net/fix.php?id=80307&r=isapi
Install GNU Sed: https://bugs.php.net/fix.php?id=80307&r=gnused
Floating point limitations: https://bugs.php.net/fix.php?id=80307&r=float
No Zend Extensions: https://bugs.php.net/fix.php?id=80307&r=nozend
MySQL Configuration Error: https://bugs.php.net/fix.php?id=80307&r=mysqlcfg