php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #65435 APC-3.1.13 MAY has deadlock issue
Submitted: 2013-08-12 03:59 UTC Modified: 2013-10-15 11:54 UTC
Votes:1
Avg. Score:5.0 ± 0.0
Reproduced:1 of 1 (100.0%)
Same Version:0 (0.0%)
Same OS:0 (0.0%)
From: brytonlee01 at gmail dot com Assigned:
Status: No Feedback Package: APC (PECL)
PHP Version: 5.5.1 OS: redhat 5.7
Private report: No CVE-ID: None
Have you experienced this issue?
Rate the importance of this bug to you:

 [2013-08-12 03:59 UTC] brytonlee01 at gmail dot com
Description:
------------
Hi, guys:

Sorry for my English, My English is *POOR*,any question not clear, you can email 
me, thanks. 

This is the first time I debugging PHP related issue. I'm totally new on APC, 
somedays ago, my workermate tell me that his PHP website was blocked after run 
few minutes. so this is why I debug PHP relate issue.

OS: LINUX (RedHat 5.7),  PHP: php-5.3.10-2 Apache: httpd-2.2.15-6.el5 APC:apc-
3.1.13
following step I has made.

step 1:
#strace -f -p 11229
Process 11229 attached with 30 threads - interrupt to quit
[pid 11259] accept(3,  <unfinished ...>
[pid 11258] futex(0x2aaaaaabe088, FUTEX_WAIT, 2, NULL <unfinished ...>
[pid 11257] futex(0x2aaaaaabe088, FUTEX_WAIT, 2, NULL <unfinished ...>
[pid 11256] poll([{fd=21, events=POLLIN}], 1, 180000 <unfinished ...>
[pid 11255] poll([{fd=25, events=POLLIN}], 1, 180000 <unfinished ...>
[pid 11254] poll([{fd=23, events=POLLIN}], 1, 180000 <unfinished ...>
[pid 11253] poll([{fd=34, events=POLLIN}], 1, 180000 <unfinished ...>
[pid 11252] poll([{fd=26, events=POLLIN}], 1, 180000 <unfinished ...>
[pid 11251] poll([{fd=29, events=POLLIN}], 1, 180000 <unfinished ...>
[pid 11250] futex(0x19df2c6c, FUTEX_WAIT_PRIVATE, 771, NULL <unfinished ...>
[pid 11249] poll([{fd=27, events=POLLIN}], 1, 180000 <unfinished ...>
[pid 11248] poll([{fd=24, events=POLLIN}], 1, 180000 <unfinished ...>
[pid 11247] futex(0x19df2c6c, FUTEX_WAIT_PRIVATE, 771, NULL <unfinished ...>
[pid 11246] poll([{fd=32, events=POLLIN}], 1, 180000 <unfinished ...>
[pid 11245] poll([{fd=31, events=POLLIN}], 1, 180000 <unfinished ...>
[pid 11244] poll([{fd=30, events=POLLIN}], 1, 180000 <unfinished ...>
[pid 11243] futex(0x2aaaaaabe088, FUTEX_WAIT, 2, NULL <unfinished ...>
[pid 11242] futex(0x2aaaaaabe088, FUTEX_WAIT, 2, NULL <unfinished ...>
[pid 11241] poll([{fd=22, events=POLLIN}], 1, 180000 <unfinished ...>
[pid 11240] futex(0x2aaaaaabe088, FUTEX_WAIT, 2, NULL <unfinished ...>
[pid 11239] futex(0x2aaaaaabe088, FUTEX_WAIT, 2, NULL <unfinished ...>
[pid 11238] futex(0x2aaaaaabe088, FUTEX_WAIT, 2, NULL <unfinished ...>
[pid 11237] futex(0x2aaaaaabe088, FUTEX_WAIT, 2, NULL <unfinished ...>
[pid 11236] futex(0x19df2c6c, FUTEX_WAIT_PRIVATE, 771, NULL <unfinished ...>
[pid 11235] futex(0x2aaaaaabe088, FUTEX_WAIT, 2, NULL <unfinished ...>
[pid 11234] futex(0x2aaaaaabe088, FUTEX_WAIT, 2, NULL <unfinished ...>
[pid 11233] futex(0x2aaaaaabe088, FUTEX_WAIT, 2, NULL <unfinished ...>
[pid 11232] futex(0x2aaaaaabe088, FUTEX_WAIT, 2, NULL <unfinished ...>
[pid 11231] futex(0x2aaaaaabe088, FUTEX_WAIT, 2, NULL <unfinished ...>

I saw part of threads still can response static pages, if it's a php page, the 
thread will wait for a futex lock and block until process killed. So I guess 
there is a deadlock in the process.

step 2:
(gdb) t 18
[Switching to thread 18 (Thread 0x49910940 (LWP 11243))]#0  0x0000003faaa0d524 
in __lll_lock_wait () from /lib64/libpthread.so.0
(gdb) bt
#0  0x0000003faaa0d524 in __lll_lock_wait () from /lib64/libpthread.so.0
#1  0x0000003faaa08e1a in _L_lock_1034 () from /lib64/libpthread.so.0
#2  0x0000003faaa08cdc in pthread_mutex_lock () from /lib64/libpthread.so.0
#3  0x00002b57c40325f9 in apc_pthreadmutex_lock (lock=0x2aaaaaabe088, 
tsrm_ls=0x0)
    at /home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:72
#4  0x00002b57c402ae4e in apc_cache_find_slot (cache=0x19fe1480, key=..., 
t=1376228512, tsrm_ls=0x2aaab0001030)
    at /home/xiongti.hjg/APC-3.1.13/apc_cache.c:643
#5  0x00002b57c402b1d9 in apc_cache_find (cache=0x2aaaaaabe088, key=..., t=0, 
tsrm_ls=0x0)
    at /home/xiongti.hjg/APC-3.1.13/apc_cache.c:698
#6  0x00002b57c4031aac in my_compile_file (h=0x4990fe20, type=8, 
tsrm_ls=0x2aaab0001030)
    at /home/xiongti.hjg/APC-3.1.13/apc_main.c:518
#7  0x00002b57beda2dd6 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#8  0x00002b57bef625f6 in zend_execute_scripts () from 
/opt/taobao/install/httpd/modules/libphp5.so
#9  0x00002b57bef06aed in php_execute_script () from 
/opt/taobao/install/httpd/modules/libphp5.so
#10 0x00002b57beff8e78 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#11 0x00000000004364aa in ap_run_handler ()
#12 0x00000000004396ec in ap_invoke_handler ()
#13 0x00000000004438ea in ap_internal_redirect ()
#14 0x00002b57be6e8f10 in ap_make_dirstr_parent () from 
/opt/taobao/install/httpd/modules/mod_rewrite.so
#15 0x00000000004364aa in ap_run_handler ()
#16 0x00000000004396ec in ap_invoke_handler ()
#17 0x0000000000443a68 in ap_process_request ()
#18 0x0000000000440e0c in ?? ()
#19 0x000000000043d3c2 in ap_run_process_connection ()
#20 0x0000000000448384 in ?? ()
#21 0x0000003faaa0673d in start_thread () from /lib64/libpthread.so.0
#22 0x0000003faa2d44bd in clone () from /lib64/libc.so.6
(gdb) generate-core-file 
Saved corefile core.11229
(gdb) quit
A debugging session is active.

through the bt command, I guess the apc_cache module may be has problem. 

step 3:

I make a gdb script(see blow), and I pick up the important part(what I think is) 
of the huge results.
Breakpoint 2, apc_pthreadmutex_lock (lock=0x2aaaaaabe088, tsrm_ls=0x433ce30) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
70	{
#0  apc_pthreadmutex_lock (lock=0x2aaaaaabe088, tsrm_ls=0x433ce30) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
#1  0x00002ae507b70d90 in apc_cache_release (cache=0x27cc480, 
entry=0x2aaaaad1e7a8, tsrm_ls=0x433ce30) at /home/xiongti.hjg/APC-
3.1.13/apc_cache.c:926
#2  0x00002ae507b773d4 in apc_deactivate (tsrm_ls=0x433ce30) at 
/home/xiongti.hjg/APC-3.1.13/apc_main.c:988
#3  apc_request_shutdown (tsrm_ls=0x433ce30) at /home/xiongti.hjg/APC-
3.1.13/apc_main.c:1042
#4  0x00002ae507b6d8a6 in zm_deactivate_apc (type=<value optimized out>, 
module_number=70503984, tsrm_ls=0x82) at /home/xiongti.hjg/APC-
3.1.13/php_apc.c:407
#5  0x00002ae502aac5ff in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#6  0x00002ae502ab7a4f in zend_hash_reverse_apply () from 
/opt/taobao/install/httpd/modules/libphp5.so
#7  0x00002ae502aa9970 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#8  0x00002ae502a4e9b5 in php_request_shutdown () from 
/opt/taobao/install/httpd/modules/libphp5.so
#9  0x00002ae502b3fcf3 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#10 0x00000000004364aa in apc_bin_dump (files=0x4364aa, user_vars=<value 
optimized out>, tsrm_ls=0x1) at /home/xiongti.hjg/APC-3.1.13/apc_bin.c:835
#11 0x0000000000000000 in ?? ()

Breakpoint 4, apc_pthreadmutex_unlock (lock=0x2aaaaaabe088, tsrm_ls=0x433ce30) 
at /home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:81
81	{
#0  apc_pthreadmutex_unlock (lock=0x2aaaaaabe088, tsrm_ls=0x433ce30) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:81
#1  0x00002ae507b70d4c in apc_cache_release (cache=0x27cc480, 
entry=0x2aaaaad1e7a8, tsrm_ls=0x433ce30) at /home/xiongti.hjg/APC-
3.1.13/apc_cache.c:926
#2  0x00002ae507b773d4 in apc_deactivate (tsrm_ls=0x433ce30) at 
/home/xiongti.hjg/APC-3.1.13/apc_main.c:988
#3  apc_request_shutdown (tsrm_ls=0x433ce30) at /home/xiongti.hjg/APC-
3.1.13/apc_main.c:1042
#4  0x00002ae507b6d8a6 in zm_deactivate_apc (type=<value optimized out>, 
module_number=70503984, tsrm_ls=0x82) at /home/xiongti.hjg/APC-
3.1.13/php_apc.c:407
#5  0x00002ae502aac5ff in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#6  0x00002ae502ab7a4f in zend_hash_reverse_apply () from 
/opt/taobao/install/httpd/modules/libphp5.so
#7  0x00002ae502aa9970 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#8  0x00002ae502a4e9b5 in php_request_shutdown () from 
/opt/taobao/install/httpd/modules/libphp5.so
#9  0x00002ae502b3fcf3 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#10 0x00000000004364aa in apc_bin_dump (files=0x4364aa, user_vars=<value 
optimized out>, tsrm_ls=0x1) at /home/xiongti.hjg/APC-3.1.13/apc_bin.c:835
#11 0x0000000000000000 in ?? ()

Breakpoint 2, apc_pthreadmutex_lock (lock=0x2aaaaaabe088, tsrm_ls=0x433ce30) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
70	{
#0  apc_pthreadmutex_lock (lock=0x2aaaaaabe088, tsrm_ls=0x433ce30) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
#1  0x00002ae507b70d90 in apc_cache_release (cache=0x27cc480, 
entry=0x2aaaaacf1ee0, tsrm_ls=0x433ce30) at /home/xiongti.hjg/APC-
3.1.13/apc_cache.c:926
#2  0x00002ae507b773d4 in apc_deactivate (tsrm_ls=0x433ce30) at 
/home/xiongti.hjg/APC-3.1.13/apc_main.c:988
#3  apc_request_shutdown (tsrm_ls=0x433ce30) at /home/xiongti.hjg/APC-
3.1.13/apc_main.c:1042
#4  0x00002ae507b6d8a6 in zm_deactivate_apc (type=<value optimized out>, 
module_number=70503984, tsrm_ls=0x82) at /home/xiongti.hjg/APC-
3.1.13/php_apc.c:407
#5  0x00002ae502aac5ff in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#6  0x00002ae502ab7a4f in zend_hash_reverse_apply () from 
/opt/taobao/install/httpd/modules/libphp5.so
#7  0x00002ae502aa9970 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#8  0x00002ae502a4e9b5 in php_request_shutdown () from 
/opt/taobao/install/httpd/modules/libphp5.so
#9  0x00002ae502b3fcf3 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#10 0x00000000004364aa in apc_bin_dump (files=0x4364aa, user_vars=<value 
optimized out>, tsrm_ls=0x1) at /home/xiongti.hjg/APC-3.1.13/apc_bin.c:835
#11 0x0000000000000000 in ?? ()
[Switching to Thread 0x4275b940 (LWP 30564)]

Breakpoint 2, apc_pthreadmutex_lock (lock=0x2aaaaaabe088, tsrm_ls=0x3081e80) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
70	{
#0  apc_pthreadmutex_lock (lock=0x2aaaaaabe088, tsrm_ls=0x3081e80) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
#1  0x00002ae507b71e2e in apc_cache_find_slot (cache=0x27cc480, key=..., 
t=1376199761, tsrm_ls=0x3081e80) at /home/xiongti.hjg/APC-3.1.13/apc_cache.c:643
#2  0x00002ae507b721c9 in apc_cache_find (cache=0x2aaaaaabe088, key=..., 
t=50863744, tsrm_ls=0x2ae5032a69b8) at /home/xiongti.hjg/APC-
3.1.13/apc_cache.c:698
#3  0x00002ae507b78a2c in my_compile_file (h=0x4275ae20, type=8, 
tsrm_ls=0x3081e80) at /home/xiongti.hjg/APC-3.1.13/apc_main.c:518
#4  0x00002ae5028e9dd6 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#5  0x00002ae502aa95f6 in zend_execute_scripts () from 
/opt/taobao/install/httpd/modules/libphp5.so
#6  0x00002ae502a4daed in php_execute_script () from 
/opt/taobao/install/httpd/modules/libphp5.so
#7  0x00002ae502b3fe78 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#8  0x00000000004364aa in apc_bin_dump (files=0x4364aa, user_vars=<value 
optimized out>, tsrm_ls=0x1) at /home/xiongti.hjg/APC-3.1.13/apc_bin.c:835
#9  0x0000000000000000 in ?? ()
[Switching to Thread 0x4bd6a940 (LWP 30579)]

Breakpoint 4, apc_pthreadmutex_unlock (lock=0x2aaaaaabe088, tsrm_ls=0x433ce30) 
at /home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:81
81	{
#0  apc_pthreadmutex_unlock (lock=0x2aaaaaabe088, tsrm_ls=0x433ce30) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:81
#1  0x00002ae507b70d4c in apc_cache_release (cache=0x27cc480, 
entry=0x2aaaaacf1ee0, tsrm_ls=0x433ce30) at /home/xiongti.hjg/APC-
3.1.13/apc_cache.c:926
#2  0x00002ae507b773d4 in apc_deactivate (tsrm_ls=0x433ce30) at 
/home/xiongti.hjg/APC-3.1.13/apc_main.c:988
#3  apc_request_shutdown (tsrm_ls=0x433ce30) at /home/xiongti.hjg/APC-
3.1.13/apc_main.c:1042
#4  0x00002ae507b6d8a6 in zm_deactivate_apc (type=<value optimized out>, 
module_number=70503984, tsrm_ls=0x82) at /home/xiongti.hjg/APC-
3.1.13/php_apc.c:407
#5  0x00002ae502aac5ff in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#6  0x00002ae502ab7a4f in zend_hash_reverse_apply () from 
/opt/taobao/install/httpd/modules/libphp5.so
#7  0x00002ae502aa9970 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#8  0x00002ae502a4e9b5 in php_request_shutdown () from 
/opt/taobao/install/httpd/modules/libphp5.so
#9  0x00002ae502b3fcf3 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#10 0x00000000004364aa in apc_bin_dump (files=0x4364aa, user_vars=<value 
optimized out>, tsrm_ls=0x1) at /home/xiongti.hjg/APC-3.1.13/apc_bin.c:835
#11 0x0000000000000000 in ?? ()
[Switching to Thread 0x4275b940 (LWP 30564)]

Breakpoint 4, apc_pthreadmutex_unlock (lock=0x2aaaaaabe088, tsrm_ls=0x3081e80) 
at /home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:81
81	{
#0  apc_pthreadmutex_unlock (lock=0x2aaaaaabe088, tsrm_ls=0x3081e80) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:81
#1  0x00002ae507b71f1b in apc_cache_find_slot (cache=0x27cc480, key=..., 
t=1376199761, tsrm_ls=0x3081e80) at /home/xiongti.hjg/APC-3.1.13/apc_cache.c:682
#2  0x00002ae507b721c9 in apc_cache_find (cache=0x2aaaaaabe088, key=..., 
t=50863744, tsrm_ls=0x0) at /home/xiongti.hjg/APC-3.1.13/apc_cache.c:698
#3  0x00002ae507b78a2c in my_compile_file (h=0x4275ae20, type=8, 
tsrm_ls=0x3081e80) at /home/xiongti.hjg/APC-3.1.13/apc_main.c:518
#4  0x00002ae5028e9dd6 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#5  0x00002ae502aa95f6 in zend_execute_scripts () from 
/opt/taobao/install/httpd/modules/libphp5.so
#6  0x00002ae502a4daed in php_execute_script () from 
/opt/taobao/install/httpd/modules/libphp5.so
#7  0x00002ae502b3fe78 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#8  0x00000000004364aa in apc_bin_dump (files=0x4364aa, user_vars=<value 
optimized out>, tsrm_ls=0x1) at /home/xiongti.hjg/APC-3.1.13/apc_bin.c:835
#9  0x0000000000000000 in ?? ()
[Switching to Thread 0x4bd6a940 (LWP 30579)]

Breakpoint 2, apc_pthreadmutex_lock (lock=0x2aaaaaabe088, tsrm_ls=0x433ce30) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
70	{
#0  apc_pthreadmutex_lock (lock=0x2aaaaaabe088, tsrm_ls=0x433ce30) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
#1  0x00002ae507b70d90 in apc_cache_release (cache=0x27cc480, 
entry=0x2aaaaace83d0, tsrm_ls=0x433ce30) at /home/xiongti.hjg/APC-
3.1.13/apc_cache.c:926
#2  0x00002ae507b773d4 in apc_deactivate (tsrm_ls=0x433ce30) at 
/home/xiongti.hjg/APC-3.1.13/apc_main.c:988
#3  apc_request_shutdown (tsrm_ls=0x433ce30) at /home/xiongti.hjg/APC-
3.1.13/apc_main.c:1042
#4  0x00002ae507b6d8a6 in zm_deactivate_apc (type=<value optimized out>, 
module_number=70503984, tsrm_ls=0x82) at /home/xiongti.hjg/APC-
3.1.13/php_apc.c:407
#5  0x00002ae502aac5ff in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#6  0x00002ae502ab7a4f in zend_hash_reverse_apply () from 
/opt/taobao/install/httpd/modules/libphp5.so
#7  0x00002ae502aa9970 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#8  0x00002ae502a4e9b5 in php_request_shutdown () from 
/opt/taobao/install/httpd/modules/libphp5.so
#9  0x00002ae502b3fcf3 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#10 0x00000000004364aa in apc_bin_dump (files=0x4364aa, user_vars=<value 
optimized out>, tsrm_ls=0x1) at /home/xiongti.hjg/APC-3.1.13/apc_bin.c:835
#11 0x0000000000000000 in ?? ()
[Switching to Thread 0x4275b940 (LWP 30564)]

Breakpoint 2, apc_pthreadmutex_lock (lock=0x2aaaaaabe088, tsrm_ls=0x3081e80) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
70	{
#0  apc_pthreadmutex_lock (lock=0x2aaaaaabe088, tsrm_ls=0x3081e80) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
#1  0x00002ae507b71e2e in apc_cache_find_slot (cache=0x27cc480, key=..., 
t=1376199761, tsrm_ls=0x3081e80) at /home/xiongti.hjg/APC-3.1.13/apc_cache.c:643
#2  0x00002ae507b721c9 in apc_cache_find (cache=0x2aaaaaabe088, key=..., 
t=50863744, tsrm_ls=0x2ae5032a69b8) at /home/xiongti.hjg/APC-
3.1.13/apc_cache.c:698
#3  0x00002ae507b78a2c in my_compile_file (h=0x42758840, type=8, 
tsrm_ls=0x3081e80) at /home/xiongti.hjg/APC-3.1.13/apc_main.c:518
#4  0x00002ae5028e9dd6 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#5  0x00002ae502af2a47 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#6  0x00002ae502ad5535 in execute () from 
/opt/taobao/install/httpd/modules/libphp5.so
#7  0x00002ae502aa9690 in zend_execute_scripts () from 
/opt/taobao/install/httpd/modules/libphp5.so
#8  0x00002ae502a4daed in php_execute_script () from 
/opt/taobao/install/httpd/modules/libphp5.so
#9  0x00002ae502b3fe78 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#10 0x00000000004364aa in apc_bin_dump (files=0x4364aa, user_vars=<value 
optimized out>, tsrm_ls=0x1) at /home/xiongti.hjg/APC-3.1.13/apc_bin.c:835
#11 0x0000000000000000 in ?? ()
[Switching to Thread 0x4455e940 (LWP 30567)]

Breakpoint 2, apc_pthreadmutex_lock (lock=0x2aaaaaabe088, tsrm_ls=0x2e4d420) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
70	{
#0  apc_pthreadmutex_lock (lock=0x2aaaaaabe088, tsrm_ls=0x2e4d420) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
#1  0x00002ae507b71e2e in apc_cache_find_slot (cache=0x27cc480, key=..., 
t=1376199765, tsrm_ls=0x2e4d420) at /home/xiongti.hjg/APC-3.1.13/apc_cache.c:643
#2  0x00002ae507b721c9 in apc_cache_find (cache=0x2aaaaaabe088, key=..., 
t=48550944, tsrm_ls=0x2ae5032a69b8) at /home/xiongti.hjg/APC-
3.1.13/apc_cache.c:698
#3  0x00002ae507b78a2c in my_compile_file (h=0x4455de20, type=8, 
tsrm_ls=0x2e4d420) at /home/xiongti.hjg/APC-3.1.13/apc_main.c:518
#4  0x00002ae5028e9dd6 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#5  0x00002ae502aa95f6 in zend_execute_scripts () from 
/opt/taobao/install/httpd/modules/libphp5.so
#6  0x00002ae502a4daed in php_execute_script () from 
/opt/taobao/install/httpd/modules/libphp5.so
#7  0x00002ae502b3fe78 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#8  0x00000000004364aa in apc_bin_dump (files=0x4364aa, user_vars=<value 
optimized out>, tsrm_ls=0x1) at /home/xiongti.hjg/APC-3.1.13/apc_bin.c:835
#9  0x0000000000000000 in ?? ()
[Switching to Thread 0x4315c940 (LWP 30565)]

Breakpoint 2, apc_pthreadmutex_lock (lock=0x2aaaaaabe088, 
tsrm_ls=0x2aaab0017a00) at /home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
70	{
#0  apc_pthreadmutex_lock (lock=0x2aaaaaabe088, tsrm_ls=0x2aaab0017a00) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
#1  0x00002ae507b71e2e in apc_cache_find_slot (cache=0x27cc480, key=..., 
t=1376199766, tsrm_ls=0x2aaab0017a00) at /home/xiongti.hjg/APC-
3.1.13/apc_cache.c:643
#2  0x00002ae507b721c9 in apc_cache_find (cache=0x2aaaaaabe088, key=..., 
t=46912585693696, tsrm_ls=0x2ae5032a69b8) at /home/xiongti.hjg/APC-
3.1.13/apc_cache.c:698
#3  0x00002ae507b78a2c in my_compile_file (h=0x4315be20, type=8, 
tsrm_ls=0x2aaab0017a00) at /home/xiongti.hjg/APC-3.1.13/apc_main.c:518
#4  0x00002ae5028e9dd6 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#5  0x00002ae502aa95f6 in zend_execute_scripts () from 
/opt/taobao/install/httpd/modules/libphp5.so
#6  0x00002ae502a4daed in php_execute_script () from 
/opt/taobao/install/httpd/modules/libphp5.so
#7  0x00002ae502b3fe78 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#8  0x00000000004364aa in apc_bin_dump (files=0x4364aa, user_vars=<value 
optimized out>, tsrm_ls=0x1) at /home/xiongti.hjg/APC-3.1.13/apc_bin.c:835
#9  0x0000000000000000 in ?? ()
[Switching to Thread 0x43b5d940 (LWP 30566)]

