httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Peter Van Biesen <peter.vanbie...@vlafo.be>
Subject Re: Segmentation fault when downloading large files
Date Wed, 28 Aug 2002 10:48:14 GMT
Hi,

can anybody look into apr_buckets_heap.c ? I'm not familiar with the apr
code, but I don't see the free_func called anywhere ( which frees up the
memory ), or am I mistaken ?

Thanks !

Peter.

Peter Van Biesen wrote:
> 
> Hi,
> 
> I started my server with MaxClients=1, started the download and attached
> to the process with gdb. The process crashed; This is the trace :
> 
> vfsi3>gdb httpd 7840
> GNU gdb 5.2.1
> Copyright 2002 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 "hppa2.0n-hp-hpux11.00"...
> Attaching to program: /opt/httpd/bin/httpd, process 7840
> 
> warning: The shared libraries were not privately mapped; setting a
> breakpoint in a shared library will not work until you rerun the
> program.
> 
> Reading symbols from /opt/openssl/lib/libssl.sl.0.9.6...done.
> Reading symbols from /opt/openssl/lib/libcrypto.sl.0.9.6...done.
> Reading symbols from /opt/httpd/lib/libaprutil.sl.0...done.
> Reading symbols from /opt/httpd/lib/libexpat.sl.1...done.
> Reading symbols from /opt/httpd/lib/libapr.sl.0...done.
> Reading symbols from /usr/lib/libnsl.1...done.
> Reading symbols from /usr/lib/libxti.2...done.
> Reading symbols from /usr/lib/libpthread.1...done.
> Reading symbols from /usr/lib/libc.2...done.
> Reading symbols from /usr/lib/libdld.2...done.
> Reading symbols from /usr/lib/libnss_files.1...done.
> Reading symbols from /usr/lib/libnss_nis.1...done.
> Reading symbols from /usr/lib/libnss_dns.1...done.
> 0xc0115b68 in _select_sys () from /usr/lib/libc.2
> (gdb) continue
> Continuing.
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0xc1bfb06c in apr_bucket_alloc () from /opt/httpd/lib/libaprutil.sl.0
> (gdb) where
> #0  0xc1bfb06c in apr_bucket_alloc () from
> /opt/httpd/lib/libaprutil.sl.0
> #1  0xc1bf8d18 in socket_bucket_read () from
> /opt/httpd/lib/libaprutil.sl.0
> #2  0x00129ffc in core_input_filter ()
> #3  0x0011a630 in ap_get_brigade ()
> #4  0x000bb26c in ap_http_filter ()
> #5  0x0011a630 in ap_get_brigade ()
> #6  0x0012999c in net_time_filter ()
> #7  0x0011a630 in ap_get_brigade ()
> #8  0x00092f3c in ap_proxy_http_process_response ()
> #9  0x000935e0 in ap_proxy_http_handler ()
> #10 0x0008484c in proxy_run_scheme_handler ()
> #11 0x0008259c in proxy_handler ()
> #12 0x000fdc40 in ap_run_handler ()
> #13 0x000fea04 in ap_invoke_handler ()
> #14 0x000c0d9c in ap_process_request ()
> #15 0x000b8348 in ap_process_http_connection ()
> #16 0x00115a00 in ap_run_process_connection ()
> #17 0x001160c0 in ap_process_connection ()
> #18 0x000fae00 in child_main ()
> #19 0x000fb0ac in make_child ()
> #20 0x000fb47c in perform_idle_server_maintenance ()
> #21 0x000fbc88 in ap_mpm_run ()
> #22 0x001079f0 in main ()
> (gdb)
> 
> The resources used by the process increase linearly until the maximum
> per process is reached after which the crash occurs. Did we do an alloc
> without a free ?
> 
> Peter.

Mime
View raw message