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

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



Author: sthibaul-guest
Date: 2008-03-08 23:13:04 +0000 (Sat, 08 Mar 2008)
New Revision: 2858

Added:
   glibc-package/trunk/debian/patches/hurd-i386/cvs-blocked-exceptions.diff
   glibc-package/trunk/debian/patches/hurd-i386/cvs-df.diff
Removed:
   glibc-package/trunk/debian/patches/hurd-i386/submitted-blocked-exceptions.diff
   glibc-package/trunk/debian/patches/hurd-i386/submitted-df.diff
Modified:
   glibc-package/trunk/debian/changelog
   glibc-package/trunk/debian/patches/series
Log:
Roland committed the patch upstream


Modified: glibc-package/trunk/debian/changelog
===================================================================
--- glibc-package/trunk/debian/changelog	2008-03-08 17:13:50 UTC (rev 2857)
+++ glibc-package/trunk/debian/changelog	2008-03-08 23:13:04 UTC (rev 2858)
@@ -23,9 +23,9 @@
   * sysdeps/mips.mk, sysdeps/mipsel.mk: define TIMEOUTFACTOR.
 
   [ Samuel Thibault ]
-  * patches/hurd-i386/submitted-blocked-exceptions.diff: new patch to dump
+  * patches/hurd-i386/cvs-blocked-exceptions.diff: new patch to dump
     core when a blocked exception arises.