Breakpoint 2, apc_pthreadmutex_lock (lock=0x2aaaaaabe088, 
tsrm_ls=0x2aaab01abb20) at /home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
70	{
#0  apc_pthreadmutex_lock (lock=0x2aaaaaabe088, tsrm_ls=0x2aaab01abb20) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
#1  0x00002ae507b71e2e in apc_cache_find_slot (cache=0x27cc480, key=..., 
t=1376199766, tsrm_ls=0x2aaab01abb20) at /home/xiongti.hjg/APC-
3.1.13/apc_cache.c:643
#2  0x00002ae507b721c9 in apc_cache_find (cache=0x2aaaaaabe088, key=..., 
t=46912587348768, tsrm_ls=0x2ae5032a69b8) at /home/xiongti.hjg/APC-
3.1.13/apc_cache.c:698
#3  0x00002ae507b78a2c in my_compile_file (h=0x43b5ce20, type=8, 
tsrm_ls=0x2aaab01abb20) at /home/xiongti.hjg/APC-3.1.13/apc_main.c:518
#4  0x00002ae5028e9dd6 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#5  0x00002ae502aa95f6 in zend_execute_scripts () from 
/opt/taobao/install/httpd/modules/libphp5.so
#6  0x00002ae502a4daed in php_execute_script () from 
/opt/taobao/install/httpd/modules/libphp5.so
#7  0x00002ae502b3fe78 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#8  0x00000000004364aa in apc_bin_dump (files=0x4364aa, user_vars=<value 
optimized out>, tsrm_ls=0x1) at /home/xiongti.hjg/APC-3.1.13/apc_bin.c:835
#9  0x0000000000000000 in ?? ()
[Switching to Thread 0x44f5f940 (LWP 30568)]

