Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

php 7.1.6 + mysql_xdevapi + ast 0.1.4 = segfault #59

Closed
remicollet opened this issue Jun 14, 2017 · 2 comments
Closed

php 7.1.6 + mysql_xdevapi + ast 0.1.4 = segfault #59

remicollet opened this issue Jun 14, 2017 · 2 comments

Comments

@remicollet
Copy link
Contributor

Working on phan test suite

$ gdb php71
(gdb) run -d extension=mysql_xdevapi.so /usr/bin/phan --version
Program received signal SIGSEGV, Segmentation fault.
(gdb) bt
#0  0x00007ffff48b8f86 in strlen () from /lib64/libc.so.6
#1  0x000055555568b1ac in reflection_type_name (param=<optimized out>) at /usr/src/debug/php-7.1.6/ext/reflection/php_reflection.c:3020
#2  0x00005555556992ba in zim_reflection_type___toString (execute_data=0x7ffff3813c30, return_value=0x7fffffff9d60)
    at /usr/src/debug/php-7.1.6/ext/reflection/php_reflection.c:3046
#3  0x000055555579ccd3 in zend_call_function (fci=fci@entry=0x7fffffff9c90, fci_cache=<optimized out>, fci_cache@entry=0x7fffffff9c60)
    at /usr/src/debug/php-7.1.6/Zend/zend_execute_API.c:871
#4  0x00005555557cb3d4 in zend_call_method (object=object@entry=0x7ffff3813ac0, obj_ce=obj_ce@entry=0x555555cc7920, fn_proxy=fn_proxy@entry=0x555555cc7a50, 
    function_name=function_name@entry=0x5555558a99ab "__tostring", function_name_len=function_name_len@entry=10, retval_ptr=retval_ptr@entry=0x7fffffff9d60, param_count=0, 
    arg1=0x0, arg2=0x0) at /usr/src/debug/php-7.1.6/Zend/zend_interfaces.c:99
#5  0x00005555557e7a83 in zend_std_cast_object_tostring (readobj=0x7ffff3813ac0, writeobj=0x7fffffff9de0, type=<optimized out>)
    at /usr/src/debug/php-7.1.6/Zend/zend_object_handlers.c:1631
#6  0x00005555557a350e in _zval_get_string_func (op=op@entry=0x7ffff3813ac0) at /usr/src/debug/php-7.1.6/Zend/zend_operators.c:887
#7  0x000055555583e768 in _zval_get_string (op=<optimized out>) at /usr/src/debug/php-7.1.6/Zend/zend_operators.h:276
#8  ZEND_CAST_SPEC_CV_HANDLER () at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:35429
#9  0x00005555557f68bb in execute_ex (ex=<optimized out>) at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:429
#10 0x000055555584f68e in ZEND_DO_FCALL_SPEC_RETVAL_USED_HANDLER () at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:1076
#11 0x00005555557f68bb in execute_ex (ex=<optimized out>) at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:429
#12 0x000055555584f68e in ZEND_DO_FCALL_SPEC_RETVAL_USED_HANDLER () at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:1076
#13 0x00005555557f68bb in execute_ex (ex=<optimized out>) at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:429
#14 0x000055555584f68e in ZEND_DO_FCALL_SPEC_RETVAL_USED_HANDLER () at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:1076
#15 0x00005555557f68bb in execute_ex (ex=<optimized out>) at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:429
#16 0x000055555579cbb4 in zend_call_function (fci=0x7ffff3813a70, fci@entry=0x7fffffffa100, fci_cache=<optimized out>, fci_cache@entry=0x7fffffffa0d0)
    at /usr/src/debug/php-7.1.6/Zend/zend_execute_API.c:855
#17 0x00005555556e033e in zif_array_map (execute_data=<optimized out>, return_value=0x7ffff38137d0) at /usr/src/debug/php-7.1.6/ext/standard/array.c:5359
#18 0x000055555584f5bc in ZEND_DO_FCALL_SPEC_RETVAL_USED_HANDLER () at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:1099
#19 0x00005555557f68bb in execute_ex (ex=<optimized out>) at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:429
#20 0x000055555584f68e in ZEND_DO_FCALL_SPEC_RETVAL_USED_HANDLER () at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:1076
#21 0x00005555557f68bb in execute_ex (ex=<optimized out>) at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:429
#22 0x000055555584f68e in ZEND_DO_FCALL_SPEC_RETVAL_USED_HANDLER () at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:1076
#23 0x00005555557f68bb in execute_ex (ex=<optimized out>) at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:429
#24 0x000055555584f68e in ZEND_DO_FCALL_SPEC_RETVAL_USED_HANDLER () at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:1076
#25 0x00005555557f68bb in execute_ex (ex=<optimized out>) at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:429
#26 0x000055555584f68e in ZEND_DO_FCALL_SPEC_RETVAL_USED_HANDLER () at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:1076
#27 0x00005555557f68bb in execute_ex (ex=<optimized out>) at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:429
#28 0x000055555584fc1c in ZEND_DO_FCALL_SPEC_RETVAL_UNUSED_HANDLER () at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:949
#29 0x00005555557f68bb in execute_ex (ex=<optimized out>) at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:429
#30 0x000055555584fc1c in ZEND_DO_FCALL_SPEC_RETVAL_UNUSED_HANDLER () at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:949
#31 0x00005555557f68bb in execute_ex (ex=<optimized out>) at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:429
#32 0x000055555584c774 in ZEND_INCLUDE_OR_EVAL_SPEC_CONST_HANDLER () at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:3479
#33 0x00005555557f68bb in execute_ex (ex=<optimized out>) at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:429
#34 0x0000555555851c28 in zend_execute (op_array=op_array@entry=0x7ffff3887000, return_value=return_value@entry=0x7fffd2a5ce50)
    at /usr/src/debug/php-7.1.6/Zend/zend_vm_execute.h:474
#35 0x00005555557acd33 in zend_execute_scripts (type=-209635472, type@entry=8, retval=0x7fffd2a5ce50, retval@entry=0x0, file_count=file_count@entry=3)
    at /usr/src/debug/php-7.1.6/Zend/zend.c:1476
#36 0x0000555555748d20 in php_execute_script (primary_file=0x7fffffffca20) at /usr/src/debug/php-7.1.6/main/main.c:2537
#37 0x0000555555853e8c in do_cli (argc=5, argv=0x555555bcc200) at /usr/src/debug/php-7.1.6/sapi/cli/php_cli.c:993
#38 0x000055555562158a in main (argc=5, argv=0x555555bcc200) at /usr/src/debug/php-7.1.6/sapi/cli/php_cli.c:1381
@remicollet
Copy link
Contributor Author

Ok, mysql_xdevapi looks like another Abandonware... so probably only FYI, but perhaps may happens with some other extension.

@nikic
Copy link
Owner

nikic commented Jun 20, 2017

Pretty unlikely that this is a bug in php-ast. Most likely some refcounting issue in the ext that happens to manifest in this way.

@nikic nikic closed this as completed Jun 20, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants