Re: Apache crashing on mod_perl installation.

2001-12-12 Thread Titus Brown

- On Tue, 11 Dec 2001, Titus Brown wrote:
- 
-  Do you know how I can turn on debugging symbols so that gdb can give me
-  more info (about line number, etc.)?
-  
-  I've forced 'gcc' to always have the -g flag on, but that doesn't seem
-  to be enough for some reason...
- 
- The Guide is your friend:
- 
- http://perl.apache.org/guide/debug.html#gdb_says_there_are_no_debugging_

Ahh, thanks.

- Please keep the mod_perl Mailing List included in your posts, so that
- everyone feels the benefit.

Will do -- I had a nasty feeling the answer was in the FAQ, but I couldn't
find it ;(.

The core dump happens on the dPPDIR call in the beginning of the perl_handler
function in mod_perl.c (line 820 in the latest dist).  The line expands to:

#define dPPDIR \
   perl_dir_config *cld = (perl_dir_config *)get_module_config(r-per_dir_config, 
perl_module)

gdb claims that neither 'r' nor perl_module are NULL or otherwise evil, although
r-per_dir_config is NULL.  Any ideas?

thanks,
--t



Re: Apache crashing on mod_perl installation.

2001-12-12 Thread Titus Brown

- No, I lied.  I'd try recompiling (make clean in both directories, etc.)
- with no funny business first, it's easier than debugging...

Well, I ignored the source code investigation, and did as you suggested, after
reading that one could modify the args to apache's configure as follows:

--
perl Makefile.PL USE_APACI=1 APACI_ARGS=--without-execstrip 
--prefix=~/software/try2/ap-install
--

So, that made the software with my favorite parameters.  Once it was all
made, I just had to change the Group away from the default of #-1  everything
seems to have worked.

I'm still confused as to why the other method !$#@%# didn't work, but I
think my investigations will have to wait 'til I have a pressing need for
it ;).

Incidentally, I think the 'APACI_ARGS' should be added into the installation
instructions explicitly, in e.g. mod_perl-xxx/INSTALL.  Its first mention in
the perl.apache.org guide is 80% of the way down -- under the gdb symbols
answer!

cheers,
--titus



Apache crashing on mod_perl installation.

2001-12-10 Thread Titus Brown

Hi all,

I'm having a frustrating time with mod_perl...

Configuration:
-- apache 1.3.22
-- mod_perl 1.26

Static configuration  installation all goes fine, and when I run httpd
(w/o modification, off of a straight install) the child pids crash when
loading /.  (Loading /index.html works fine.  Perl files do not.)

The specific error messages is this:

[Mon Dec 10 00:46:01 2001] [notice] child pid 31524 exit signal Segmentation fault 
(11), possible coredump in /disk/u/t/software/try2/ap-install

When I do a gdb on the resulting core dump, I find that it's crashing in
perl_handler().

Any ideas?

thanks,
--titus



Re: Apache crashing on mod_perl installation.

2001-12-10 Thread Titus Brown

-  When I do a gdb on the resulting core dump, I find that it's crashing in
-  perl_handler().
-  
-  Any ideas?
- 
- See modperl/SUPPORT

OK,

apache 1.3.22
mod_perl 1.26
Output of 'perl -V' attached.

I configured Apache with:

% ./configure --prefix=~/software/try2/ap-install

then ran 'perl Makefile.PL' in the mod_perl directory.  It found the source
directory correctly, and I told it *not* to autobuild apache.

Inside mod_perl directory,

make
make install

w/o error.

I then returned to the apache directory, issued:

./configure --prefix=~/software/try2/ap-install 
--activate-module=src/modules/perl/libperl.a

modified src/Makefile to include the correct stuff:

EXTRA_CFLAGS1=`$(SRCDIR)/apaci`
EXTRA_LIBS=`perl -MExtUtils::Embed -e ldopts`
EXTRA_CFLAGS=$(EXTRA_CFLAGS1) `perl -MExtUtils::Embed -e ccopts`

did make  make install.

% bin/httpd -X

crashes on first connection attempt to 'localhost:8080/', although
'localhost:8080/index.html' works fine.  The error_log just says
that the child pid exited abruptly.

Error message from w/in GDB:

--

% gdb bin/httpd

(gdb) r -X
Starting program: /disk/u/t/software/try2/ap-install/bin/httpd -X

Program received signal SIGSEGV, Segmentation fault.
0x80642ed in perl_handler ()
(gdb)   where
#0  0x80642ed in perl_handler ()
#1  0x80acfe9 in ap_invoke_handler ()
#2  0x80c1e8f in ap_some_auth_required ()
#3  0x80c1efa in ap_process_request ()
#4  0x80b8df0 in ap_child_terminate ()
#5  0x80b8fb5 in ap_child_terminate ()
#6  0x80b9136 in ap_child_terminate ()
#7  0x80b97cd in ap_child_terminate ()
#8  0x80ba02c in main ()
#9  0x4006a9cb in __libc_start_main (main=0x80b9c98 main, argc=2,
argv=0xb854, init=0x8061d48 _init, fini=0x8154024 _fini,
rtld_fini=0x4000aea0 _dl_fini, stack_end=0xb84c)
at ../sysdeps/generic/libc-start.c:92
--

I've tried to compile with -g but for whatever reason the symbols don't seem
to be coming through.  Ergh.

Help?  People have had this error before, to judge from the mailing list
archives, but I haven't seen a useful solution yet.

cheers,
--titus


Summary of my perl5 (revision 5.0 version 6 subversion 1) configuration:
  Platform:
osname=linux, osvers=2.4.6, archname=i686-linux
uname='linux floating 2.4.6 #3 smp thu jul 19 18:10:41 pdt 2001 i686 unknown '
config_args=''
hint=recommended, useposix=true, d_sigaction=define
usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef
useperlio=undef d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=undef use64bitall=undef uselongdouble=undef
  Compiler:
cc='cc', ccflags ='-fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE 
-D_FILE_OFFSET_BITS=64',
optimize='-O2',
cppflags='-fno-strict-aliasing -I/usr/local/include'
ccversion='', gccversion='egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)', 
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, usemymalloc=n, prototype=define
  Linker and Libraries:
ld='cc', ldflags =' -L/usr/local/lib'
libpth=/usr/local/lib /lib /usr/lib
libs=-lnsl -lndbm -lgdbm -ldb -ldl -lm -lc -lposix -lcrypt -lutil
perllibs=-lnsl -ldl -lm -lc -lposix -lcrypt -lutil
libc=/lib/libc-2.1.3.so, so=so, useshrplib=false, libperl=libperl.a
  Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic'
cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib'


Characteristics of this binary (from libperl): 
  Compile-time options: USE_LARGE_FILES
  Built under linux
  Compiled at Oct 19 2001 17:22:15
  @INC:
/usr/local/lib/perl5/5.6.1/i686-linux
/usr/local/lib/perl5/5.6.1
/usr/local/lib/perl5/site_perl/5.6.1/i686-linux
/usr/local/lib/perl5/site_perl/5.6.1
/usr/local/lib/perl5/site_perl
.



Re: Apache crashing on mod_perl installation.

2001-12-10 Thread Titus Brown

-  EXTRA_CFLAGS1=`$(SRCDIR)/apaci`
-  EXTRA_LIBS=`perl -MExtUtils::Embed -e ldopts`
-  EXTRA_CFLAGS=$(EXTRA_CFLAGS1) `perl -MExtUtils::Embed -e ccopts`
- 
- H.  Have you tried building without all this messing about with
- the Makefile?

Bear in mind these are in the instructions for installation for mod_perl ;).

But no, I haven't, because I haven't figured out how to have it (mod_perl)
specify a different path in configuring apache, and I don't want it to
install in the default place.

-  did make  make install.
- 
- make install as root?

yep.

-  crashes on first connection attempt to 'localhost:8080/', although
-  'localhost:8080/index.html' works fine.
- [snip]
-  People have had this error before, to judge from the mailing list
- 
- Can you point me to examples?  I don't recall seeing anything quite
- like this before.

People have had problems with mod_perl and child pids core dumping, at least;

   http://www.mail-archive.com/modperl@apache.org/msg21703.html

is one of the (~6) messages I found dealing with black-box seg faults...

   http://aspn.activestate.com/ASPN/Mail/Message/modperl/784385

is another one, to which you responded, in fact ;).  I don't see any
followups from the original person tho.

cheers,
--titus