-  * patches/hurd-i386/submitted-df.diff: new patch to clear DF for signal
+  * patches/hurd-i386/cvs-df.diff: new patch to clear DF for signal
     handlers (Closes: #470021).
 
  -- Aurelien Jarno <aurel32@debian.org>  Thu, 06 Mar 2008 22:05:10 +0100

Added: glibc-package/trunk/debian/patches/hurd-i386/cvs-blocked-exceptions.diff
===================================================================
--- glibc-package/trunk/debian/patches/hurd-i386/cvs-blocked-exceptions.diff	                        (rev 0)
+++ glibc-package/trunk/debian/patches/hurd-i386/cvs-blocked-exceptions.diff	2008-03-08 23:13:04 UTC (rev 2858)
@@ -0,0 +1,35 @@
+Index: glibc/hurd/hurdsig.c
+===================================================================
+RCS file: /cvs/glibc/libc/hurd/hurdsig.c,v
+retrieving revision 1.159
+retrieving revision 1.160
+diff -u -p -r1.159 -r1.160
+--- glibc/hurd/hurdsig.c	21 Dec 2005 22:16:20 -0000	1.159
++++ glibc/hurd/hurdsig.c	8 Mar 2008 21:47:23 -0000	1.160
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 1991,92,1993,1994,1995,1996,1997,1998,1999,2000,2001,2002,2005
++/* Copyright (C) 1991,92,93,94,95,96,97,98,99,2000,2001,2002,2005,2008
+    	Free Software Foundation, Inc.
+    This file is part of the GNU C Library.
+ 
+@@ -743,6 +743,11 @@ _hurd_internal_post_signal (struct hurd_
+       break;
+ 
+     case ignore:
++      if (detail->exc)
++	/* Blocking or ignoring a machine exception is fatal.
++	   Otherwise we could just spin on the faulting instruction.  */
++	goto fatal;
++
+       /* Nobody cares about this signal.  If there was a call to resume
+ 	 above in SIGCONT processing and we've left a thread suspended,
+ 	 now's the time to set it going. */
+@@ -759,6 +764,8 @@ _hurd_internal_post_signal (struct hurd_
+ 	 Nothing to do but die; BSD gets SIGILL in this case.  */
+       detail->code = signo;	/* XXX ? */
+       signo = SIGILL;
++
++    fatal:
+       act = core;
+       /* FALLTHROUGH */
+ 

Added: glibc-package/trunk/debian/patches/hurd-i386/cvs-df.diff
===================================================================
--- glibc-package/trunk/debian/patches/hurd-i386/cvs-df.diff	                        (rev 0)
+++ glibc-package/trunk/debian/patches/hurd-i386/cvs-df.diff	2008-03-08 23:13:04 UTC (rev 2858)
@@ -0,0 +1,33 @@
+Index: glibc/sysdeps/mach/hurd/i386/trampoline.c
+===================================================================
+RCS file: /cvs/glibc/libc/sysdeps/mach/hurd/i386/trampoline.c,v
+retrieving revision 1.30
+retrieving revision 1.31
+diff -u -p -r1.30 -r1.31
+--- glibc/sysdeps/mach/hurd/i386/trampoline.c	21 Dec 2005 22:16:20 -0000	1.30
++++ glibc/sysdeps/mach/hurd/i386/trampoline.c	8 Mar 2008 21:39:00 -0000	1.31
+@@ -1,5 +1,5 @@
+ /* Set thread_state for sighandler, and sigcontext to recover.  i386 version.
+-   Copyright (C) 1994,1995,1996,1997,1998,1999,2005
++   Copyright (C) 1994,1995,1996,1997,1998,1999,2005,2008
+ 	Free Software Foundation, Inc.
+    This file is part of the GNU C Library.
+ 
+@@ -21,6 +21,7 @@
+ #include <hurd/signal.h>
+ #include <hurd/userlink.h>
+ #include <thread_state.h>
++#include <mach/machine/eflags.h>
+ #include <assert.h>
+ #include <errno.h>
+ #include "hurdfault.h"
+@@ -218,6 +219,9 @@ _hurd_setup_sighandler (struct hurd_sigs
+   /* We pass the handler function to the trampoline code in %edx.  */
+   state->basic.edx = (int) handler;
+ 
++  /* The x86 ABI says the DF bit is clear on entry to any function.  */
++  state->basic.efl &= ~EFL_DF;
++
+   return scp;
+ }
+ 

Deleted: glibc-package/trunk/debian/patches/hurd-i386/submitted-blocked-exceptions.diff
===================================================================
--- glibc-package/trunk/debian/patches/hurd-i386/submitted-blocked-exceptions.diff	2008-03-08 17:13:50 UTC (rev 2857)
+++ glibc-package/trunk/debian/patches/hurd-i386/submitted-blocked-exceptions.diff	2008-03-08 23:13:04 UTC (rev 2858)
@@ -1,14 +0,0 @@
---- glibc/hurd/hurdsig.c.orig	2008-03-01 17:45:09.000000000 +0000
-+++ glibc/hurd/hurdsig.c	2008-03-01 17:44:07.000000000 +0000
-@@ -715,6 +715,11 @@
-       act = term;
-     }
- 
-+  /* We should not let a kernel exception be blocked.  */
-+  /* Not required by POSIX ("undefined behavior"), but useful.  */
-+  if (detail->exc && __sigismember (&ss->blocked, signo))
-+    act = core;
-+  else
-   /* Handle receipt of a blocked signal, or any signal while stopped.  */
-   if (act != ignore &&		/* Signals ignored now are forgotten now.  */
-       __sigismember (&ss->blocked, signo) ||

Deleted: glibc-package/trunk/debian/patches/hurd-i386/submitted-df.diff
===================================================================
--- glibc-package/trunk/debian/patches/hurd-i386/submitted-df.diff	2008-03-08 17:13:50 UTC (rev 2857)
+++ glibc-package/trunk/debian/patches/hurd-i386/submitted-df.diff	2008-03-08 23:13:04 UTC (rev 2858)
@@ -1,22 +0,0 @@
-2008-03-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
-
-	* sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
-	Clear direction flag.
-
-Index: glibc/sysdeps/mach/hurd/i386/trampoline.c
-===================================================================
-RCS file: /cvs/glibc/libc/sysdeps/mach/hurd/i386/trampoline.c,v
-retrieving revision 1.30
-diff -u -p -r1.30 trampoline.c
---- glibc/sysdeps/mach/hurd/i386/trampoline.c	21 Dec 2005 22:16:20 -0000	1.30
-+++ glibc/sysdeps/mach/hurd/i386/trampoline.c	8 Mar 2008 00:07:38 -0000
-@@ -218,6 +218,9 @@ _hurd_setup_sighandler (struct hurd_sigs
-   /* We pass the handler function to the trampoline code in %edx.  */
-   state->basic.edx = (int) handler;
- 
-+  /* x86 ABI requires direction flag to be cleared */
-+  state->basic.efl &= ~0x400;
-+
-   return scp;
- }
- 

Modified: glibc-package/trunk/debian/patches/series
===================================================================
--- glibc-package/trunk/debian/patches/series	2008-03-08 17:13:50 UTC (rev 2857)
+++ glibc-package/trunk/debian/patches/series	2008-03-08 23:13:04 UTC (rev 2858)
@@ -91,8 +91,8 @@
 hurd-i386/cvs-O_CLOEXEC_fix.diff
 hurd-i386/submitted-extern_inline.diff -p0
 hurd-i386/cvs-epfnosupport.diff -p0
-hurd-i386/submitted-df.diff
-hurd-i386/submitted-blocked-exceptions.diff
+hurd-i386/cvs-df.diff
+hurd-i386/cvs-blocked-exceptions.diff
 
 i386/local-biarch.diff 
 i386/local-clone.diff -p0


Reply to: