Me again.
upgraded to httpd 2.2.4, php 5.2.1, APC CVS.
Still the same segfault. I was just about to hang myself a minute ago. My boss is just going to kill me anyway.
PLEASE have a look at this 3-month-old bug in a stable package. PLEASE if there is a workaround or a configure flag or whatever... just tell me. I can give you any informations/traces you want to help.
Segfault happens whether shm_size=92 or 128.
Here is the output of apc.php. 10 minutes after restart (after segfault :/), cache is 78% full.
APC Version 3.0.13-dev
PHP Version 5.2.1
Server Software Japache/2.2.4 (Unix)
Shared Memory 1 Segment(s) with 92.0 MBytes
Start Time 2007/02/17 20:13:57
Uptime 10 minutes
File Upload Support 1
File Cache Information
Cached Files 865 ( 63.3 MBytes)
Hits 166095
Misses 899
Request Rate (hits, misses) 278.32 cache requests/second
Hit Rate 276.82 cache requests/second
Miss Rate 1.50 cache requests/second
Insert Rate 1.44 cache requests/second
Cache full count 0
User Cache Information
Cached Variables 0 ( 0.0 Bytes)
Hits 0
Misses 0
Request Rate (hits, misses) 0.00 cache requests/second
Hit Rate 0.00 cache requests/second
Miss Rate 0.00 cache requests/second
Insert Rate 0.00 cache requests/second
Cache full count 0
Runtime Settings
apc.cache_by_default 1
apc.enable_cli 0
apc.enabled 1
apc.file_update_protection 0
apc.filters
apc.gc_ttl 3600
apc.include_once_override 0
apc.max_file_size 1M
apc.mmap_file_mask
apc.num_files_hint 1500
apc.report_autofilter 0
apc.rfc1867 0
apc.shm_segments 1
apc.shm_size 92
apc.slam_defense 0
apc.stat 1
apc.stat_ctime 0
apc.ttl 0
apc.user_entries_hint 100
apc.user_ttl 0
apc.write_lock 1
Backtrace:
root@spock:~# gdb /usr/local/jamendo/apache/bin/httpd /var/log/japache/dump/core
GNU gdb 6.4-debian
Copyright 2005 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu"...(no debugging symbols found)
Using host libthread_db library "/lib/libthread_db.so.1".
Core was generated by `/usr/local/jamendo/apache/bin/httpd -k start'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /lib/libm.so.6...(no debugging symbols found)...done.
Loaded symbols for /lib/libm.so.6
Reading symbols from /usr/local/jamendo/apache/lib/libaprutil-1.so.0...(no debugging symbols found)...done.
Loaded symbols for /usr/local/jamendo/apache/lib/libaprutil-1.so.0
Reading symbols from /usr/lib/libexpat.so.1...
(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libexpat.so.1
Reading symbols from /usr/local/jamendo/apache/lib/libapr-1.so.0...(no debugging symbols found)...done.
Loaded symbols for /usr/local/jamendo/apache/lib/libapr-1.so.0
Reading symbols from /lib/librt.so.1...
(no debugging symbols found)...done.
Loaded symbols for /lib/librt.so.1
Reading symbols from /lib/libcrypt.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib/libcrypt.so.1
Reading symbols from /lib/libpthread.so.0...
(no debugging symbols found)...done.
Loaded symbols for /lib/libpthread.so.0
Reading symbols from /lib/libdl.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /lib/libc.so.6...
(no debugging symbols found)...done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /lib/ld-linux-x86-64.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib64/ld-linux-x86-64.so.2
Reading symbols from /lib/libnsl.so.1...
(no debugging symbols found)...done.
Loaded symbols for /lib/libnsl.so.1
Reading symbols from /lib/libnss_compat.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib/libnss_compat.so.2
Reading symbols from /lib/libnss_nis.so.2...
(no debugging symbols found)...done.
Loaded symbols for /lib/libnss_nis.so.2
Reading symbols from /lib/libnss_files.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib/libnss_files.so.2
Reading symbols from /usr/local/jamendo/apache/modules/libphp5.so...
(no debugging symbols found)...done.
Loaded symbols for /usr/local/jamendo/apache/modules/libphp5.so
Reading symbols from /usr/lib/libmysqlclient.so.14...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libmysqlclient.so.14
Reading symbols from /usr/lib/libfreetype.so.6...
(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libfreetype.so.6
Reading symbols from /usr/lib/libpng12.so.0...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libpng12.so.0
Reading symbols from /usr/lib/libz.so.1...
(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libz.so.1
Reading symbols from /usr/lib/libjpeg.so.62...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libjpeg.so.62
Reading symbols from /lib/libresolv.so.2...
(no debugging symbols found)...done.
Loaded symbols for /lib/libresolv.so.2
Reading symbols from /usr/lib/libssl.so.0.9.8...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libssl.so.0.9.8
Reading symbols from /usr/lib/libcrypto.so.0.9.8...
(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libcrypto.so.0.9.8
Reading symbols from /usr/lib/libcurl.so.3...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libcurl.so.3
Reading symbols from /usr/lib/libgssapi_krb5.so.2...
(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libgssapi_krb5.so.2
Reading symbols from /usr/lib/libkrb5.so.3...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libkrb5.so.3
Reading symbols from /usr/lib/libk5crypto.so.3...
---Type <return> to continue, or q <return> to quit---
(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libk5crypto.so.3
Reading symbols from /usr/lib/libkrb5support.so.0...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libkrb5support.so.0
Reading symbols from /lib/libcom_err.so.2...
(no debugging symbols found)...done.
Loaded symbols for /lib/libcom_err.so.2
Reading symbols from /usr/lib/libidn.so.11...(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libidn.so.11
Reading symbols from /usr/lib/libxml2.so.2...
(no debugging symbols found)...done.
Loaded symbols for /usr/lib/libxml2.so.2
Reading symbols from /usr/local/jamendo/php/lib/php/extensions/debug-non-zts-20060613/memcache.so...(no debugging symbols found)...done.
Loaded symbols for /usr/local/jamendo/php/lib/php/extensions/debug-non-zts-20060613/memcache.so
Reading symbols from /usr/local/jamendo/php/lib/php/extensions/debug-non-zts-20060613/apc.so...done.
Loaded symbols for /usr/local/jamendo/php/lib/php/extensions/debug-non-zts-20060613/apc.so
Reading symbols from /usr/local/jamendo/php/lib/php/extensions/debug-non-zts-20060613/geoip.so...done.
Loaded symbols for /usr/local/jamendo/php/lib/php/extensions/debug-non-zts-20060613/geoip.so
Reading symbols from /usr/local/lib/libGeoIP.so.1...done.
Loaded symbols for /usr/local/lib/libGeoIP.so.1
#0 sma_allocate
(shmaddr=0x2aaaadda1000, size=<value optimized out>)
at /root/pecl/apc/apc_sma.c:155
155 /root/pecl/apc/apc_sma.c: No such file or directory.
in /root/pecl/apc/apc_sma.c
(gdb)
(gdb)
(gdb) bt full
#0 sma_allocate (shmaddr=0x2aaaadda1000, size=<value optimized out>)
at /root/pecl/apc/apc_sma.c:155
prv = (block_t *) 0x2aaaadde2002
cur = (block_t *) 0x22aaaadda1000
realsize = 256
last_offset = 562949953421312
wrapped = 0
__PRETTY_FUNCTION__ = "sma_allocate"
#1 0x00002aaaada86f5f in apc_sma_malloc (n=232)
at /root/pecl/apc/apc_sma.c:404
off = <value optimized out>
i = <value optimized out>
__PRETTY_FUNCTION__ = "apc_sma_malloc"
#2 0x00002aaaada8413c in apc_copy_op_array (dst=0x0, src=0x2000000000000,
allocate=0x2aaaada86ef0 <apc_sma_malloc>,
deallocate=0x2aaaada87150 <apc_sma_free>)
at /root/pecl/apc/apc_compile.c:1102
i = <value optimized out>
local_dst_alloc = 0
flags = <value optimized out>
__PRETTY_FUNCTION__ = "apc_copy_op_array"
#3 0x00002aaaada85cc8 in my_compile_file (h=0x7fffffa34ba0,
type=<value optimized out>) at /root/pecl/apc/apc_main.c:408
---Type <return> to continue, or q <return> to quit---
dummy = <value optimized out>
key = {data = {file = {device = 2306, inode = 13292342}, user = {
identifier = 0x902 <Address 0x902 out of bounds>,
identifier_len = 13292342}, fpfile = {
fullpath = 0x902 <Address 0x902 out of bounds>,
fullpath_len = 13292342}}, mtime = 1171720760, type = 1 '\001'}
cache_entry = <value optimized out>
op_array = (zend_op_array *) 0x2aaab39fcdf8
num_functions = 1047
num_classes = 127
ret = <value optimized out>
alloc_op_array = <value optimized out>
alloc_functions = <value optimized out>
alloc_classes = <value optimized out>
t = 1171739634
path = <value optimized out>
mem_size = 0
#4 0x00002aaaabad825a in execute ()
from /usr/local/jamendo/apache/modules/libphp5.so
No symbol table info available.
#5 0x00002aaaaba938d3 in execute ()
from /usr/local/jamendo/apache/modules/libphp5.so
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#6 0x00002aaaaba9406f in execute ()
from /usr/local/jamendo/apache/modules/libphp5.so
No symbol table info available.
#7 0x00002aaaaba94d6b in execute ()
from /usr/local/jamendo/apache/modules/libphp5.so
No symbol table info available.
#8 0x00002aaaaba938d3 in execute ()
from /usr/local/jamendo/apache/modules/libphp5.so
No symbol table info available.
#9 0x00002aaaaba9406f in execute ()
from /usr/local/jamendo/apache/modules/libphp5.so
No symbol table info available.
#10 0x00002aaaaba94d6b in execute ()
from /usr/local/jamendo/apache/modules/libphp5.so
No symbol table info available.
#11 0x00002aaaaba938d3 in execute ()
from /usr/local/jamendo/apache/modules/libphp5.so
No symbol table info available.
#12 0x00002aaaaba9406f in execute ()
from /usr/local/jamendo/apache/modules/libphp5.so
No symbol table info available.
#13 0x00002aaaaba94d6b in execute ()
from /usr/local/jamendo/apache/modules/libphp5.so
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#14 0x00002aaaaba938d3 in execute ()
from /usr/local/jamendo/apache/modules/libphp5.so
No symbol table info available.
#15 0x00002aaaabaa229b in execute ()
from /usr/local/jamendo/apache/modules/libphp5.so
No symbol table info available.
#16 0x00002aaaaba938d3 in execute ()
from /usr/local/jamendo/apache/modules/libphp5.so
No symbol table info available.
#17 0x00002aaaaba697f3 in zend_execute_scripts ()
from /usr/local/jamendo/apache/modules/libphp5.so
No symbol table info available.
#18 0x00002aaaaba09250 in php_execute_script ()
from /usr/local/jamendo/apache/modules/libphp5.so
No symbol table info available.
#19 0x00002aaaabaf0548 in zend_get_zval_ptr_ptr ()
from /usr/local/jamendo/apache/modules/libphp5.so
No symbol table info available.
#20 0x00000000004335e5 in ap_run_handler ()
No symbol table info available.
#21 0x0000000000433a4c in ap_invoke_handler ()
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#22 0x0000000000443ce0 in ap_process_request ()
No symbol table info available.
#23 0x00000000004413ed in ap_filter_protocol ()
No symbol table info available.
#24 0x000000000043a015 in ap_run_process_connection ()
No symbol table info available.
#25 0x0000000000456855 in ap_graceful_stop_signalled ()
No symbol table info available.
#26 0x0000000000456ad4 in ap_graceful_stop_signalled ()
No symbol table info available.
#27 0x00000000004573dc in ap_mpm_run ()
No symbol table info available.
#28 0x0000000000420cd1 in main ()
No symbol table info available.
(gdb)