2008/2/12, Brock Noland <[EMAIL PROTECTED]>:
> Greetings,
>
> I hear there are admins using peruser and experiencing seg faults.
> Troubleshooting these is significantly easier if a core file exists.
> However, the current peruser patch does not implement the
> CoreDumpDirectory directive.
400 processors/vhosts over 40 Multiplexers
everything happens just after gracefull
Program terminated with signal 11, Segmentation fault.
#0 apr_socket_addr_get (sa=0x8315014, which=APR_LOCAL, sock=0x0) at
sockaddr.c:196
196 if (sock->local_interface_unknown || sock->local_port_unknown) {
(gdb) bt full
#0 apr_socket_addr_get (sa=0x8315014, which=APR_LOCAL, sock=0x0) at
sockaddr.c:196
No locals.
#1 0x080b74ec in core_create_conn (ptrans=0x8314fc8,
server=0x80ef1f0, csd=0x0, id=263, sbh=0x8315000, alloc=0x8316fd0) at
core.c:4477
rv = <value optimized out>
c = (conn_rec *) 0x8315008
#2 0x080abf5a in ap_run_create_connection (p=0x8314fc8,
server=0x80ef1f0, csd=0x0, conn_id=263, sbh=0x8315000,
alloc=0x8316fd0) at connection.c:40
n = 0
rv = (conn_rec *) 0x40
#3 0x0809e4fb in child_main (child_num_arg=<value optimized out>) at
peruser.c:993
lr_walk = <value optimized out>
ptrans = (apr_pool_t *) 0x8314fc8
allocator = (apr_allocator_t *) 0x82ffac0
status = <value optimized out>
i = <value optimized out>
lr = <value optimized out>
curr_pollfd = <value optimized out>
last_pollfd = 1
pollset = (apr_pollfd_t *) 0x8313028
sbh = (ap_sb_handle_t *) 0x8312ff8
rv = <value optimized out>
bucket_alloc = (apr_bucket_alloc_t *) 0x8316fd0
fd = 813
sock = (apr_socket_t *) 0x0
pod_sock = (apr_socket_t *) 0x82800b0
#4 0x0809ee4e in make_child (s=<value optimized out>, slot=0) at peruser.c:2069
pid = <value optimized out>
#5 0x0809f7c1 in ap_mpm_run (_pconf=0x80ea0a8, plog=0x8124190,
s=0x80ef1f0) at peruser.c:2122
status = 0
pid = {pid = -1, in = 0x80e4008, out = 0x8124190, err = 0x80e4238}
child_slot = <value optimized out>
exitwhy = APR_PROC_EXIT
processed_status = <value optimized out>
i = <value optimized out>
rv = <value optimized out>
one = 1
#6 0x080a61d3 in main (argc=1920169263, argv=0x636f6c2f) at main.c:636
c = 0 '\0'
configtestonly = 0
confname = 0x80d4706 "conf/httpd.conf"
def_server_root = 0x80d5377 "/usr/local/apache2_debug"
temp_error_log = 0x0
process = (process_rec *) 0x80e8120
server_conf = (server_rec *) 0x80ef1f0
pglobal = (apr_pool_t *) 0x80e80a0
pconf = (apr_pool_t *) 0x80ea0a8
plog = (apr_pool_t *) 0x8124190
ptemp = (apr_pool_t *) 0x8146200
pcommands = (apr_pool_t *) 0x80ec0b0
opt = (apr_getopt_t *) 0x80ec148
rv = <value optimized out>
optarg = 0xb7f10876 "OPENSSL_ia32cap"
log from peruser when I added checking for null socket in process_socket
thiese are all Multiplexers, sometimes after fiew gracefuls apache
gets unresponsive
and leaves these processes behind
[Wed Feb 13 15:05:50 2008] [warn] (peruser: pid=27374 uid=65534
child=0) child_main(): returned from process_socket()
[Wed Feb 13 15:05:50 2008] [warn] (peruser: pid=27374 uid=65534
child=0) child_main(): input available ... resetting socket.
[Wed Feb 13 15:05:50 2008] [warn] (peruser: pid=27374 uid=65534
child=0) child_main(): marked jmpbuffer
[Wed Feb 13 15:05:50 2008] [warn] (peruser: pid=27374 uid=65534
child=0) child_main(): calling process_socket()
[Wed Feb 13 15:05:50 2008] [warn] (peruser: pid=27374 uid=65534
child=0) process_socket(): Creating dummy connection to use the vhost
lookup api
[Wed Feb 13 15:05:50 2008] [warn] (peruser: pid=27374 uid=65534
child=0) process_socket(): process_socket() get null socket
...
--
Michal Grzedzicki
_______________________________________________
Peruser mailing list
[email protected]
http://www.telana.com/mailman/listinfo/peruser