Breakpoint 2, apc_pthreadmutex_lock (lock=0x2aaaaaabe088, tsrm_ls=0x31e3980) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
70	{
#0  apc_pthreadmutex_lock (lock=0x2aaaaaabe088, tsrm_ls=0x31e3980) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
#1  0x00002ae507b71e2e in apc_cache_find_slot (cache=0x27cc480, key=..., 
t=1376199766, tsrm_ls=0x31e3980) at /home/xiongti.hjg/APC-3.1.13/apc_cache.c:643
#2  0x00002ae507b721c9 in apc_cache_find (cache=0x2aaaaaabe088, key=..., 
t=52312448, tsrm_ls=0x2ae5032a69b8) at /home/xiongti.hjg/APC-
3.1.13/apc_cache.c:698
#3  0x00002ae507b78a2c in my_compile_file (h=0x44f5ee20, type=8, 
tsrm_ls=0x31e3980) at /home/xiongti.hjg/APC-3.1.13/apc_main.c:518
#4  0x00002ae5028e9dd6 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#5  0x00002ae502aa95f6 in zend_execute_scripts () from 
/opt/taobao/install/httpd/modules/libphp5.so
#6  0x00002ae502a4daed in php_execute_script () from 
/opt/taobao/install/httpd/modules/libphp5.so
#7  0x00002ae502b3fe78 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#8  0x00000000004364aa in apc_bin_dump (files=0x4364aa, user_vars=<value 
optimized out>, tsrm_ls=0x1) at /home/xiongti.hjg/APC-3.1.13/apc_bin.c:835
#9  0x0000000000000000 in ?? ()

