Hello

I got next segfault, backtrace is here:

(gdb) bt full
#0 apr_allocator_destroy (allocator=0x80575e980) at memory/unix/apr_pools.c:133
        node = (apr_memnode_t *) 0x80000006f
#1  0x000000000044ded0 in just_die (sig=Variable "sig" is not available.
) at peruser.c:578
No locals.
#2 <signal handler called>
No symbol table info available.
#3  0x000000080150d89c in flock () from /lib/libc.so.7
No symbol table info available.
#4 0x0000000801144ac5 in proc_mutex_flock_acquire (mutex=0x80f5cb0a0) at locks/unix/proc_mutex.c:697
        rc = Variable "rc" is not available.
(gdb) where
#0 apr_allocator_destroy (allocator=0x80575e980) at memory/unix/apr_pools.c:133
#1  0x000000000044ded0 in just_die (sig=Variable "sig" is not available.
) at peruser.c:578
#2 <signal handler called>
#3  0x000000080150d89c in flock () from /lib/libc.so.7
#4 0x0000000801144ac5 in proc_mutex_flock_acquire (mutex=0x80f5cb0a0) at locks/unix/proc_mutex.c:697 #5 0x000000000044bfa5 in child_main (child_num_arg=Variable "child_num_arg" is not available.
) at peruser.c:624
#6 0x000000000044c704 in make_child (s=0x80181a868, slot=2) at peruser.c:2570 #7 0x000000000044cdc3 in ap_mpm_run (_pconf=Variable "_pconf" is not available.
) at peruser.c:2687
#8  0x000000000042440a in main (argc=1, argv=0x7fffffffebc0) at main.c:739

After graceful restart apache (after rotate logs) I got errors "long lost child came home". I have to do apache restart for repear it.

[Sat Jan 22 00:00:01 2011] [notice] Graceful restart requested, doing restart [Sat Jan 22 00:00:01 2011] [notice] SIGUSR1 received. Doing graceful restart [Sat Jan 22 00:00:01 2011] [warn] (22)Invalid argument: Failed to enable the 'httpready' Accept Filter [Sat Jan 22 00:00:02 2011] [notice] Digest: generating secret for digest authentication ...
[Sat Jan 22 00:00:02 2011] [notice] Digest: done
[Sat Jan 22 00:00:02 2011] [notice] Apache/2.2.17 (FreeBSD) DAV/2 PHP/5.3.5 with Suhosin-Patch configured -- resuming normal operations [Sat Jan 22 00:00:02 2011] [notice] child pid 74584 exit signal Segmentation fault (11), possible coredump in /tmp
[Sat Jan 22 00:07:46 2011] [warn] long lost child came home! (pid 33262)
[Sat Jan 22 00:13:30 2011] [warn] long lost child came home! (pid 33760)
[Sat Jan 22 02:27:02 2011] [warn] long lost child came home! (pid 42969)
[Sat Jan 22 02:54:55 2011] [warn] long lost child came home! (pid 44227)
[Sat Jan 22 03:19:21 2011] [warn] long lost child came home! (pid 46304)
[Sat Jan 22 04:21:49 2011] [warn] long lost child came home! (pid 50798)
[Sat Jan 22 05:26:12 2011] [warn] long lost child came home! (pid 54899)


Best regards
Michal Kumzak


Dne 19.1.2011 22:47, Marcelo Coelho napsal(a):
Hello!

Peruser patch (v15) - FreeBSD

Patch from RC2:
http://opensource.mco2.net/download/apache/peruser/peruser-rc2-to-rc3-v15-freebsd.patch

Full patch from vanilla Apache 2.2.17:
http://opensource.mco2.net/download/apache/peruser/peruser-rc3-full-v15-freebsd.patch

Important: this patch works only with FreeBSD because cpu_usage.c uses FreeBSD 
KVM Library to control CPU use. This patch will not work on Linux (I guess).

There is a new parameter MaxCPUUsage, to control CPU use by each processor. It 
works like Linux cpulimit utility: if processor CPU use is greater than 
MaxCPUUsage, sends a SIGSTOP, if lower, sends a SIGCONT.

MaxCPUUsage defaults 0, wich means unlimited.

Changes (from RC2):

* (v15) Feature: /server-status with more details (CPU usage of each processor 
and each ServerEnvironment).
* (v15) Feature: New configuration MaxCPUUsage
* (v15) Bug fix: some segfaults fixed.
* (v14) Bug fix: multiplexer segfault when passing big requests to processors 
(URI with ~8192 bytes and big Referer header)
* (v14) Performance: faster idle server maintenance
* (v14) Clean-up: removed .orig files
* (v13) Code more "APR-ized"
* (v13) Bug fix: apachectl graceful works, even under high load.
* (v12) Not released to public
* (v11) Not released to public
* (v10) Bug fixed: fixed some segfaults
* (v10) Bug fixed: work around to a flaw in apr-util (as PR 43857)
* (v9) Not released to public
* (v8) Bug fixed: apachectl graceful now is more stable, like RC2 version
* (v8) Bug fixed: fixed some segfaults (thank you Dave Steinberg for sending 
your core dumps)
* (v8) Bug fixed: server dies with infinite loop script, reported by Taavi 
Sannik
* (v8) Bug fixed: "long lost child" error, reported by Taavi Sannik
* (v8) Performance: update_all_counters() rewritten without malloc() and free()
* (v7) Bug fixed: multiplexers now can clone a processor child if all workers 
are busy.
* (v6) Bug fixed: apachectl graceful now working properly, without "long lost 
child" errors
* (v5) Not released to public
* (v4) Code cleanup
* (v4) Performance: childs are started in ~25ms, 40 times faster than in RC2 
(~1000ms)
* (v4) Bug fixed: now checking if total_processors is 1 (first access) to start 
StartProcessors
* (v3) Performance: new child type (CHILD_TYPE_RESERVED) to avoid collision (2 
childs trying to get the same free slot)
* (v3) Bug fixed: fixed a bug in RC2, wait_timeout was always 0, never sleeping 
to wait for new workers.
* (v2) Performance: StartProcessors, new configuration directive to control the 
number of child processors per vhost at startup
* (v2) Performance: childs are started in ~50ms, 20 times faster than in RC2 
(~1000ms)
* (v1) Performance: faster to lookup for free slots (this is important on busy 
servers, with many virtual hosts)
* (v1) Performance: faster to count processors, one single loop counts all 
processors
* (v1) Bug fixed: bug when MinSpareProcessors is set to 0 (now all workers 
processes are killed when idle_timeout is reached)
* (v1) Bug fixed: Free-up slots when a WORKER or PROCESSOR unexpectedly dies


Regards,

--
Marcelo Coelho
marcelo at mco2.com.br

_______________________________________________
Peruser mailing list
[email protected]
http://www.telana.com/mailman/listinfo/peruser

_______________________________________________
Peruser mailing list
[email protected]
http://www.telana.com/mailman/listinfo/peruser

Reply via email to