On Mon, 20 Sep 2004, Joe Schaefer wrote: > Thanks, Cliff. I guess I was getting confused by the > warnings in the apr_ring.h docs.
If you can be more specific about what part confused you, I'd be happy to rewrite said docs. If they're confusing as they stand, it's probably my fault anyway. :) > % gdb /usr/local/apache2/bin/httpd -core > /home/c/apache/modperl-2.0/t/core.9055 > [...] > #0 0x0000002a9590b2ca in apr_bucket_free (mem=0x35b39e8) > at buckets/apr_buckets_alloc.c:174 > 174 apr_allocator_free(list->allocator, node->memnode); > (gdb) bt > #0 0x0000002a9590b2ca in apr_bucket_free (mem=0x35b39e8) > at buckets/apr_buckets_alloc.c:174 Have you tried compiling with bucket debugging enabled? (See page 17 of my slides from last year's apachecon at http://www.cs.virginia.edu/~jcw5q/talks/apache/apache2moddebugging.pdf for help on how to do that.) > 174 apr_allocator_free(list->allocator, node->memnode); > (gdb) p list > $5 = (apr_bucket_alloc_t *) 0x0 Um, that's bad. :) Try the bucket debugging code. That will insert bucket/brigade self-consistency checks and checks for double-free and the like in a bunch of strategic locations that should help find the actual problem rather than what you're seeing here, which I suspect is kind of a red herring because you're probably looking at the after-effects of some data structure corruption that happened at some point earlier. --Cliff