[mp2] mod_perl 2.0.7 Segmentation fault in OutputFilter(?)

Petra Zier <[email protected]>
Newsgroups gmane.comp.apache.mod-perl
Message-ID <[email protected]>
Hi,
I am using httpd 2.2.23 (worker MPM), perl 5.14.2, mod-perl-2.0.7 on a 64bit-CentOS-6.3 system and received every 2-4 hours a Segmentation fault (maybe from the output filter). :-(

My apache config looks like:
<Directory "/www/xxx/htdocs/">
  Order Allow,Deny
  Allow from all
  RewriteEngine On
  #many rules here
  RewriteRule ^prb/internal/ - [L]
  #IF %{REQUEST_URI} == "/" then use /xxx.html
  RewriteRule ^$ http://127.0.0.1:80/xxx.html [P,QSA,L]
  #ELSE
  RewriteRule ^(.*)$ http://127.0.0.1:80/$1 [P,QSA,L]

  SetHandler modperl
  PerlResponseHandler PrB::myHandler
  PerlOutputFilterHandler PrB::OutputFilter
</Directory>

Here are three backtraces of apaches coredumps:
Does anyone has any idea what might be the reason for this? What can be done to fix this?

#0  Perl_sv_magic (my_perl=0x57f1ec0, sv=0x10110700000001, obj=0x0, how=126, name=0x0, namlen=-1) at sv.c:5253
#1  0x00007fd6b5fa7acd in modperl_filter_mg_set (filter=0x7fd690004980) at modperl_filter.c:358
#2  modperl_run_filter (filter=0x7fd690004980) at modperl_filter.c:500
#3  0x00007fd6b5fa83a5 in modperl_output_filter_handler (f=0x7fd6900090a0, bb=0x7fd690009c68) at modperl_filter.c:907
#4  0x00007fd6b828a83f in ap_proxy_http_process_response (p=0x7fd6900028f8, r=<value optimized out>, backend=0x2632ce0, origin=0x2640f50, 
    conf=0x4d71310, server_portstr=0x7fd6a97faae0 "") at mod_proxy_http.c:1835
#5  0x00007fd6b828bc89 in proxy_http_handler (r=0x7fd690002970, worker=<value optimized out>, conf=0x7fd6a97fab68, 
    url=0x7fd690009240 "/xxx.pdf", 
    proxyname=0x7fd6900008e8 "\270I", proxyport=3920) at mod_proxy_http.c:2036
#6  0x00007fd6b8493e82 in proxy_run_scheme_handler (r=0x7fd690002970, worker=0x2562770, conf=0x4d71310, 
    url=0x7fd690008fe6 "http://127.0.0.1:80/xxx.pdf", 
    proxyhost=0x0, proxyport=0) at mod_proxy.c:2415
#7  0x00007fd6b8498587 in proxy_handler (r=0x7fd690002970) at mod_proxy.c:1031
#8  0x000000000043ca20 in ap_run_handler (r=0x7fd690002970) at config.c:160
#9  ap_invoke_handler (r=0x7fd690002970) at config.c:378
#10 0x0000000000449770 in ap_process_request (r=0x7fd690002970) at http_request.c:282
#11 0x0000000000446240 in ap_process_http_connection (c=0x7fd6ac004c58) at http_core.c:190
#12 0x0000000000442348 in ap_run_process_connection (c=0x7fd6ac004c58, csd=0x7fd6ac004a40) at connection.c:43
#13 ap_process_connection (c=0x7fd6ac004c58, csd=0x7fd6ac004a40) at connection.c:190
#14 0x0000000000451f84 in process_socket (thd=0x2562f80, dummy=<value optimized out>) at worker.c:545
#15 worker_thread (thd=0x2562f80, dummy=<value optimized out>) at worker.c:895
#16 0x00007fd6bc311851 in start_thread () from /lib64/libpthread.so.0
#17 0x00007fd6bc05f11d in clone () from /lib64/libc.so.6

====================
#0  modperl_filter_f_cleanup (data=<value optimized out>) at modperl_filter.c:287
#1  0x00007fd6bc97fd2e in run_cleanups (pool=0x7fd660017de8) at memory/unix/apr_pools.c:2352
#2  apr_pool_destroy (pool=0x7fd660017de8) at memory/unix/apr_pools.c:814
#3  0x000000000044616d in ap_process_http_connection (c=0x7fd698011358) at http_core.c:199
#4  0x0000000000442348 in ap_run_process_connection (c=0x7fd698011358, csd=0x7fd698011140) at connection.c:43
#5  ap_process_connection (c=0x7fd698011358, csd=0x7fd698011140) at connection.c:190
#6  0x0000000000451f84 in process_socket (thd=0x256e0f0, dummy=<value optimized out>) at worker.c:545
#7  worker_thread (thd=0x256e0f0, dummy=<value optimized out>) at worker.c:895
#8  0x00007fd6bc311851 in start_thread () from /lib64/libpthread.so.0
#9  0x00007fd6bc05f11d in clone () from /lib64/libc.so.6

=============
#0  S_more_sv (my_perl=0x57f1ec0, i=<value optimized out>) at sv.c:249
#1  Perl_newSViv (my_perl=0x57f1ec0, i=<value optimized out>) at sv.c:8627
#2  0x00007fd6b39863e9 in XS_Time__HiRes_gettimeofday (my_perl=0x57f1ec0, cv=<value optimized out>) at HiRes.xs:1043
#3  0x00007fd6b5cafa70 in Perl_pp_entersub (my_perl=0x57f1ec0) at pp_hot.c:3046
#4  0x00007fd6b5cae6a6 in Perl_runops_standard (my_perl=0x57f1ec0) at run.c:41
#5  0x00007fd6b5c433b4 in Perl_call_sv (my_perl=0x57f1ec0, sv=0x596eee0, flags=10) at perl.c:2647
#6  0x00007fd6b5fa03a5 in modperl_callback (my_perl=0x57f1ec0, handler=0x3e22450, p=0x7fd650006918, r=0x7fd650006990, s=0x3e20240, 
    args=0x7fd658107f70) at modperl_callback.c:101