you can see after (LWP 30579) execute  apc_cache_release, all of others start to 
block on wait lock. so I guess may be  apc_cache_release not release the lock 
after locked. this is the apc_cache_release source code:
924 void apc_cache_release(apc_cache_t* cache, apc_cache_entry_t* entry 
TSRMLS_DC)
 925 {
 926     CACHE_SAFE_DEC(cache, entry->ref_count);
 927 }

78 #define CACHE_SAFE_DEC(cache, obj) { CACHE_SAFE_LOCK(cache); obj--; 
CACHE_SAFE_UNLOCK(cache);}

 64 #define CACHE_SAFE_LOCK(cache)   { if ((++cache->has_lock) == 1) LOCK(cache-
>header->lock); }
 65 #define CACHE_SAFE_UNLOCK(cache) { if ((--cache->has_lock) == 0) 
UNLOCK(cache->header->lock); }

and I changed the CACHE_SAFE_UNLOCK like this:
#define CACHE_SAFE_UNLOCK(cache) { if ((--cache->has_lock) == 0) {UNLOCK(cache-
>header->lock); }else {apc_error("--cache->has_lock != 0" TSRMLS_CC);}}

(there is a thing, I think it's wired that the change what I made It's very easy 
to recur the issue, need not few minutes...)

the log shows:
[Sun Aug 11 21:41:46 2013] [error] [client 172.23.66.55] PHP Fatal error:  
Unknown: --cache-&gt;has_lock != 0 in Unknown on line 0

