pkgsrc-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
2009Q4: apache22 (devel/apr) bug on solaris X86 32Bit
Hi,
when I was running apache22 with mod_proxy or mod_jk in conjunction with
tomcat the server seg faulted, and the following messages appeared in
the error log
[Wed Feb 24 10:53:37 2010] [notice] child pid 27462 exit signal Segmentation
fault (11)
[Wed Feb 24 10:53:37 2010] [error] (11)Resource temporarily unavailable:
apr_pollset_poll: (listen)
[Wed Feb 24 10:53:38 2010] [error] (11)Resource temporarily unavailable:
apr_pollset_poll: (listen)
[Wed Feb 24 10:53:38 2010] [notice] child pid 27482 exit signal Segmentation
fault (11)
[Wed Feb 24 10:53:38 2010] [notice] child pid 27475 exit signal Segmentation
fault (11)
and the server did not respond in a decent time.
There seems to be a bug in apr's port_getn or the underlaying solaris kernel
function, as mentioned here:
https://issues.apache.org/bugzilla/show_bug.cgi?id=48029
An appropriate patch is offered there, too:
http://svn.apache.org/viewvc/apr/apr/branches/1.3.x/poll/unix/port.c?r1=807269&r2=829803
I added the patch to devel/apr as devel/apr/patches/patch-aa
$NetBSD$
--- poll/unix/port.c.orig 2009-08-24 15:05:59.000000000 +0000
+++ poll/unix/port.c
@@ -101,8 +101,11 @@ static apr_status_t call_port_getn(int p
}
ret = port_getn(port, list, max, nget, tvptr);
+ /* Note: 32-bit port_getn() on Solaris 10 x86 returns large negative
+ * values instead of 0 when returning immediately.
+ */
- if (ret < 0) {
+ if (ret == -1) {
rv = apr_get_netos_error();
switch(rv) {
br
--
ïHarald Strack, Dipl.Inf.(FH)
IT Development
ssystems
c/o todo GmbH
Alt-Moabit 60a
10555 Berlin
Tel: +49 30 726 192 0
Fax: +49 30 726 192 192
http://www.ssystems.de
Home |
Main Index |
Thread Index |
Old Index