[mp2] test server cannot start as non-root user with worker mpm
[prev]
[thread]
[next]
[Date index for 2004/11/02]
-------------8<---------- Start Bug Report ------------8<----------
1. Problem Description:
When running 'make test' as a non-root user, apache fails to create the
default AcceptMutex. All tests fail, and the following is output to the
error_log:
[Tue Nov 02 17:16:22 2004] [emerg] (13)Permission denied: Couldn't
create accept lock
END in modperl_extra.pl, pid=3402
Attempt to free unreferenced scalar: SV 0xdf3062dc at
/opt/csw/share/perl/5.8.2/Test/Harness.pm line 31.
END in modperl_extra.pl, pid=3402
Attempt to free unreferenced scalar: SV 0xdf3062dc at
/opt/csw/share/perl/5.8.2/Test/Harness.pm line 31.
The default AcceptMutex for Apache 2.0.52 is 'fcntl'. Changing this to
a mutex type that does not require any filesystem permissions, like
'pthread',
allows the tests to start properly:
mod_perl-1.99_17/t/conf/httpd.conf:
<IfModule worker.c>
StartServers 1
MinSpareThreads 2
MaxSpareThreads 2
ThreadsPerChild 2
MaxClients 4
MaxRequestsPerChild 0
AcceptMutex pthread <--- add this
</IfModule>
2. Used Components and their Configuration:
*** mod_perl version 1.9917
*** using
/export/medusa/comand/csw/cpan/mod_perl2/work/i386.d/mod_perl-1.99_17/lib/Apache/BuildConfig.pm
*** Makefile.PL options:
MP_APR_CONFIG => /opt/csw/bin/apr-config
MP_APR_LIB => aprext
MP_APXS => /opt/csw/apache2/sbin/apxs
MP_COMPAT_1X => 1
MP_DEBUG => 1
MP_GENERATE_XS => 1
MP_INST_APACHE2 => 1
MP_LIBNAME => mod_perl
MP_PROMPT_DEFAULT => 1
MP_TRACE => 1
MP_USE_DSO => 1
*** /opt/csw/apache2/sbin/httpd -V
Server version: Apache/2.0.52
Server built: Oct 29 2004 15:08:47
Server's Module Magic Number: 20020903:9
Architecture: 32-bit
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_FCNTL_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D HTTPD_ROOT="/opt/csw/apache2"
-D SUEXEC_BIN="/opt/csw/apache2/sbin/suexec"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_ERRORLOG="logs/error_log"
-D AP_TYPES_CONFIG_FILE="etc/mime.types"
-D SERVER_CONFIG_FILE="etc/httpd.conf"
*** (apr|apu)-config linking info
-L/opt/csw/apache2/lib -lapr-0 -lsendfile -lrt -lm -lsocket -lnsl
-lresolv -lpthread -ldl
-L/opt/csw/apache2/lib -laprutil-0 -lldap -llber -lgdbm -ldb-4.1
-lexpat -liconv
*** /opt/csw/bin/perl -V
Summary of my perl5 (revision 5.0 version 8 subversion 2) configuration:
Platform:
osname=solaris, osvers=2.8, archname=i86pc-solaris-thread-multi
uname='sunos daedal 5.8 generic_117351-03 i86pc i386 i86pc '
config_args='-Dcc=cc -Dusethreads -Dcf_email=thomas@blastwave.org
-Dperladmin=root@localhost -Dlocincpth=/opt/csw/include
-Dloclibpth=/opt/csw/lib -Duselargefiles -Dprefix=/opt/csw
-Dprivlib=/opt/csw/share/perl/5.8.2 -Darchlib=/opt/csw/lib/perl/5.8.2
-Dvendorprefix=/opt/csw -Dvendorlib=/opt/csw/share/perl/csw
-Dvendorarch=/opt/csw/lib/perl/csw -Dsiteprefix=/usr
-Dsitelib=/opt/csw/share/perl/site_perl
-Dsitearch=/opt/csw/lib/perl/site_perl -Dman1dir=/opt/csw/share/man/man1
-Dman3dir=/opt/csw/share/man/man3 -Dsiteman1dir=/opt/csw/share/man/man1
-Dsiteman3dir=/opt/csw/share/man/man3 -Dman1ext=1 -Dman3ext=3perl -Uafs
-Ud_csh -Uusesfio -Uusenm -des'
hint=recommended, useposix=true, d_sigaction=define
usethreads=define use5005threads=undef 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='cc', ccflags ='-D_REENTRANT -I/opt/csw/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
optimize='-O',
cppflags='-D_REENTRANT -I/opt/csw/include'
ccversion='Sun C 5.5 Patch 112761-09 2004/06/08', 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='cc', ldflags =' -L/usr/lib -L/usr/ccs/lib
-L/opt/forte8/SUNWspro/prod/lib -L/opt/csw/lib '
libpth=/usr/lib /usr/ccs/lib /opt/forte8/SUNWspro/prod/lib
/opt/csw/lib
libs=-lsocket -lnsl -lgdbm -ldb -ldl -lm -lpthread -lc
perllibs=-lsocket -lnsl -ldl -lm -lpthread -lc
libc=, 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/usr/lib -L/usr/ccs/lib
-L/opt/forte8/SUNWspro/prod/lib -L/opt/csw/lib'
Characteristics of this binary (from libperl):
Compile-time options: MULTIPLICITY USE_ITHREADS USE_LARGE_FILES
PERL_IMPLICIT_CONTEXT
Built under solaris
Compiled at Aug 15 2004 06:32:18
%ENV:
PERL_LWP_USE_HTTP_10="1"
@INC:
/opt/csw/lib/perl/site_perl
/opt/csw/share/perl/site_perl
/opt/csw/share/perl/site_perl
/opt/csw/lib/perl/csw
/opt/csw/share/perl/csw
/opt/csw/share/perl/csw
/opt/csw/lib/perl/5.8.2
/opt/csw/share/perl/5.8.2
.
*** Packages of interest status:
Apache::Request: -
CGI : 3.00
LWP : 5.76
mod_perl : -
3. This is the core dump trace: (if you get a core dump):
[CORE TRACE COMES HERE]
This report was generated by t/REPORT on Tue Nov 2 22:31:15 2004 GMT.
-------------8<---------- End Bug Report --------------8<----------
Note: Complete the rest of the details and post this bug report to
modperl <at> perl.apache.org. To subscribe to the list send an empty
email to modperl-subscribe@xxxx.xxxxxx.xxx.
--
Cory Omand <Cory.Omand@xxx.xxx>
--
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html