above is when I did yestoday, but I'm still cannot figure out where the problem 
is in the APC-3.1.13 source code until now. so I file this bug to here, after 
all you are more familiar the code than me. thanks!



Test script:
---------------
#cat pthreadmutex.cmd
set follow-fork-mode child
set pagination off
set logging file /root/debug_1_2.log
set logging overwrite
set loggin on

file /home/xiongti.hjg/APC-3.1.13/modules/apc.so

set $create = apc_pthreadmutex_create
set $lock = apc_pthreadmutex_lock
set $noneblock_lock = apc_pthreadmutex_nonblocking_lock
set $unlock = apc_pthreadmutex_unlock

b *$create
b *$lock
b *$noneblock_lock
b *$unlock

while 1
    c
    if $pc != $create && $pc != $lock && $pc != $noneblock_lock && $pc != $unlock
        quit
    end 
    bt  
end


NEW version:

#cat pthreadmutex.cmd
set follow-fork-mode child
set pagination off
set logging file /root/debug_1_2.log
set logging overwrite
set loggin on

file /home/xiongti.hjg/APC-3.1.13/modules/apc.so

set $create = apc_pthreadmutex_create
set $lock = apc_pthreadmutex_lock
set $noneblock_lock = apc_pthreadmutex_nonblocking_lock
set $unlock = apc_pthreadmutex_unlock
set $apc_has_lock = apc_cache->has_lock

b *$create
b *$lock
b *$noneblock_lock
b *$unlock
watch apc_cache->has_lock

while 1
    c
	if $apc_has_lock != apc_cache->has_lock
		bt
		set $apc_has_lock = apc_cache->has_lock
	else
		if $pc != $create && $pc != $lock && $pc != $noneblock_lock && $pc != $unlock
			quit
		else
			bt  
		end 
	end
end


Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2013-08-12 21:14 UTC] ab@php.net
-Status: Open +Status: Feedback
 [2013-08-12 21:14 UTC] ab@php.net
Can you provide a short PHP script reproducing this? Is that Apache?
 [2013-08-13 02:32 UTC] brytonlee01 at gmail dot com
Yes, It's an Apaceh server, php runs in apache process space. I'm new to php, 
and I don't know if this issue caused by a specifically php file. if you do need 
it, I can ask my workmate to supply it. 

yestoday, I added gdb watch point on apc_cache->has_lock(the new version of gdb 
script located in the Test Script section.), and printed the call trace, and It 
was blocked in apc_cache_find_slot() func. so, I'm totally confused now. 

here is the log:
Breakpoint 2, apc_pthreadmutex_lock (lock=0x2aaaaaaac088, tsrm_ls=0x1f402180) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
70	{
#0  apc_pthreadmutex_lock (lock=0x2aaaaaaac088, tsrm_ls=0x1f402180) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
#1  0x00002b4108b85eca in apc_cache_insert (cache=0x1f1bde40, key=..., 
value=0x2aaaaadc93b8, ctxt=0x46626f60, t=1376277727, tsrm_ls=0x1f402180) at 
/home/xiongti.hjg/APC-3.1.13/apc_cache.c:516
#2  0x00002b4108b8bb66 in my_compile_file (h=0x466271a0, type=2, 
tsrm_ls=0x1f402180) at /home/xiongti.hjg/APC-3.1.13/apc_main.c:606
#3  0x00002b41038fcdd6 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#4  0x00002b4103a8bae6 in compile_filename () from 
/opt/taobao/install/httpd/modules/libphp5.so
#5  0x00002b4103b0594f in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#6  0x00002b4103ae8535 in execute () from 
/opt/taobao/install/httpd/modules/libphp5.so
#7  0x00002b4103ab122a in zend_call_function () from 
/opt/taobao/install/httpd/modules/libphp5.so
#8  0x00002b4103ad5c83 in zend_call_method () from 
/opt/taobao/install/httpd/modules/libphp5.so
#9  0x00002b4109405c23 in yaf_dispatcher_handle (dispatcher=0x1f42f5e0, 
request=0x1f42e1f8, response=0x1f559600, view=0x1f589028, tsrm_ls=0x1f402180) at 
/home/xiongti.hjg/yaf-2.1.18/yaf_dispatcher.c:667
#10 0x00002b41094076ba in yaf_dispatcher_dispatch (dispatcher=0x1f42f5e0, 
tsrm_ls=0x1f402180) at /home/xiongti.hjg/yaf-2.1.18/yaf_dispatcher.c:925
#11 0x00002b4109402555 in zim_yaf_application_run (ht=<value optimized out>, 
return_value=0x1f4427b8, return_value_ptr=<value optimized out>, 
this_ptr=0x1f42e090, return_value_used=<value optimized out>, 
tsrm_ls=0x1f402180) at /home/xiongti.hjg/yaf-2.1.18/yaf_application.c:443
#12 0x00002b4103ae9167 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#13 0x00002b4103ae8535 in execute () from 
/opt/taobao/install/httpd/modules/libphp5.so
#14 0x00002b4103abc690 in zend_execute_scripts () from 
/opt/taobao/install/httpd/modules/libphp5.so
#15 0x00002b4103a60aed in php_execute_script () from 
/opt/taobao/install/httpd/modules/libphp5.so
#16 0x00002b4103b52e78 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#17 0x00000000004364aa in apc_swizzle_class_entry (files=0x4364aa, user_vars=
<value optimized out>, tsrm_ls=0x1) at /home/xiongti.hjg/APC-
3.1.13/apc_bin.c:367
#18 apc_bin_dump (files=0x4364aa, user_vars=<value optimized out>, tsrm_ls=0x1) 
at /home/xiongti.hjg/APC-3.1.13/apc_bin.c:836
#19 0x0000000000000000 in ?? ()
Hardware watchpoint 5: apc_cache->has_lock

