|
|||||||||||
|
DO NOT REPLY [Bug 15655] New: - mod_perl 1.99_07 "make test" causes Apache2 threadpool mpm core dump
From: <bugzilla(at)apache.org>
Date: Tue Dec 24 2002 - 13:20:06 EST
mod_perl 1.99_07 "make test" causes Apache2 threadpool mpm core dump
Summary: mod_perl 1.99_07 "make test" causes Apache2 threadpool
mpm core dump
Product: APR
Version: HEAD
Platform: Other
OS/Version: Linux
Status: NEW
Severity: Critical
Priority: Other
Component: APR
AssignedTo: bugs@httpd.apache.org
ReportedBy: karlheg@hegbloom.net
When I run "make test" after building mod_perl 1.99_07, Apache2 mpm threadpool dumps core. I rebuilt Apache2 from the Debian sources, with "-g -O0" and not stripped (patch to support DEB_BUILD_OPTIONS for "debug,nostrip" submitted against Debian Apache2), then ran "export LD_LIBRARY_PATH=/usr/lib/debug" to get the debug libc and libpthread involved. I then removed the core file, and ran "make test" again. I found that it's probably trying to free memory that has already been freed. Here's the output of "where full":
(gdb) where full
p = (struct malloc_chunk *) 0xa01a668 size = 0x9e5f248 fb = (struct malloc_chunk **) 0x9e5f248 nextchunk = (struct malloc_chunk *) 0x13e798b0 nextsize = 0x40011850 prevsize = 0x9e5f248 bck = (struct malloc_chunk *) 0x9e5f248 fwd = (struct malloc_chunk *) 0x0 #2 0x4017dd3b in apr_allocator_destroy (allocator=0xa064120)
at
index = 0x0 node = (apr_memnode_t *) 0xa01a670 ref = (apr_memnode_t **) 0xa064134 #3 0x40128dd4 in alloc_cleanup (data=0xa18eb88)
at
list = (apr_bucket_alloc_t *) 0xa18eb88 ---Type <return> to continue, or q <return> to quit---
allocator = (apr_allocator_t *) 0xa064120
cleanup_fn=0x40128d90 <alloc_cleanup>)
at
at
at
ti = (proc_info *) 0x9c755f0 process_slot = 0x0 thread_slot = 0x1 bucket_alloc = (apr_bucket_alloc_t *) 0xa18eb88 tpool = (apr_pool_t *) 0x8d2fe08 ptrans = (apr_pool_t *) 0xa18cb80 allocator = (apr_allocator_t *) 0xa04a710 rv = 0x0 wakeup = (worker_wakeup_info *) 0x8d2fe50 #7 0x4017826c in dummy_worker (opaque=0x8d27fb0) ---Type <return> to continue, or q <return> to quit---
at
thread = (apr_thread_t *) 0x8d27fb0
self = (struct _pthread_descr_struct *) 0xbf1ffbe0
request = {req_thread = 0x0, req_kind = REQ_CREATE, req_args = {
create = {attr = 0x0, fn = 0, arg = 0x0, mask = {__val = {
0x0 (gdb) I hope that's not horribly wrapped by this text entry box! I will save the core file, so let me know if you need any more information. Source level debugging in XEmacs is fully operational, but I am not familiar with the apache internals at all. I can let you log in if you need to poke around, just email me or /msg me in irc.openprojects.net, #orlug, karlheg. ldd =apache2 libz.so.1 => /lib/libz.so.1 (0x4002d000) libssl.so.0.9.6 => /usr/lib/i686/libssl.so.0.9.6 (0x4003c000) libcrypto.so.0.9.6 => /usr/lib/i686/libcrypto.so.0.9.6 (0x40069000) libaprutil.so.0 => /usr/lib/libaprutil.so.0 (0x40121000) libgdbm.so.1 => /usr/lib/libgdbm.so.1 (0x4013a000) libexpat.so.1 => /usr/lib/libexpat.so.1 (0x40140000) libapr.so.0 => /usr/lib/libapr.so.0 (0x40161000) libm.so.6 => /usr/lib/debug/libm.so.6 (0x40184000) libcrypt.so.1 => /usr/lib/debug/libcrypt.so.1 (0x401a5000) libnsl.so.1 => /usr/lib/debug/libnsl.so.1 (0x401d2000) libdl.so.2 => /usr/lib/debug/libdl.so.2 (0x401e5000) libpthread.so.0 => /usr/lib/debug/libpthread.so.0 (0x401e8000) libc.so.6 => /usr/lib/debug/libc.so.6 (0x40238000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000) The libapr is built from Debian apache2 2.0.43-1 source, modified only to provide -g -O0 -pipe in CFLAGS. The exact configuration is stored on my machine if you need more information. I will keep it for several weeks, since this is the holiday season and I expect many of you are taking some time off. To unsubscribe, e-mail: bugs-unsubscribe@httpd.apache.org For additional commands, e-mail: bugs-help@httpd.apache.org Received on Tue Dec 24 18:18:52 2002 This archive was generated by hypermail 2.1.8 : Wed Aug 23 2006 - 16:44:14 EDT |
||||||||||
|
|||||||||||