perl-modperl mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Derck Floor" <derck.fl...@e-wise.nl>
Subject RE: ModPerl2 + Image::Magick
Date Mon, 15 Nov 2004 13:23:20 GMT

-------------8<---------- Start Bug Report ------------8<----------
1. Problem Description:

I have some problems with Image::Magick and modperl 2.
Apache 2 gives a segmentation fault if i preload Image::Magick in a
preload.pl.
Apache 2 continues working, but the httpdcore gets dumped.
Apache 2 and Image::Magick are working fine after the apache core gets
dumped.

2. Used Components and their Configuration:

*** mod_perl version 1.9914

*** using
/usr/local/lib/perl5/site_perl/5.8.4/mach/Apache2/Apache/BuildConfig.pm
*** Makefile.PL options:
  MP_APXS         => /usr/local/sbin/apxs
  MP_COMPAT_1X    => 1
  MP_GENERATE_XS  => 1
  MP_INST_APACHE2 => 1
  MP_LIBNAME      => mod_perl
  MP_USE_DSO      => 1
  MP_USE_STATIC   => 1


*** /usr/local/sbin/httpd -V
Server version: Apache/2.0.52
Server built:   Nov 15 2004 10:08:22
Server's Module Magic Number: 20020903:9
Architecture:   32-bit
Server compiled with....
 -D APACHE_MPM_DIR="server/mpm/prefork"
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_FLOCK_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D HTTPD_ROOT="/usr/local"
 -D SUEXEC_BIN="/usr/local/bin/suexec"
 -D DEFAULT_PIDLOG="/var/run/httpd.pid"
 -D DEFAULT_SCOREBOARD="/var/run/apache_runtime_status"
 -D DEFAULT_LOCKFILE="/var/run/accept.lock"
 -D DEFAULT_ERRORLOG="/var/log/httpd-error.log"
 -D AP_TYPES_CONFIG_FILE="etc/apache2/mime.types"
 -D SERVER_CONFIG_FILE="etc/apache2/httpd.conf"


*** /usr/local/bin/perl -V
Summary of my perl5 (revision 5 version 8 subversion 4) configuration:
  Platform:
    osname=freebsd, osvers=4.8-release, archname=i386-freebsd-64int
    uname='freebsd atlantis.e-wise.nl 4.8-release freebsd 4.8-release #0:
thu apr 3 10:53:38 gmt 2003
root@freebsd-stable.sentex.ca:usrobjusrsrcsysgeneric i386 '
    config_args='-sde -Dprefix=/usr/local
-Darchlib=/usr/local/lib/perl5/5.8.4/mach
-Dprivlib=/usr/local/lib/perl5/5.8.4
-Dman3dir=/usr/local/lib/perl5/5.8.4/perl/man/man3
-Dman1dir=/usr/local/man/man1 -Duse64bitint
-Dsitearch=/usr/local/lib/perl5/site_perl/5.8.4/mach
-Dsitelib=/usr/local/lib/perl5/site_perl/5.8.4 -Dscriptdir=/usr/local/bin
-Dsiteman3dir=/usr/local/lib/perl5/5.8.4/man/man3
-Dsiteman1dir=/usr/local/man/man1 -Ui_malloc -Ui_iconv -Uinstallusrbinperl
-Dcc=cc -Doptimize=-O -pipe  -Duseshrplib
-Dccflags=-DAPPLLIB_EXP="/usr/local/lib/perl5/5.8.4/BSDPAN" -Ud_dosuid
-Ui_gdbm -Dusethreads=n -Dusemymalloc=y'
    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=define use64bitall=undef uselongdouble=undef
    usemymalloc=y, bincompat5005=undef
  Compiler:
    cc='cc', ccflags ='-DAPPLLIB_EXP="/usr/local/lib/perl5/5.8.4/BSDPAN"
-DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing
-I/usr/local/include',
    optimize='-O -pipe ',
    cppflags='-DAPPLLIB_EXP="/usr/local/lib/perl5/5.8.4/BSDPAN"
-DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing
-I/usr/local/include'
    ccversion='', gccversion='2.95.4 20020320 [FreeBSD]', gccosandvers=''
    intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=12345678
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
    ivtype='long long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=8
    alignbytes=4, prototype=define
  Linker and Libraries:
    ld='cc', ldflags ='-Wl,-E  -L/usr/local/lib'
    libpth=/usr/lib /usr/local/lib
    libs=-lm -lcrypt -lutil -lc
    perllibs=-lm -lcrypt -lutil -lc
    libc=, so=so, useshrplib=true, libperl=libperl.so
    gnulibc_version=''
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='
-Wl,-R/usr/local/lib/perl5/5.8.4/mach/CORE'
    cccdlflags='-DPIC -fPIC', lddlflags='-shared  -L/usr/local/lib'