Old value = 0
New value = 1
0x00002b4108b85ed1 in apc_cache_insert (cache=0x1f1bde40, key=..., 
value=0x2aaaaadc93b8, ctxt=0x46626f60, t=1376277727, tsrm_ls=0x1f402180) at 
/home/xiongti.hjg/APC-3.1.13/apc_cache.c:516
516	    CACHE_LOCK(cache);
#0  0x00002b4108b85ed1 in apc_cache_insert (cache=0x1f1bde40, key=..., 
value=0x2aaaaadc93b8, ctxt=0x46626f60, t=1376277727, tsrm_ls=0x1f402180) at 
/home/xiongti.hjg/APC-3.1.13/apc_cache.c:516
#1  0x00002b4108b8bb66 in my_compile_file (h=0x466271a0, type=2, 
tsrm_ls=0x1f402180) at /home/xiongti.hjg/APC-3.1.13/apc_main.c:606
#2  0x00002b41038fcdd6 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#3  0x00002b4103a8bae6 in compile_filename () from 
/opt/taobao/install/httpd/modules/libphp5.so
#4  0x00002b4103b0594f in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#5  0x00002b4103ae8535 in execute () from 
/opt/taobao/install/httpd/modules/libphp5.so
#6  0x00002b4103ab122a in zend_call_function () from 
/opt/taobao/install/httpd/modules/libphp5.so
#7  0x00002b4103ad5c83 in zend_call_method () from 
/opt/taobao/install/httpd/modules/libphp5.so
#8  0x00002b4109405c23 in yaf_dispatcher_handle (dispatcher=0x1f42f5e0, 
request=0x1f42e1f8, response=0x1f559600, view=0x1f589028, tsrm_ls=0x1f402180) at 
/home/xiongti.hjg/yaf-2.1.18/yaf_dispatcher.c:667
#9  0x00002b41094076ba in yaf_dispatcher_dispatch (dispatcher=0x1f42f5e0, 
tsrm_ls=0x1f402180) at /home/xiongti.hjg/yaf-2.1.18/yaf_dispatcher.c:925
#10 0x00002b4109402555 in zim_yaf_application_run (ht=<value optimized out>, 
return_value=0x1f4427b8, return_value_ptr=<value optimized out>, 
this_ptr=0x1f42e090, return_value_used=<value optimized out>, 
tsrm_ls=0x1f402180) at /home/xiongti.hjg/yaf-2.1.18/yaf_application.c:443
#11 0x00002b4103ae9167 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#12 0x00002b4103ae8535 in execute () from 
/opt/taobao/install/httpd/modules/libphp5.so
#13 0x00002b4103abc690 in zend_execute_scripts () from 
/opt/taobao/install/httpd/modules/libphp5.so
#14 0x00002b4103a60aed in php_execute_script () from 
/opt/taobao/install/httpd/modules/libphp5.so
#15 0x00002b4103b52e78 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#16 0x00000000004364aa in apc_swizzle_class_entry (files=0x4364aa, user_vars=
<value optimized out>, tsrm_ls=0x1) at /home/xiongti.hjg/APC-
3.1.13/apc_bin.c:367
#17 apc_bin_dump (files=0x4364aa, user_vars=<value optimized out>, tsrm_ls=0x1) 
at /home/xiongti.hjg/APC-3.1.13/apc_bin.c:836
#18 0x0000000000000000 in ?? ()

Breakpoint 4, apc_pthreadmutex_unlock (lock=0x2aaaaaaac088, tsrm_ls=0x1f402180) 
at /home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:81
81	{
#0  apc_pthreadmutex_unlock (lock=0x2aaaaaaac088, tsrm_ls=0x1f402180) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:81
#1  0x00002b4108b8601e in apc_cache_insert (cache=0x1f1bde40, key=..., 
value=0x2aaaaadc93b8, ctxt=0x46626f60, t=1376277727, tsrm_ls=0x1f402180) at 
/home/xiongti.hjg/APC-3.1.13/apc_cache.c:518
#2  0x00002b4108b8bb66 in my_compile_file (h=0x466271a0, type=2, 
tsrm_ls=0x1f402180) at /home/xiongti.hjg/APC-3.1.13/apc_main.c:606
#3  0x00002b41038fcdd6 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#4  0x00002b4103a8bae6 in compile_filename () from 
/opt/taobao/install/httpd/modules/libphp5.so
#5  0x00002b4103b0594f in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#6  0x00002b4103ae8535 in execute () from 
/opt/taobao/install/httpd/modules/libphp5.so
#7  0x00002b4103ab122a in zend_call_function () from 
/opt/taobao/install/httpd/modules/libphp5.so
#8  0x00002b4103ad5c83 in zend_call_method () from 
/opt/taobao/install/httpd/modules/libphp5.so
#9  0x00002b4109405c23 in yaf_dispatcher_handle (dispatcher=0x1f42f5e0, 
request=0x1f42e1f8, response=0x1f559600, view=0x1f589028, tsrm_ls=0x1f402180) at 
/home/xiongti.hjg/yaf-2.1.18/yaf_dispatcher.c:667
#10 0x00002b41094076ba in yaf_dispatcher_dispatch (dispatcher=0x1f42f5e0, 
tsrm_ls=0x1f402180) at /home/xiongti.hjg/yaf-2.1.18/yaf_dispatcher.c:925
#11 0x00002b4109402555 in zim_yaf_application_run (ht=<value optimized out>, 
return_value=0x1f4427b8, return_value_ptr=<value optimized out>, 
this_ptr=0x1f42e090, return_value_used=<value optimized out>, 
tsrm_ls=0x1f402180) at /home/xiongti.hjg/yaf-2.1.18/yaf_application.c:443
#12 0x00002b4103ae9167 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#13 0x00002b4103ae8535 in execute () from 
/opt/taobao/install/httpd/modules/libphp5.so
#14 0x00002b4103abc690 in zend_execute_scripts () from 
/opt/taobao/install/httpd/modules/libphp5.so
#15 0x00002b4103a60aed in php_execute_script () from 
/opt/taobao/install/httpd/modules/libphp5.so
#16 0x00002b4103b52e78 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#17 0x00000000004364aa in apc_swizzle_class_entry (files=0x4364aa, user_vars=
<value optimized out>, tsrm_ls=0x1) at /home/xiongti.hjg/APC-
3.1.13/apc_bin.c:367
#18 apc_bin_dump (files=0x4364aa, user_vars=<value optimized out>, tsrm_ls=0x1) 
at /home/xiongti.hjg/APC-3.1.13/apc_bin.c:836
#19 0x0000000000000000 in ?? ()
Hardware watchpoint 5: apc_cache->has_lock

