[mp 2.0.5] Early core dump:-( OpenSolaris-x86, Apache 2.2.21 & Perl5.14.1
am 22.09.2011 18:21:27 von Marco Walther-------------8<---------- Start Bug Report ------------8<----------
1. Problem Description:
Apache with enabled mod_perl runs into a SIGSEGV quickly during the
initialization of mod_perl:-( This run is from a worker-mpm but the same
happens with the prefork-mpm.
We were running mod_perl 2.0.4 + Perl 5.10.1 successfully before.
Any idea??
Thanks,
-- Marco
2. Used Components and their Configuration:
*** mod_perl version 2.000005
*** using
/export/home/marcow/src/kenai-packages~subversion/mod_perl/m od_perl-2.0.5/lib/Apache2/BuildConfig.pm
*** Makefile.PL options:
MP_APR_LIB => aprext
MP_APXS => /opt/kenai/apache2/bin/apxs
MP_COMPAT_1X => 1
MP_GENERATE_XS => 1
MP_LIBNAME => mod_perl
MP_USE_DSO => 1
*** /opt/kenai/apache2/bin/httpd -V
Server version: Apache/2.2.21 (Unix)
Server built: Sep 14 2011 22:10:21
Server's Module Magic Number: 20051115:30
Server loaded: APR 1.4.5, APR-Util 1.3.12
Compiled using: APR 1.4.5, APR-Util 1.3.12
Architecture: 32-bit
Server MPM: Worker
threaded: yes (fixed thread count)
forked: yes (variable process count)
Server compiled with....
-D APACHE_MPM_DIR="server/mpm/worker"
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
-D APR_USE_PROC_PTHREAD_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D DYNAMIC_MODULE_LIMIT=128
-D HTTPD_ROOT="/opt/kenai/apache2"
-D SUEXEC_BIN="/opt/kenai/apache2/bin/suexec"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_ERRORLOG="logs/error_log"
-D AP_TYPES_CONFIG_FILE="conf/mime.types"
-D SERVER_CONFIG_FILE="conf/httpd.conf"
*** /usr/bin/ldd /opt/kenai/apache2/bin/httpd
libm.so.2 => /usr/lib/libm.so.2
libaprutil-1.so.0 => /opt/kenai/apache2/lib/libaprutil-1.so.0
libdb-4.6.so => /opt/kenai/lib/libdb-4.6.so
libresolv.so.2 => /usr/lib/libresolv.so.2
libexpat.so.1 => /usr/lib/libexpat.so.1
libiconv.so.2 => /opt/kenai/lib/libiconv.so.2
libapr-1.so.0 => /opt/kenai/apache2/lib/libapr-1.so.0
libuuid.so.1 => /usr/lib/libuuid.so.1
libsendfile.so.1 => /usr/lib/libsendfile.so.1
libsocket.so.1 => /usr/lib/libsocket.so.1
libnsl.so.1 => /usr/lib/libnsl.so.1
libpthread.so.1 => /usr/lib/libpthread.so.1
libc.so.1 => /usr/lib/libc.so.1
libdlpi.so.1 => /lib/libdlpi.so.1
libmp.so.2 => /lib/libmp.so.2
libmd.so.1 => /lib/libmd.so.1
libscf.so.1 => /lib/libscf.so.1
libinetutil.so.1 => /lib/libinetutil.so.1
libdladm.so.1 => /lib/libdladm.so.1
libuutil.so.1 => /lib/libuutil.so.1
libgen.so.1 => /lib/libgen.so.1
libdevinfo.so.1 => /lib/libdevinfo.so.1
librcm.so.1 => /lib/librcm.so.1
libnvpair.so.1 => /lib/libnvpair.so.1
libexacct.so.1 => /usr/lib/libexacct.so.1
libkstat.so.1 => /lib/libkstat.so.1
libcurses.so.1 => /lib/libcurses.so.1
libsec.so.1 => /lib/libsec.so.1
libavl.so.1 => /lib/libavl.so.1
libidmap.so.1 => /usr/lib/libidmap.so.1
libldap.so.5 => /usr/lib/libldap.so.5
libsldap.so.1 => /usr/lib/libsldap.so.1
libadutils.so.1 => /usr/lib/libadutils.so.1
libsasl.so.1 => /usr/lib/libsasl.so.1
libnspr4.so => /usr/lib/mps/libnspr4.so
libplc4.so => /usr/lib/mps/libplc4.so
libnss3.so => /usr/lib/mps/libnss3.so
libssl3.so => /usr/lib/mps/libssl3.so
librt.so.1 => /lib/librt.so.1
libdl.so.1 => /lib/libdl.so.1
libsoftokn3.so => /usr/lib/mps/libsoftokn3.so
libplds4.so => /usr/lib/mps/libplds4.so
libthread.so.1 => /lib/libthread.so.1
libbsm.so.1 => /lib/libbsm.so.1
libsecdb.so.1 => /lib/libsecdb.so.1
libtsol.so.2 => /lib/libtsol.so.2
*** (apr|apu)-config linking info
-L/opt/kenai/apache2/lib -laprutil-1 -lldap -llber -ldb-4.6
-lexpat -liconv -L/opt/kenai/lib -R/opt/kenai/lib
-L/opt/kenai/apache2/lib -R/opt/kenai/apache2/lib
-L/opt/kenai/apache2/lib -lapr-1 -luuid -lsendfile -lsocket -lnsl
-lpthread
*** /opt/kenai/bin/perl -V
Summary of my perl5 (revision 5 version 14 subversion 1) configuration:
Platform:
osname=solaris, osvers=2.11, archname=i86pc-solaris-thread-multi
uname='sunos kexdev03z1 5.11 snv_111b i86pc i386 i86pc '
config_args='-Dprefix=/opt/kenai -A
prepend:ccflags=-I/opt/kenai/include -A prepend:libpth=/opt/kenai/lib
/opt/SUNWspro/prod/lib/sparc/ /opt/SUNWspro/prod/lib/ /lib /usr/lib -A
prepend:ldflags=-L/opt/kenai/lib -R/opt/kenai/lib -Doptimize=-g -U
locincpth= -U loclibpth= -U glibpth= -Dusethreads -d -e'
hint=recommended, useposix=true, d_sigaction=define
useithreads=define, usemultiplicity=define
useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
use64bitint=undef, use64bitall=undef, uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='/opt/SUNWspro/bin/cc', ccflags ='-D_REENTRANT
-I/opt/kenai/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
-DPERL_USE_SAFE_PUTENV',
optimize='-g',
cppflags='-D_REENTRANT -I/opt/kenai/include'
ccversion='Sun C 5.10 SunOS_i386 2009/06/03', gccversion='',
gccosandvers=''
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=8
alignbytes=4, prototype=define
Linker and Libraries:
ld='/opt/SUNWspro/bin/cc', ldflags ='-L/opt/kenai/lib
-R/opt/kenai/lib -L/lib -L/usr/lib '
libpth=/opt/kenai/lib /opt/SUNWspro/prod/lib/ /lib /usr/lib
libs=-lsocket -lnsl -ldb -ldl -lm -lpthread -lc
perllibs=-lsocket -lnsl -ldl -lm -lpthread -lc
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='-KPIC', lddlflags='-G -L/opt/kenai/lib -R/opt/kenai/lib
-L/lib -L/usr/lib'
Characteristics of this binary (from libperl):
Compile-time options: MULTIPLICITY PERL_DONT_CREATE_GVSV
PERL_IMPLICIT_CONTEXT PERL_MALLOC_WRAP
PERL_PRESERVE_IVUV PERL_USE_SAFE_PUTENV
USE_ITHREADS
USE_LARGE_FILES USE_PERLIO USE_PERL_ATOF
USE_REENTRANT_API
Built under solaris
Compiled at Aug 18 2011 19:28:54
%ENV:
PERL_LWP_USE_HTTP_10="1"
@INC:
/opt/kenai/lib/perl5/site_perl/5.14.1/i86pc-solaris-thread-m ulti
/opt/kenai/lib/perl5/site_perl/5.14.1
/opt/kenai/lib/perl5/5.14.1/i86pc-solaris-thread-multi
/opt/kenai/lib/perl5/5.14.1
/opt/kenai/lib/perl5/site_perl
.
[root@kexdev03z1:/export/home/marcow/src/kenai-packages~subv ersion/mod_perl]
# ldd /opt/kenai/bin/perl
libsocket.so.1 => /lib/libsocket.so.1
libnsl.so.1 => /lib/libnsl.so.1
libdl.so.1 => /lib/libdl.so.1
libm.so.2 => /lib/libm.so.2
libpthread.so.1 => /lib/libpthread.so.1
libc.so.1 => /lib/libc.so.1
libmp.so.2 => /lib/libmp.so.2
libmd.so.1 => /lib/libmd.so.1
libscf.so.1 => /lib/libscf.so.1
libuutil.so.1 => /lib/libuutil.so.1
libgen.so.1 => /lib/libgen.so.1
[root@kexdev03z1:/export/home/marcow/src/kenai-packages~subv ersion/mod_perl]
# ldd mod_perl-2.0.5/src/modules/perl/mod_perl.so
libsocket.so.1 => /lib/libsocket.so.1
libnsl.so.1 => /lib/libnsl.so.1
libdl.so.1 => /lib/libdl.so.1
libm.so.2 => /lib/libm.so.2
libpthread.so.1 => /lib/libpthread.so.1
libc.so.1 => /lib/libc.so.1
libmp.so.2 => /lib/libmp.so.2
libmd.so.1 => /lib/libmd.so.1
libscf.so.1 => /lib/libscf.so.1
libuutil.so.1 => /lib/libuutil.so.1
libgen.so.1 => /lib/libgen.so.1
*** Packages of interest status:
Apache2 : -
Apache2::Request : -
CGI : 3.55
ExtUtils::MakeMaker: 6.57_05
LWP : 6.02
mod_perl : -
mod_perl2 : -
3. This is the core dump trace: (if you get a core dump):
[root@kexdev03z1:/export/home/marcow/src/kenai-packages~subv ersion/mod_perl]
# ~mw79288/dbx.x86 /opt/kenai/apache2/bin/httpd
/var/cores/httpd-worker.20302-1316656799
dbx.x86: warning: cannot find global initialization file: dbxrc
For information about new features see `help changes'
To remove this message, put `dbxenv suppress_startup_message 7.7' in
your .dbxrc
Reading httpd
core file header read successfully
Reading ld.so.1
Reading libm.so.2
Reading libaprutil-1.so.0.3.12
Reading libdb-4.6.so
Reading libresolv.so.2
Reading libexpat.so.1.5.2
Reading libiconv.so.2.4.0
Reading libapr-1.so.0.4.5
Reading libuuid.so.1
Reading libsendfile.so.1
Reading libsocket.so.1
Reading libnsl.so.1
Reading libpthread.so.1
Reading libc.so.1
Reading mod_mime.so
Reading mod_alias.so
Reading mod_perl.so
Reading libdl.so.1
Reading libscf.so.1
Reading libuutil.so.1
Reading libgen.so.1
Reading libmd.so.1
Reading libmp.so.2
t@1 (l@1) program terminated by signal SEGV (no mapping at the fault
address)
Current function is modperl_env_clear
100 HV *hv = ENVHV;
(dbx.x86) where
current thread: t@1
=>[1] modperl_env_clear(my_perl = 0x83ac218), line 100 in "modperl_env.c"
[2] modperl_boot(my_perl = 0x83ac218, data = (nil)), line 100 in
"mod_perl.c"
[3] Perl_leave_scope(my_perl = 0x83ac218, base = 0), line 952 in
"scope.c"
[4] Perl_pop_scope(my_perl = 0x83ac218), line 110 in "scope.c"
[5] S_parse_body(my_perl = 0x83ac218, env = (nil), xsinit =
0xfe664ad0 = &`mod_perl.so`mod_perl.c`modperl_xs_init(PerlInterpreter
*my_perl)), line 2218 in "perl.c"
[6] perl_parse(my_perl = 0x83ac218, xsinit = 0xfe664ad0 =
&`mod_perl.so`mod_perl.c`modperl_xs_init(PerlInterpreter *my_perl), argc
= 6, argv = 0x8455280, env = (nil)), line 1613 in "perl.c"
[7] modperl_startup(s = 0x80d0068, p = 0x80ca538), line 255 in
"mod_perl.c"
[8] modperl_startup(s = 0x80d0068, p = 0x80ca538), line 207 in
"mod_perl.c"
[9] modperl_init(base_server = 0x80d0068, p = 0x80ca538), line 458 in
"mod_perl.c"
[10] modperl_hook_init(pconf = 0x80ca538, plog = (nil), ptemp =
(nil), s = 0x80d0068), line 631 in "mod_perl.c"
[11] modperl_run(), line 645 in "mod_perl.c"
[12] modperl_cmd_load_module(parms = 0x80478f0, mconfig = 0x8111ef8,
arg = 0x83437c8 "TestCompat::apache_module"), line 666 in "modperl_cmd.c"
[13] ap_walk_config_sub(0x83437a8, 0x80478f0, 0x80fdd20, 0x39663763),
at 0x808508a
[14] ap_walk_config(0x8112378, 0x80478f0, 0x80fdd20, 0x83715ec), at
0x8085128
[15] ap_process_config_tree(0x80d0068, 0x8112378, 0x80ca538,
0x80fa5f8), at 0x8085e8b
[16] main(0x9, 0x80479cc, 0x80479f4, 0xfeffb7b4), at 0x807194d
(dbx.x86)
This report was generated by t/REPORT on Thu Sep 22 02:09:12 2011 GMT.
-------------8<---------- End Bug Report --------------8<----------