I am getting sporadic segmentation faults with mod_perl 1.27.
A look at the core dump always shows:
----------------- lwp# 1 / thread# 1 --------------------
0008b37c mod_perl_sent_header (360fc0, 997ec, 599394, 326c00, 0, 0) + 18
00241c14 Perl_pp_entersub (31c800, 4a3d60, 4, 1, 0, ff00) + 568
00239dc8 Perl_runops_standard (326c00, 1a, c0, 328c00, 37fd08, 59bba0) +
30
001e8928 S_call_body (ffbef078, 0, 326c00, 40, 81010100, ff00) + 5c
001e8398 Perl_call_sv (599394, 4d2cd4, 18, 392ed0, 326c00, 557178) + 250
001e8138 Perl_call_method (2e9790, 0, 0, 329000, 64, 4d2cd4) + 18
0023b720 Perl_pp_print (4d2cd0, 0, 4d2cd0, 1, 4d2cdc, 4d2cd8) + 1cc
00239dc8 Perl_runops_standard (326c00, 326c00, ffbef2dc, 1, 0, 5af328) +
30
001e8928 S_call_body (ffbef358, 0, 326400, 35e598, 326c00, ff00) + 5c
001e8624 Perl_call_sv (0, 4d2cd0, 326c00, 2b6580, 0, 2d) + 4dc
0008d760 perl_call_handler (3b73dc, 55cea8, 0, 2b6538, 0, ff00) + 5bc
0008cf4c perl_run_stacked_handlers (2b5b30, 55cea8, 38a384, 0, 0, 425078)
+ 1d0
0008c1bc perl_access (55cea8, 8c0f4, 323684, f72cc, 0, 424c98) + c8
000f2c00 run_method (55cea8, 1b, 1, 0, 2f575354, 2f636769) + 88
000f2cf0 ap_check_access (55cea8, 2cdf70, 2cdc00, 2cc1c1, 45, 65) + 1c
00112750 process_request_internal (55cea8, 0, 2c0, 0, effffc00, 1) + 2dc
00112be0 ap_process_request (55cea8, c8, 55cea8, ffbef738, ffbef748, 0) +
3c
00105674 child_main (0, 1034c4, 103400, ff13b1e0, ff135910, ff12efc0) +
978
00105a28 make_child (32b378, 0, 3e4282ab, 0, 10, ff02b404) + 1a4
00105b4c startup_children (1, 0, 1, 307000, 6c6f6700, 6c6f6700) + b4
00106580 standalone_main (2, ffbef9fc, 0, 0, ff23b01c, 2cbb68) + 2fc
001071f4 main (2, ffbef9fc, ffbefa08, 326464, 0, 0) + 548
0004599c _start (0, 0, 0, 0, 0, 0) + 5c
So, it is always happening at the 'mod_perl_sent_header'.
Sometimes it can take hours before a segmention fault occurs.
Sometimes it is immediate. Every time I get the core dump,
the location is the same--mod_perl_sent_header.
Any information would be very helpful.
---Mike
Configuration info follows:
---------------------------
Environment information:
SunOS Solaris 8
===============
apache error_log:
=================
[Thu Feb 6 10:43:39 2003] [notice] Apache/1.3.27 (Unix) mod_perl/1.27
mod_fastcgi/2.2.12 mod_ssl/2.8.12 OpenSSL/0.9.6g configured -- resuming
normal operations
[Thu Feb 6 10:45:11 2003] [notice] child pid 1935 exit signal Segmentation
Fault (11), possible coredump in /opt/wstr/apache
mod_perl 1.27
=============
perl -V
=======
Summary of my perl5 (revision 5.0 version 8 subversion 0) configuration:
Platform:
osname=solaris, osvers=2.8, archname=sun4-solaris
uname='sunos caesun12 5.8 generic_108528-13 sun4u sparc sunw,ultraax-i2
'
config_args='-de -Dcc=gcc -Dprefix=/opt/wstr/perl -Dstartperl
=#\!/usr/bin/env perl -Alibs=-lsocket -lnsl -ldl -lm -lc -lcrypt -lsec
-lthread'
hint=recommended, useposix=true, d_sigaction=define
usethreads=undef use5005threads=undef useithreads=undef
usemultiplicity=undef
useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=undef use64bitall=undef uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='gcc', ccflags ='-fno-strict-aliasing -I/usr/local/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
optimize='-O',
cppflags='-fno-strict-aliasing -I/usr/local/include'
ccversion='', gccversion='2.95.3 20010315 (release)', gccosandvers
='solaris2.8'
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=4321
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=8
alignbytes=8, prototype=define
Linker and Libraries:
ld='gcc', ldflags =' -L/usr/local/lib '
libpth=/usr/local/lib /usr/lib /usr/ccs/lib
libs= -lsocket -lnsl -ldl -lm -lc -lcrypt -lsec -lthread
perllibs=-lsocket -lnsl -ldl -lm -lc -lcrypt -lsec -lthread
libc=/lib/libc.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version=''
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' '
cccdlflags='-fPIC', lddlflags='-G -L/usr/local/lib'
Characteristics of this binary (from libperl):
Compile-time options: USE_LARGE_FILES
Built under solaris
Compiled at Dec 9 2002 17:57:24
@INC:
/opt/wstr/perl/lib/5.8.0/sun4-solaris
/opt/wstr/perl/lib/5.8.0
/opt/wstr/perl/lib/site_perl/5.8.0/sun4-solaris
/opt/wstr/perl/lib/site_perl/5.8.0
/opt/wstr/perl/lib/site_perl
Apache version 1.3.27
mod_perl built with:
/opt/wstr/perl/bin/perl Makefile.PL \
APACHE_SRC=../apache_1.3.27/src \
DO_HTTPD=1 \
USE_APACI=1 \
PREP_HTTPD=1 \
EVERYTHING = 1
Apache configured as follows:
./configure --prefix=/opt/wstr/apache \
--with-perl="/usr/bin/env perl" \
--activate-module=src/modules/fastcgi/libfastcgi.a \
--activate-module=src/modules/perl/libperl.a \
--activate-module=src/modules/mod_auth_ldap/mod_auth_ldap.c \
--enable-module=most \
--enable-module=ssl \
--enable-module=so