Old value = 1
New value = 0
apc_cache_insert (cache=0x1f1bde40, key=..., value=0x2aaaaadc93b8, 
ctxt=0x46626f60, t=1376277727, tsrm_ls=0x1f402180) at /home/xiongti.hjg/APC-
3.1.13/apc_cache.c:520
520	}
#0  apc_cache_insert (cache=0x1f1bde40, key=..., value=0x2aaaaadc93b8, 
ctxt=0x46626f60, t=1376277727, tsrm_ls=0x1f402180) at /home/xiongti.hjg/APC-
3.1.13/apc_cache.c:520
#1  0x00002b4108b8bb66 in my_compile_file (h=0x466271a0, type=2, 
tsrm_ls=0x1f402180) at /home/xiongti.hjg/APC-3.1.13/apc_main.c:606
#2  0x00002b41038fcdd6 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#3  0x00002b4103a8bae6 in compile_filename () from 
/opt/taobao/install/httpd/modules/libphp5.so
#4  0x00002b4103b0594f in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#5  0x00002b4103ae8535 in execute () from 
/opt/taobao/install/httpd/modules/libphp5.so
#6  0x00002b4103ab122a in zend_call_function () from 
/opt/taobao/install/httpd/modules/libphp5.so
#7  0x00002b4103ad5c83 in zend_call_method () from 
/opt/taobao/install/httpd/modules/libphp5.so
#8  0x00002b4109405c23 in yaf_dispatcher_handle (dispatcher=0x1f42f5e0, 
request=0x1f42e1f8, response=0x1f559600, view=0x1f589028, tsrm_ls=0x1f402180) at 
/home/xiongti.hjg/yaf-2.1.18/yaf_dispatcher.c:667
#9  0x00002b41094076ba in yaf_dispatcher_dispatch (dispatcher=0x1f42f5e0, 
tsrm_ls=0x1f402180) at /home/xiongti.hjg/yaf-2.1.18/yaf_dispatcher.c:925
#10 0x00002b4109402555 in zim_yaf_application_run (ht=<value optimized out>, 
return_value=0x1f4427b8, return_value_ptr=<value optimized out>, 
this_ptr=0x1f42e090, return_value_used=<value optimized out>, 
tsrm_ls=0x1f402180) at /home/xiongti.hjg/yaf-2.1.18/yaf_application.c:443
#11 0x00002b4103ae9167 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#12 0x00002b4103ae8535 in execute () from 
/opt/taobao/install/httpd/modules/libphp5.so
#13 0x00002b4103abc690 in zend_execute_scripts () from 
/opt/taobao/install/httpd/modules/libphp5.so
#14 0x00002b4103a60aed in php_execute_script () from 
/opt/taobao/install/httpd/modules/libphp5.so
#15 0x00002b4103b52e78 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#16 0x00000000004364aa in apc_swizzle_class_entry (files=0x4364aa, user_vars=
<value optimized out>, tsrm_ls=0x1) at /home/xiongti.hjg/APC-
3.1.13/apc_bin.c:367
#17 apc_bin_dump (files=0x4364aa, user_vars=<value optimized out>, tsrm_ls=0x1) 
at /home/xiongti.hjg/APC-3.1.13/apc_bin.c:836
#18 0x0000000000000000 in ?? ()

Breakpoint 4, apc_pthreadmutex_unlock (lock=0x2aaaaaaac0b0, tsrm_ls=0x1f402180) 
at /home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:81
81	{
#0  apc_pthreadmutex_unlock (lock=0x2aaaaaaac0b0, tsrm_ls=0x1f402180) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:81
#1  0x00002b4108b8bc33 in my_compile_file (h=0x466271a0, type=2, 
tsrm_ls=0x1f402180) at /home/xiongti.hjg/APC-3.1.13/apc_main.c:619
#2  0x00002b41038fcdd6 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#3  0x00002b4103a8bae6 in compile_filename () from 
/opt/taobao/install/httpd/modules/libphp5.so
#4  0x00002b4103b0594f in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#5  0x00002b4103ae8535 in execute () from 
/opt/taobao/install/httpd/modules/libphp5.so
#6  0x00002b4103ab122a in zend_call_function () from 
/opt/taobao/install/httpd/modules/libphp5.so
#7  0x00002b4103ad5c83 in zend_call_method () from 
/opt/taobao/install/httpd/modules/libphp5.so
#8  0x00002b4109405c23 in yaf_dispatcher_handle (dispatcher=0x1f42f5e0, 
request=0x1f42e1f8, response=0x1f559600, view=0x1f589028, tsrm_ls=0x1f402180) at 
/home/xiongti.hjg/yaf-2.1.18/yaf_dispatcher.c:667
#9  0x00002b41094076ba in yaf_dispatcher_dispatch (dispatcher=0x1f42f5e0, 
tsrm_ls=0x1f402180) at /home/xiongti.hjg/yaf-2.1.18/yaf_dispatcher.c:925
#10 0x00002b4109402555 in zim_yaf_application_run (ht=<value optimized out>, 
return_value=0x1f4427b8, return_value_ptr=<value optimized out>, 
this_ptr=0x1f42e090, return_value_used=<value optimized out>, 
tsrm_ls=0x1f402180) at /home/xiongti.hjg/yaf-2.1.18/yaf_application.c:443
#11 0x00002b4103ae9167 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#12 0x00002b4103ae8535 in execute () from 
/opt/taobao/install/httpd/modules/libphp5.so
#13 0x00002b4103abc690 in zend_execute_scripts () from 
/opt/taobao/install/httpd/modules/libphp5.so
#14 0x00002b4103a60aed in php_execute_script () from 
/opt/taobao/install/httpd/modules/libphp5.so
#15 0x00002b4103b52e78 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#16 0x00000000004364aa in apc_swizzle_class_entry (files=0x4364aa, user_vars=
<value optimized out>, tsrm_ls=0x1) at /home/xiongti.hjg/APC-
3.1.13/apc_bin.c:367
#17 apc_bin_dump (files=0x4364aa, user_vars=<value optimized out>, tsrm_ls=0x1) 
at /home/xiongti.hjg/APC-3.1.13/apc_bin.c:836
#18 0x0000000000000000 in ?? ()
[Switching to Thread 0x4ca34940 (LWP 3941)]

Breakpoint 2, apc_pthreadmutex_lock (lock=0x2aaaaaaac088, tsrm_ls=0x1fa4ea20) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
70	{
#0  apc_pthreadmutex_lock (lock=0x2aaaaaaac088, tsrm_ls=0x1fa4ea20) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
#1  0x00002b4108b84e5e in apc_cache_find_slot (cache=0x1f1bde40, key=..., 
t=1376277739, tsrm_ls=0x1fa4ea20) at /home/xiongti.hjg/APC-
3.1.13/apc_cache.c:643
#2  0x00002b4108b85299 in apc_cache_find (cache=0x2aaaaaaac088, key=..., 
t=530901536, tsrm_ls=0x2b41042b99b8) at /home/xiongti.hjg/APC-
3.1.13/apc_cache.c:698
#3  0x00002b4108b8bc0c in my_compile_file (h=0x4ca33e20, type=8, 
tsrm_ls=0x1fa4ea20) at /home/xiongti.hjg/APC-3.1.13/apc_main.c:518
#4  0x00002b41038fcdd6 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#5  0x00002b4103abc5f6 in zend_execute_scripts () from 
/opt/taobao/install/httpd/modules/libphp5.so
#6  0x00002b4103a60aed in php_execute_script () from 
/opt/taobao/install/httpd/modules/libphp5.so
#7  0x00002b4103b52e78 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#8  0x00000000004364aa in apc_swizzle_class_entry (files=0x4364aa, user_vars=
<value optimized out>, tsrm_ls=0x1) at /home/xiongti.hjg/APC-
3.1.13/apc_bin.c:367
#9  apc_bin_dump (files=0x4364aa, user_vars=<value optimized out>, tsrm_ls=0x1) 
at /home/xiongti.hjg/APC-3.1.13/apc_bin.c:836
#10 0x0000000000000000 in ?? ()
Hardware watchpoint 5: apc_cache->has_lock