Characteristics of this binary (from libperl): 
  Compile-time options: USE_64_BIT_INT USE_LARGE_FILES
  Built under freebsd
  Compiled at Jul 13 2004 08:07:18
  %ENV:
    PERL_LWP_USE_HTTP_10="1"
  @INC:
    /usr/local/lib/perl5/site_perl/5.8.4/mach
    /usr/local/lib/perl5/site_perl/5.8.4
    /usr/local/lib/perl5/site_perl/5.8.0
    /usr/local/lib/perl5/site_perl/5.6.1
    /usr/local/lib/perl5/site_perl/5.005
    /usr/local/lib/perl5/site_perl
    /usr/local/lib/perl5/5.8.4/BSDPAN
    /usr/local/lib/perl5/5.8.4/mach
    /usr/local/lib/perl5/5.8.4
    .


3. This is the core dump trace: (if you get a core dump):

  [CORE TRACE COMES HERE]

This report was generated by -e on Mon Nov 15 11:26:51 2004 GMT.

-------------8<---------- End Bug Report --------------8<----------

If I run the test command there is no core dump because it only occurs when
I use preload.pl.

I did some backtraces with truss and gdb.
I don't know what piece of the backtrace you need, but it is a lot.
So here is a part of the backtrace. If you need something else please let me
know.

gettimeofday(0xbfbfbeb8,0x0)			 = 0 (0x0)
getpid()					 = 24305 (0x5ef1)
stat("Image::Magick",0xbfbfbe60)		 ERR#2 'No such file or
directory'
sigaction(SIGSYS,0xbfbfbe48,0xbfbfbe30)		 = 0 (0x0)
__getcwd(0xbfbfcef0,0x1000)			 = 0 (0x0)
sigaction(SIGSYS,0xbfbfbe30,0x0)		 = 0 (0x0)
stat("/usr/local/Image::Magick",0xbfbfbe60)	 ERR#2 'No such file or
directory'
sigprocmask(0x1,0xbfbfbe70,0x0)			 = 0 (0x0)
sigaction(SIGABRT,0xbfbfbe58,0xbfbfbe40)	 = 0 (0x0)
sigprocmask(0x2,0xbfbfbe70,0x0)			 = 0 (0x0)
sigprocmask(0x1,0xbfbfbe80,0x0)			 = 0 (0x0)
sigaction(SIGFPE,0xbfbfbe68,0xbfbfbe50)		 = 0 (0x0)
sigprocmask(0x2,0xbfbfbe80,0x0)			 = 0 (0x0)
sigprocmask(0x1,0xbfbfbe70,0x0)			 = 0 (0x0)
sigaction(SIGHUP,0xbfbfbe58,0xbfbfbe40)		 = 0 (0x0)
sigprocmask(0x2,0xbfbfbe70,0x0)			 = 0 (0x0)
sigprocmask(0x1,0xbfbfbe80,0x0)			 = 0 (0x0)
sigaction(SIGINT,0xbfbfbe68,0xbfbfbe50)		 = 0 (0x0)
sigprocmask(0x2,0xbfbfbe80,0x0)			 = 0 (0x0)
sigprocmask(0x1,0xbfbfbe70,0x0)			 = 0 (0x0)
sigaction(SIGQUIT,0xbfbfbe58,0xbfbfbe40)	 = 0 (0x0)
sigprocmask(0x2,0xbfbfbe70,0x0)			 = 0 (0x0)
sigprocmask(0x1,0xbfbfbe80,0x0)			 = 0 (0x0)
sigaction(SIGTERM,0xbfbfbe68,0xbfbfbe50)	 = 0 (0x0)
sigprocmask(0x2,0xbfbfbe80,0x0)			 = 0 (0x0)
sigprocmask(0x1,0xbfbfbe70,0x0)			 = 0 (0x0)
sigaction(SIGXCPU,0xbfbfbe58,0xbfbfbe40)	 = 0 (0x0)
sigprocmask(0x2,0xbfbfbe70,0x0)			 = 0 (0x0)
sigprocmask(0x1,0xbfbfbe80,0x0)			 = 0 (0x0)
sigaction(SIGXFSZ,0xbfbfbe68,0xbfbfbe50)	 = 0 (0x0)
sigprocmask(0x2,0xbfbfbe80,0x0)			 = 0 (0x0)
__sysctl(0xbfbfbea8,0x2,0x283fcbe0,0xbfbfbea4,0x0,0x0) = 0 (0x0)

