[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [issues] Regression cause by patch PR nptl/3270



On Sun, 10 May 2009, Aurelien Jarno wrote:

> Hi,
> 
> EGLIBC has a patch to fix PR nptl/3270, unfortunately, it breaks 
> libgnomevfs, causing iceweasel or epiphany to hang in certain 
> conditions. Here is the corresponding changelog:

I have applied this patch to trunk (and corresponding patches to 2.10, 
2.9, 2.8. 2.7 branches) to fix a problem with similar symptoms; please let 
us know if it fixes your bug.  There was a mistake in the course of 
adapting the original patch for EGLIBC 2.7 and later; some code the 
original patch moved instead ended up being duplicated in the version used 
for 2.7 and later (you can see both versions at 
<http://www.eglibc.org/archives/patches/msg00435.html>).

Index: nptl/nptl-init.c
===================================================================
--- nptl/nptl-init.c	(revision 8584)
+++ nptl/nptl-init.c	(working copy)
@@ -240,9 +240,6 @@
   INTERNAL_SYSCALL_NCS (__xidcmd->syscall_no, err, 3, __xidcmd->id[0],
 			__xidcmd->id[1], __xidcmd->id[2]);
 
-  if (atomic_decrement_val (&__xidcmd->cntr) == 0)
-    lll_futex_wake (&__xidcmd->cntr, 1, LLL_PRIVATE);
-
   /* Reset the SETXID flag.  */
   struct pthread *self = THREAD_SELF;
   int flags, newval;
Index: ChangeLog.eglibc
===================================================================
--- ChangeLog.eglibc	(revision 8584)
+++ ChangeLog.eglibc	(working copy)
@@ -1,3 +1,8 @@
+2009-06-23  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
+
+	* nptl/nptl-init.c (sighandler_setxid): Remove duplicate decrement
+	of __xidcmd->cntr.
+
 2009-06-01  Joseph Myers  <joseph@xxxxxxxxxxxxxxxx>
 
 	* nptl/nptl-init.c: Restore local changes lost in upstream rename.

-- 
Joseph S. Myers
joseph@xxxxxxxxxxxxxxxx