You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@httpd.apache.org by Ted Packwood <ma...@cray.com> on 2002/05/10 02:07:26 UTC

enable-mods-shared=most creates unusable httpd binary

Installing on solaris 5.8 as root, apache 2.0.36 will give me 
a perfectly fineworking httpd binary with the following configure 
options:

./configure --prefix=/var/tmp/webstuff --enable-ssl
--with-ssl=/sw/gen/sparc-sun-solaris2.8/openssl/0.9.6c --enable-so --enable-dav
--enable-info=shared --enable-auth-digest --with-mpm=worker

I removed the entire httpd-2.0.36 directory and tar -xvf'ed the
original apache tarball, then did this.

./configure --prefix=/var/tmp/webstuff --enable-ssl
--with-ssl=/sw/gen/sparc-sun-solaris2.8/openssl/0.9.6c --enable-so --enable-dav
--enable-info=shared --enable-auth-digest --with-mpm=worker
--enable-mods-shared=most

(ie. the only thing I added was --enable-mods-shared=most, in fact the
same problem occurs with --enable-mods-shared=all)

This produces an httpd binary which:
1) apachectl configtest   gives Syntax OK
2) apachectl start        seems to start ok
3) ps -ef | grep http     shows no running httpd processes
4) the access_log and error_log have no entries (both are zero length)
5) Nothing useful in /var/adm/messages

Can anyone tell me why?
Thanks!
Ted

Path information follows (I'm not sure why it would matter, I didn't
change anything between builds.  Same machine, same OS, same 

echo $PATH
/sw/gen/sparc-sun-solaris2.8/fileutils/4.1/bin:/sw/gen/sparc-sun-solaris2.8/bison/1.33/bin:/sw/gen/s
parc-sun-solaris2.8/flex/2.5.4a/bin:/sw/gen/sparc-sun-solaris2.8/openssl/0.9.6c/bin:/sw/gen/sparc-su
n-solaris2.8/db/4.0.14/bin:/sw/gen/sparc-sun-solaris2.8/exmh/2.5/bin:/sw/gen/sparc-sun-solaris2.8/me
tamail/2.7/bin:/sw/gen/sparc-sun-solaris2.8/tcltk/8.3.4/bin:/sw/gen/sparc-sun-solaris2.8/nmh/1.0.4/b
in:/sw/gen/sparc-sun-solaris2.8/cvs/1.11/bin:/sw/pd/kerberos5/1.2.3/bin:/sw/gen/sparc-sun-solaris2.8
/gmake/3.79.1/bin:/sw/gen/sparc-sun-solaris2.8/gcc/3.0.4/bin:/sw/gen/sparc-sun-solaris2.8/emacs/21.2
/bin:/sw/gen/sparc-sun-solaris2.8/a2ps/4.13b/bin:/sw/gen/sparc-sun-solaris2.8/gnupg/1.0.6/bin:/usr/o
penwin/bin:/usr/bin:/sbin:/bin:/usr/ccs/bin:/usr/sbin:/usr/ucb:/opt/local/bin:/sw/modules/bin:/opt/S
UNWspro/bin:/opt/SUNWspro/iMPact2.0/bin:/opt/SUNWguide/bin:/opt/X11R5/bin:/sw/adm/bin:/sw/adm/bin/Su
nOS:/opt/adm/bin:/opt/packages/hpnp/bin:/sw/com/bin:/sw/pd/conserver/7.1.4/bin:/usr/local/bin:/usr/local/scripts

env | grep LD
LD_LIBRARY_PATH=
LD_RUN_PATH=/sw/gen/sparc-sun-solaris2.8/gcc/3.0.4/lib
LDFLAGS=-R/sw/gen/sparc-sun-solaris2.8/gcc/3.0.4/lib

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org


Re: enable-mods-shared=most creates unusable httpd binary

Posted by Ted Packwood <ma...@cray.com>.
Joshua Slive wrote:
> 
> Ted Packwood wrote:
> 
> > ./configure --prefix=/var/tmp/webstuff --enable-ssl
> > --with-ssl=/sw/gen/sparc-sun-solaris2.8/openssl/0.9.6c --enable-so --enable-dav
> > --enable-info=shared --enable-auth-digest --with-mpm=worker
> > --enable-mods-shared=most
> >
> > (ie. the only thing I added was --enable-mods-shared=most, in fact the
> > same problem occurs with --enable-mods-shared=all)
> >
> > This produces an httpd binary which:
> > 1) apachectl configtest   gives Syntax OK
> > 2) apachectl start        seems to start ok
> > 3) ps -ef | grep http     shows no running httpd processes
> > 4) the access_log and error_log have no entries (both are zero length)
> > 5) Nothing useful in /var/adm/messages
> 
> 1. Try running httpd directly.

Same result.

Here's what gdb gives:
(gdb) run -X -d /var/tmp/webstuff
Starting program: /var/tmp/webstuff/bin/httpd -X -d /var/tmp/webstuff
[New LWP 1]
[New LWP 2]
[New LWP 3]
[New LWP 4]

Program received signal SIGSEGV, Segmentation fault.
0xfefb1a34 in ?? ()
(gdb) where
#0  0xfefb1a34 in ?? ()
#1  0xff31c444 in ?? ()
#2  0xff32ad4c in ?? ()
#3  0xfee720a4 in ?? ()
#4  0x0002c434 in ap_run_post_config (pconf=0x72ce0, plog=0x9cd88,
ptemp=0xf0df0, s=0x74a30)
    at config.c:127
#5  0x00030f50 in main (argc=4, argv=0xffbef09c) at main.c:621

> 2. Try "strace"ing httpd to see where it is going.

Here's the last bunch of lines from my truss output file.

2254:   munmap(0xFEEC0000, 8192)                        = 0
2254:   read(5, " " / v a r / t m p / w e".., 4096)     = 4096
2254:   read(5, "   n o t   s p e c i f y".., 4096)     = 4096
2254:   read(5, " n t .\n #   E x a m p l".., 4096)     = 4096
2254:   read(5, " n g l i s h   ( e n )  ".., 4096)     = 4096
2254:   read(5, " ( s e e   b e l o w )\n".., 4096)     = 4096
2254:   read(5, " r M a t c h   " M i c r".., 4096)     = 2749
2254:   read(5, 0x000EF3B8, 4096)                       = 0
2254:   close(5)                                        = 0
2254:   chdir("/")                                      = 0
2254:   fork1()                                         = 2255
2255:   fork1()         (returning as child ...)        = 2254
2255:   getpid()                                        = 2255 [2254]
2255:   munmap(0xFEF40000, 16384)                       = 0
2255:   munmap(0xFEF50000, 24576)                       = 0
2255:   munmap(0xFEB0E000, 1056768)                     = 0
2255:   munmap(0xFEA0C000, 1056768)                     = 0
2255:   munmap(0xFE90A000, 1056768)                     = 0
2255:   munmap(0xFE808000, 1056768)                     = 0
2255:   munmap(0xFE706000, 1056768)                     = 0
2255:   munmap(0xFE604000, 1056768)                     = 0
2255:   munmap(0xFE502000, 1056768)                     = 0
2255:   munmap(0xFE400000, 1056768)                     = 0
2255:   mmap(0x00000000, 8454144, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_NORESERVE|MAP_ANON, 
-1, 0) = 0xFD800000
2255:   mprotect(0xFD800000, 8192, PROT_NONE)           = 0
2255:   mprotect(0xFD902000, 8192, PROT_NONE)           = 0
2255:   mprotect(0xFDA04000, 8192, PROT_NONE)           = 0
2255:   mprotect(0xFDB06000, 8192, PROT_NONE)           = 0
2255:   mprotect(0xFDC08000, 8192, PROT_NONE)           = 0
2255:   mprotect(0xFDD0A000, 8192, PROT_NONE)           = 0
2255:   mprotect(0xFDE0C000, 8192, PROT_NONE)           = 0
2255:   mprotect(0xFDF0E000, 8192, PROT_NONE)           = 0
2255:   lwp_create(0xFFBEF878, __LWP_ASLWP, 0xFE00FDB8) = 2
2255:   lwp_create()    (returning as new lwp ...)      = 0
2255:   door_create(0xFEF76CAC, 0x00000000, 0x00000002) = 5
2255:   lwp_schedctl(SC_STATE|SC_BLOCK, 5, 0xFFBEFA7C)  = 0
2255:   door_info(5, 0xFEF94A48)                        = 0
2255:   mmap(0x00000000, 24576, PROT_READ|PROT_WRITE|PROT_EXEC,
MAP_PRIVATE|MAP_NORESERVE|MAP_ANON, -1
, 0) = 0xFEF50000
2255:   mprotect(0xFEF50000, 8192, PROT_NONE)           = 0
2255:   lwp_create(0xFFBEF860, LWP_DETACHED|LWP_SUSPENDED, 0xFEF55DB8) = 3
2255:   lwp_create()    (returning as new lwp ...)      = 0
2255:   lwp_continue(3)                                 = 0
2255:   lwp_schedctl(SC_STATE|SC_BLOCK, -1, 0xFEF55CAC) = 0
2255:   lwp_schedctl(SC_DOOR, 0, 0x00000000)            Err#22 EINVAL
2255:   close(5)                                        = 0
2255:   lwp_cond_signal(0xFEF95550)                     = 0
2255:   lwp_cond_wait(0xFEF95550, 0xFEF95560, 0xFEF8EDB8) = 0
2255:   lwp_mutex_wakeup(0xFEF95560)                    = 0
2255:   lwp_mutex_lock(0xFEF95560)                      = 0
2255:   lwp_self()                                      = 3
2255:   setsid()                                        = 2255
2255:   llseek(0, 0, SEEK_CUR)                          = 1369
2255:   close(0)                                        = 0
2255:   open("/dev/null", O_RDONLY)                     = 0
2255:   close(1)                                        = 0
2255:   open("/dev/null", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 1
2255:   close(2)                                        = 0
2255:   open("/dev/null", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 2
2255:   getpid()                                        = 2255 [2254]
2255:   stat("/var/tmp/webstuff/bin/suexec", 0xFFBEFA50) Err#2 ENOENT
2255:   stat("/var/tmp/webstuff", 0xFFBEF8D0)           = 0
2255:   door_info(4, 0xFFBEF500)                        = 0
2255:   door_call(4, 0xFFBEF4E8)                        = 0
2255:   door_info(4, 0xFFBED900)                        = 0
2255:   door_call(4, 0xFFBED8E8)                        = 0
2255:   stat("/var/tmp/webstuff/htdocs", 0xFFBEF8C8)    = 0
2255:   uname(0xFFBEF188)                               = 1
2255:   door_info(4, 0xFFBED4C0)                        = 0
2255:   door_call(4, 0xFFBED4A8)                        = 0
2255:   close(7)                                        = 0
2255:   pipe()                                          = 5 [6]
2255:   open("/var/tmp/webstuff/logs/error_log", O_RDWR|O_APPEND|O_CREAT, 0666)
= 7
2255:   fcntl(7, F_DUP2FD, 0x00000002)                  = 2
2255:   open("/var/tmp/webstuff/logs/access_log", O_WRONLY|O_APPEND|O_CREAT,
0666) = 8
2255:       Incurred fault #6, FLTBOUNDS  %pc = 0xFEFB1A34
2255:         siginfo: SIGSEGV SEGV_MAPERR addr=0xFEE95A80
2255:       Received signal #11, SIGSEGV [default]
2255:         siginfo: SIGSEGV SEGV_MAPERR addr=0xFEE95A80
2254:   lwp_cond_wait(0xFEF95550, 0xFEF95560, 0xFEF8EDB8) = 0
2254:   lwp_mutex_wakeup(0xFEF95560)                    = 0
2254:   lwp_mutex_lock(0xFEF95560)                      = 0
2254:   llseek(0, 0, SEEK_CUR)                          = 1369
2254:   _exit(0)
2255:           *** process killed ***

> 
> 3. See: http://httpd.apache.org/dev/debugging.html
> 
> Joshua.
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
> For additional commands, e-mail: users-help@httpd.apache.org

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org


Re: enable-mods-shared=most creates unusable httpd binary

Posted by Joshua Slive <jo...@slive.ca>.
Ted Packwood wrote:

> ./configure --prefix=/var/tmp/webstuff --enable-ssl
> --with-ssl=/sw/gen/sparc-sun-solaris2.8/openssl/0.9.6c --enable-so --enable-dav
> --enable-info=shared --enable-auth-digest --with-mpm=worker
> --enable-mods-shared=most
> 
> (ie. the only thing I added was --enable-mods-shared=most, in fact the
> same problem occurs with --enable-mods-shared=all)
> 
> This produces an httpd binary which:
> 1) apachectl configtest   gives Syntax OK
> 2) apachectl start        seems to start ok
> 3) ps -ef | grep http     shows no running httpd processes
> 4) the access_log and error_log have no entries (both are zero length)
> 5) Nothing useful in /var/adm/messages

1. Try running httpd directly.

2. Try "strace"ing httpd to see where it is going.

3. See: http://httpd.apache.org/dev/debugging.html

Joshua.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org