Old value = 0
New value = 1
apc_cache_find_slot (cache=0x1f1bde40, key=..., t=1376277739, 
tsrm_ls=0x1fa4ea20) at /home/xiongti.hjg/APC-3.1.13/apc_cache.c:644
644	    if(key.type == APC_CACHE_KEY_FILE) slot = &cache->slots[hash(key) % 
cache->num_slots];
#0  apc_cache_find_slot (cache=0x1f1bde40, key=..., t=1376277739, 
tsrm_ls=0x1fa4ea20) at /home/xiongti.hjg/APC-3.1.13/apc_cache.c:644
#1  0x00002b4108b85299 in apc_cache_find (cache=0x1, key=..., t=128, 
tsrm_ls=0x0) at /home/xiongti.hjg/APC-3.1.13/apc_cache.c:698
#2  0x00002b4108b8bc0c in my_compile_file (h=0x4ca33e20, type=8, 
tsrm_ls=0x1fa4ea20) at /home/xiongti.hjg/APC-3.1.13/apc_main.c:518
#3  0x00002b41038fcdd6 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#4  0x00002b4103abc5f6 in zend_execute_scripts () from 
/opt/taobao/install/httpd/modules/libphp5.so
#5  0x00002b4103a60aed in php_execute_script () from 
/opt/taobao/install/httpd/modules/libphp5.so
#6  0x00002b4103b52e78 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#7  0x00000000004364aa in apc_swizzle_class_entry (files=0x4364aa, user_vars=
<value optimized out>, tsrm_ls=0x1) at /home/xiongti.hjg/APC-
3.1.13/apc_bin.c:367
#8  apc_bin_dump (files=0x4364aa, user_vars=<value optimized out>, tsrm_ls=0x1) 
at /home/xiongti.hjg/APC-3.1.13/apc_bin.c:836
#9  0x0000000000000000 in ?? ()
[Switching to Thread 0x4702b940 (LWP 3932)]

Breakpoint 2, apc_pthreadmutex_lock (lock=0x2aaaaaaac088, tsrm_ls=0x1f98eb50) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
70	{
#0  apc_pthreadmutex_lock (lock=0x2aaaaaaac088, tsrm_ls=0x1f98eb50) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
#1  0x00002b4108b84e5e in apc_cache_find_slot (cache=0x1f1bde40, key=..., 
t=1376277810, tsrm_ls=0x1f98eb50) at /home/xiongti.hjg/APC-
3.1.13/apc_cache.c:643
#2  0x00002b4108b85299 in apc_cache_find (cache=0x2aaaaaaac088, key=..., 
t=530115408, tsrm_ls=0x2b41042b99b8) at /home/xiongti.hjg/APC-
3.1.13/apc_cache.c:698
#3  0x00002b4108b8bc0c in my_compile_file (h=0x4702ae20, type=8, 
tsrm_ls=0x1f98eb50) at /home/xiongti.hjg/APC-3.1.13/apc_main.c:518
#4  0x00002b41038fcdd6 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#5  0x00002b4103abc5f6 in zend_execute_scripts () from 
/opt/taobao/install/httpd/modules/libphp5.so
#6  0x00002b4103a60aed in php_execute_script () from 
/opt/taobao/install/httpd/modules/libphp5.so
#7  0x00002b4103b52e78 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#8  0x00000000004364aa in apc_swizzle_class_entry (files=0x4364aa, user_vars=
<value optimized out>, tsrm_ls=0x1) at /home/xiongti.hjg/APC-
3.1.13/apc_bin.c:367
#9  apc_bin_dump (files=0x4364aa, user_vars=<value optimized out>, tsrm_ls=0x1) 
at /home/xiongti.hjg/APC-3.1.13/apc_bin.c:836
#10 0x0000000000000000 in ?? ()
[Switching to Thread 0x4662a940 (LWP 3931)]

Breakpoint 2, apc_pthreadmutex_lock (lock=0x2aaaaaaac088, tsrm_ls=0x1f402180) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
70	{
#0  apc_pthreadmutex_lock (lock=0x2aaaaaaac088, tsrm_ls=0x1f402180) at 
/home/xiongti.hjg/APC-3.1.13/apc_pthreadmutex.c:70
#1  0x00002b4108b84e5e in apc_cache_find_slot (cache=0x1f1bde40, key=..., 
t=1376277876, tsrm_ls=0x1f402180) at /home/xiongti.hjg/APC-
3.1.13/apc_cache.c:643
#2  0x00002b4108b85299 in apc_cache_find (cache=0x2aaaaaaac088, key=..., 
t=524296576, tsrm_ls=0x2b41042b99b8) at /home/xiongti.hjg/APC-
3.1.13/apc_cache.c:698
#3  0x00002b4108b8bc0c in my_compile_file (h=0x46629e20, type=8, 
tsrm_ls=0x1f402180) at /home/xiongti.hjg/APC-3.1.13/apc_main.c:518
#4  0x00002b41038fcdd6 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#5  0x00002b4103abc5f6 in zend_execute_scripts () from 
/opt/taobao/install/httpd/modules/libphp5.so
#6  0x00002b4103a60aed in php_execute_script () from 
/opt/taobao/install/httpd/modules/libphp5.so
#7  0x00002b4103b52e78 in ?? () from 
/opt/taobao/install/httpd/modules/libphp5.so
#8  0x00000000004364aa in apc_swizzle_class_entry (files=0x4364aa, user_vars=
<value optimized out>, tsrm_ls=0x1) at /home/xiongti.hjg/APC-
3.1.13/apc_bin.c:367
#9  apc_bin_dump (files=0x4364aa, user_vars=<value optimized out>, tsrm_ls=0x1) 
at /home/xiongti.hjg/APC-3.1.13/apc_bin.c:836
#10 0x0000000000000000 in ?? ()

Program received signal SIGHUP, Hangup.
[Switching to Thread 0x5383f940 (LWP 3952)]
0x0000003faaa0db9b in accept () from /lib64/libpthread.so.0
A debugging session is active.

	Inferior 1 [process 3922] will be detached.

Quit anyway? (y or n) [answered Y; input not from terminal]
 [2013-10-15 11:54 UTC] pecl-dev at lists dot php dot net
No feedback was provided. The bug is being suspended because
we assume that you are no longer experiencing the problem.
If this is not the case and you are able to provide the
information that was requested earlier, please do so and
change the status of the bug back to "Re-Opened". Thank you.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Tue Apr 16 18:01:30 2024 UTC