break(0x8b73000)				 = 0 (0x0)
stat("/usr/local/lib/perl5/site_perl/5.8.4/mach/Apache2/Image/Magick.pmc",0x
bfbfddc0) ERR#2 'No such file or directory'
open("/usr/local/lib/perl5/site_perl/5.8.4/mach/Apache2/Image/Magick.pm",0x0
,0666) ERR#2 'No such file or directory'
stat("/usr/local/lib/perl5/site_perl/5.8.4/Apache2/Image/Magick.pmc",0xbfbfd
dc0) ERR#2 'No such file or directory'
open("/usr/local/lib/perl5/site_perl/5.8.4/Apache2/Image/Magick.pm",0x0,0666
) ERR#2 'No such file or directory'
stat("/usr/local/www/GLOBAL/lib/Image/Magick.pmc",0xbfbfddc0) ERR#2 'No such
file or directory'
open("/usr/local/www/GLOBAL/lib/Image/Magick.pm",0x0,0666) ERR#2 'No such
file or directory'
stat("/usr/local/lib/perl5/site_perl/5.8.4/mach/Image/Magick.pmc",0xbfbfddc0
) ERR#2 'No such file or directory'
open("/usr/local/lib/perl5/site_perl/5.8.4/mach/Image/Magick.pm",0x0,0666) =
23 (0x17)
fstat(23,0xbfbfb5a0)				 = 0 (0x0)
read(0x17,0x846a000,0x4000)			 = 3175 (0xc67)
close(23)					 = 0 (0x0)
stat("/usr/local/lib/perl5/site_perl/5.8.4/mach/Apache2/auto/Image/Magick",0
x285b65a0) ERR#2 'No such file or directory'
stat("/usr/local/lib/perl5/site_perl/5.8.4/Apache2/auto/Image/Magick",0x285b
65a0) ERR#2 'No such file or directory'
stat("/usr/local/www/GLOBAL/lib/auto/Image/Magick",0x285b65a0) ERR#2 'No
such file or directory'
stat("/usr/local/lib/perl5/site_perl/5.8.4/mach/auto/Image/Magick",0x285b65a
0) = 0 (0x0)
stat("/usr/local/lib/perl5/site_perl/5.8.4/mach/auto/Image/Magick/Magick.so"
,0x285b65a0) = 0 (0x0)
stat("/usr/local/lib/perl5/site_perl/5.8.4/mach/auto/Image/Magick/Magick.bs"
,0x285b65a0) = 0 (0x0)
sigprocmask(0x1,0x280b0ea0,0xbfbfdeb0)		 = 0 (0x0)
open("/usr/local/lib/perl5/site_perl/5.8.4/mach/auto/Image/Magick/Magick.so"
,0x0,0106) = 23 (0x17)
fstat(23,0xbfbfde60)				 = 0 (0x0)
read(0x17,0xbfbfce30,0x1000)			 = 4096 (0x1000)

Greetz.

Derck Floor

Note: Complete the rest of the details and post this bug report to
dev <at> perl.apache.org. To subscribe to the list send an empty
email to dev-subscribe@perl.apache.org.
-----Original Message-----
From: Stas Bekman [mailto:stas@stason.org] 
Sent: donderdag 11 november 2004 22:25
To: Derck Floor
Cc: modperl@perl.apache.org
Subject: Re: ModPerl2 + Image::Magick

Derck Floor wrote:
> Hello everybody,
> 
> I have some problems with Image::Magick and modperl 2.
> Apache 2 gives a segmentation fault if i preload Image::Magick in a
> preload.pl.
> Apache 2 continues working, but the httpdcore gets dumped.
> Apache 2 and Image::Magick are working fine after the apache core gets
> dumped.
> 
> The following line occurs very often in the httpd log:
> Tue Nov 02 12:36:44 2004] [notice] seg fault or similar nasty error
detected
> in the parent process

1) we need a proper report:
http://perl.apache.org/docs/2.0/user/help/help.html#Reporting_Problems

2) We need to see the backtrace to tell:
http://perl.apache.org/docs/2.0/devel/debug/c.html#Analyzing_Dumped_Core_Fil
es

-- 
__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:stas@stason.org http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com


-- 
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


Mime
View raw message