#7  0x00007fd6b5fa7b06 in modperl_run_filter (filter=0x7fd68c016350) at modperl_filter.c:513
#8  0x00007fd6b5fa83a5 in modperl_output_filter_handler (f=0x7fd65000c5e8, bb=0x7fd674024460) at modperl_filter.c:907
#9  0x00007fd6b828a83f in ap_proxy_http_process_response (p=0x7fd650006918, r=<value optimized out>, backend=0x2582830, origin=0x259aaf0, 
    conf=0x4b47c88, server_portstr=0x7fd6a83f8ae0 "") at mod_proxy_http.c:1835
#10 0x00007fd6b828bc89 in proxy_http_handler (r=0x7fd650006990, worker=<value optimized out>, conf=0x7fd6a83f8b68, 
    url=0x7fd65000c718 "/xxx.gif", proxyname=0x7fd6500008e8 "\230q\001\254\326\177", proxyport=43760)
    at mod_proxy_http.c:2036
#11 0x00007fd6b8493e82 in proxy_run_scheme_handler (r=0x7fd650006990, worker=0x2562770, conf=0x4b47c88, 
    url=0x7fd65000c566 "http://127.0.0.1:80/xxx.gif", proxyhost=0x0, proxyport=0) at mod_proxy.c:2415
#12 0x00007fd6b8498587 in proxy_handler (r=0x7fd650006990) at mod_proxy.c:1031
#13 0x000000000043ca20 in ap_run_handler (r=0x7fd650006990) at config.c:160
#14 ap_invoke_handler (r=0x7fd650006990) at config.c:378
#15 0x0000000000449770 in ap_process_request (r=0x7fd650006990) at http_request.c:282
#16 0x0000000000446240 in ap_process_http_connection (c=0x7fd6ac017438) at http_core.c:190
#17 0x0000000000442348 in ap_run_process_connection (c=0x7fd6ac017438, csd=0x7fd6ac017220) at connection.c:43
#18 ap_process_connection (c=0x7fd6ac017438, csd=0x7fd6ac017220) at connection.c:190
#19 0x0000000000451f84 in process_socket (thd=0x2562fe0, dummy=<value optimized out>) at worker.c:545
#20 worker_thread (thd=0x2562fe0, dummy=<value optimized out>) at worker.c:895
#21 0x00007fd6bc311851 in start_thread () from /lib64/libpthread.so.0
#22 0x00007fd6bc05f11d in clone () from /lib64/libc.so.6


perl -V says:
Summary of my perl5 (revision 5 version 14 subversion 2) configuration:
   
  Platform:
    osname=linux, osvers=2.6.32-279.5.2.el6.x86_64, archname=x86_64-linux-thread-multi
    uname='linux vwww-dev05.ws.prb.de 2.6.32-279.5.2.el6.x86_64 #1 smp fri aug 24 01:07:11 utc 2012 x86_64 x86_64 x86_64 gnulinux '
    config_args='-Dcc=cc -Doptimize=-O3 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -Dprefix=/prb/opt64/perl-5.14.2 -Duselargefiles=y -Dbincompat5005=undef -Dinstallusrbinperl=undef -Dd_suidsafe=undef [email protected] [email protected] -Duseshrplib -Dusethreads -de'
    hint=recommended, useposix=true, d_sigaction=define
    useithreads=define, usemultiplicity=define
    useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
    use64bitint=define, use64bitall=define, uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
    optimize='-O3 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic',
    cppflags='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include'
    ccversion='', gccversion='4.4.6 20120305 (Red Hat 4.4.6-4)', gccosandvers=''
    intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
    ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
    alignbytes=8, prototype=define
  Linker and Libraries:
    ld='cc', ldflags =' -fstack-protector -L/usr/local/lib'
    libpth=/usr/local/lib /lib/../lib64 /usr/lib/../lib64 /lib /usr/lib /lib64 /usr/lib64 /usr/local/lib64
    libs=-lnsl -lgdbm -ldl -lm -lcrypt -lutil -lpthread -lc
    perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
    libc=/lib/libc-2.12.so, so=so, useshrplib=true, libperl=libperl.so
    gnulibc_version='2.12'
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E -Wl,-rpath,/prb/opt64/perl-5.14.2/lib/5.14.2/x86_64-linux-thread-multi/CORE'
    cccdlflags='-fPIC', lddlflags='-shared -O3 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -L/usr/local/lib'


Characteristics of this binary (from libperl): 
  Compile-time options: MULTIPLICITY PERL_DONT_CREATE_GVSV
                        PERL_IMPLICIT_CONTEXT PERL_MALLOC_WRAP
                        PERL_PRESERVE_IVUV USE_64_BIT_ALL USE_64_BIT_INT
                        USE_ITHREADS USE_LARGE_FILES USE_PERLIO USE_PERL_ATOF
                        USE_REENTRANT_API
  Built under linux
  Compiled at Sep 14 2012 07:38:30
  @INC:
    /prb/opt64/perl-5.14.2/lib/site_perl/5.14.2/x86_64-linux-thread-multi
    /prb/opt64/perl-5.14.2/lib/site_perl/5.14.2
    /prb/opt64/perl-5.14.2/lib/5.14.2/x86_64-linux-thread-multi
    /prb/opt64/perl-5.14.2/lib/5.14.2
    .


Many thanx for any hints!
Petra
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.