You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apr.apache.org by bo...@apache.org on 2009/06/26 07:51:11 UTC
svn commit: r788591 - in /apr/apr/branches/1.3.x: ./ CHANGES
locks/unix/proc_mutex.c
Author: bojan
Date: Fri Jun 26 05:51:10 2009
New Revision: 788591
URL: http://svn.apache.org/viewvc?rev=788591&view=rev
Log:
Backport r788588 from the trunk.
Avoid proc mutex failures by checking for both EAGAIN and EWOULDBLOCK.
Workaround for long standing Linux/hppa bug.
Patch by Stefan Fritsch <sf sfritsch.de>.
Modified:
apr/apr/branches/1.3.x/ (props changed)
apr/apr/branches/1.3.x/CHANGES
apr/apr/branches/1.3.x/locks/unix/proc_mutex.c
Propchange: apr/apr/branches/1.3.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Jun 26 05:51:10 2009
@@ -1,2 +1,2 @@
/apr/apr/branches/1.4.x:783970
-/apr/apr/trunk:712674,733052,742752,747990,748361,748371,748565,748988,749810,782838,783398,783958
+/apr/apr/trunk:712674,733052,742752,747990,748361,748371,748565,748988,749810,782838,783398,783958,788588
Modified: apr/apr/branches/1.3.x/CHANGES
URL: http://svn.apache.org/viewvc/apr/apr/branches/1.3.x/CHANGES?rev=788591&r1=788590&r2=788591&view=diff
==============================================================================
--- apr/apr/branches/1.3.x/CHANGES [utf-8] (original)
+++ apr/apr/branches/1.3.x/CHANGES [utf-8] Fri Jun 26 05:51:10 2009
@@ -1,6 +1,10 @@
-*- coding: utf-8 -*-
Changes for APR 1.3.6
+ *) On Linux/hppa flock() returns EAGAIN instead of EWOULDBLOCK. This
+ causes proc mutex failures.
+ [Stefan Fritsch <sf sfritsch.de>]
+
*) Set CLOEXEC flags where appropriate. Either use new O_CLOEXEC flag and
associated functions, such as dup3(), accept4(), epoll_create1() etc.,
or simply set CLOEXEC flag using fcntl(). PR 46425. [Stefan Fritsch
Modified: apr/apr/branches/1.3.x/locks/unix/proc_mutex.c
URL: http://svn.apache.org/viewvc/apr/apr/branches/1.3.x/locks/unix/proc_mutex.c?rev=788591&r1=788590&r2=788591&view=diff
==============================================================================
--- apr/apr/branches/1.3.x/locks/unix/proc_mutex.c (original)
+++ apr/apr/branches/1.3.x/locks/unix/proc_mutex.c Fri Jun 26 05:51:10 2009
@@ -683,7 +683,7 @@
rc = flock(mutex->interproc->filedes, LOCK_EX | LOCK_NB);
} while (rc < 0 && errno == EINTR);
if (rc < 0) {
- if (errno == EWOULDBLOCK) {
+ if (errno == EWOULDBLOCK || errno == EAGAIN) {
return APR_EBUSY;
}
return errno;