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 -Dcf_email=nob...@example.com 
-Dperladmin=nob...@example.com -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

                                          

Reply via email to