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

r7013 - in glibc-package/trunk/debian: . patches patches/hurd-i386



Author: sthibault
Date: 2016-01-12 23:56:58 +0000 (Tue, 12 Jan 2016)
New Revision: 7013

Added:
   glibc-package/trunk/debian/patches/hurd-i386/cvs-O_DIRECTORY.diff
   glibc-package/trunk/debian/patches/hurd-i386/cvs-raise-longjump.diff
Modified:
   glibc-package/trunk/debian/changelog
   glibc-package/trunk/debian/patches/series
Log:
* patches/hurd-i386/cvs-raise-longjump.diff: New patch to fix longjump from
signal handler.  Closes: #800900.
* patches/hurd-i386/cvs-O_DIRECTORY.diff: New patch to fix O_DIRECTORY lookup
on trivial translators.


Modified: glibc-package/trunk/debian/changelog
===================================================================
--- glibc-package/trunk/debian/changelog	2016-01-12 09:36:54 UTC (rev 7012)
+++ glibc-package/trunk/debian/changelog	2016-01-12 23:56:58 UTC (rev 7013)
@@ -18,6 +18,10 @@
   [ Samuel Thibault ]
   * patches/hurd-i386/cvs-libpthread-sigstate.diff: New patch to fix spurious
     signal blocking leading to sigill.  Fixes rsyslog tests.
+  * patches/hurd-i386/cvs-raise-longjump.diff: New patch to fix longjump from
+    signal handler.  Closes: #800900.
+  * patches/hurd-i386/cvs-O_DIRECTORY.diff: New patch to fix O_DIRECTORY lookup
+    on trivial translators.
 
  -- Aurelien Jarno <aurel32@debian.org>  Fri, 25 Dec 2015 03:38:46 +0100
 

Added: glibc-package/trunk/debian/patches/hurd-i386/cvs-O_DIRECTORY.diff
===================================================================
--- glibc-package/trunk/debian/patches/hurd-i386/cvs-O_DIRECTORY.diff	                        (rev 0)
+++ glibc-package/trunk/debian/patches/hurd-i386/cvs-O_DIRECTORY.diff	2016-01-12 23:56:58 UTC (rev 7013)
@@ -0,0 +1,31 @@
+commit e42ce0f45ebf20b4c6f89da605cd62b1cd60a9df
+Author: Flavio Cruz <flaviocruz@gmail.com>
+Date:   Wed Jan 13 00:48:30 2016 +0100
+
+    Fix O_DIRECTORY lookup on trivial translators
+    
+    * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Do not remove
+    leading slash when `file_name' is "/".
+
+diff --git a/hurd/lookup-retry.c b/hurd/lookup-retry.c
+index ef256ac..aee2ba8 100644
+--- a/hurd/lookup-retry.c
++++ b/hurd/lookup-retry.c
+@@ -62,8 +62,15 @@ __hurd_file_name_lookup_retry (error_t (*use_init_port)
+ 
+   error_t lookup_op (file_t startdir)
+     {
+-      while (file_name[0] == '/')
+-	file_name++;
++      if (file_name[0] == '/' && file_name[1] != '\0')
++	{
++	  while (file_name[1] == '/')
++	    /* Remove double leading slash.  */
++	    file_name++;
++	  if (file_name[1] != '\0')
++	    /* Remove leading slash when we have more than the slash.  */
++	    file_name++;
++	}
+ 
+       return lookup_error ((*lookup) (startdir, file_name, flags, mode,
+ 				      &doretry, retryname, result));

Added: glibc-package/trunk/debian/patches/hurd-i386/cvs-raise-longjump.diff
===================================================================
--- glibc-package/trunk/debian/patches/hurd-i386/cvs-raise-longjump.diff	                        (rev 0)
+++ glibc-package/trunk/debian/patches/hurd-i386/cvs-raise-longjump.diff	2016-01-12 23:56:58 UTC (rev 7013)
@@ -0,0 +1,23 @@
+commit fb304035c41c7ee2afede51e5e8568974549ba5e
+Author: Samuel Thibault <samuel.thibault@ens-lyon.org>
+Date:   Wed Nov 25 01:09:13 2015 +0100
+
+    Fix RPC breakage when longjumping from signal handler
+    
+    	* hurd/sigunwind.c (_hurdsig_longjmp_from_handler): Destroy reply port
+    	of interrupted RPC instead of restoring it.
+
+diff --git a/hurd/sigunwind.c b/hurd/sigunwind.c
+index 3a62fb5..800bb30 100644
+--- a/hurd/sigunwind.c
++++ b/hurd/sigunwind.c
+@@ -50,7 +50,8 @@ _hurdsig_longjmp_from_handler (void *data, jmp_buf env, int val)
+ 	  *reply_port = MACH_PORT_DEAD;
+ 	  __mach_port_destroy (__mach_task_self (), port);
+ 	}
+-      *reply_port = scp->sc_reply_port;
++      if (scp->sc_reply_port)
++	__mach_port_destroy (__mach_task_self (), scp->sc_reply_port);
+     }
+ 
+   __spin_lock (&ss->lock);

Modified: glibc-package/trunk/debian/patches/series
===================================================================
--- glibc-package/trunk/debian/patches/series	2016-01-12 09:36:54 UTC (rev 7012)
+++ glibc-package/trunk/debian/patches/series	2016-01-12 23:56:58 UTC (rev 7013)
@@ -171,6 +171,8 @@
 hurd-i386/cvs-hidden.diff
 hurd-i386/cvs-libpthread-api.diff
 hurd-i386/cvs-libpthread-sigstate.diff
+hurd-i386/cvs-O_DIRECTORY.diff
+hurd-i386/cvs-raise-longjump.diff
 
 i386/local-biarch.diff
 i386/local-cmov.diff


Reply to: