This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[PATCH]: Fix pause calcellation on sparc64*-linux
- From: David Miller <davem at davemloft dot net>
- To: jakub at redhat dot com
- Cc: drepper at redhat dot com, libc-alpha at sourceware dot org
- Date: Fri, 09 May 2008 01:52:05 -0700 (PDT)
- Subject: [PATCH]: Fix pause calcellation on sparc64*-linux
When using -fexceptions based cancellations, pause() does not
unwind into the cancellation handler correctly on sparc64*-linux.
This is because sparc64*-*-linux uses the C implementation of
pause() found under glibc/sysdeps/posix/pause.c
Therefore, we have to build both ptw-pause.c and ptw-sigsuspend.c
with -fexceptions so that we can fully unwind into the caller's
cancellation block.
This fixes nptl/tst-cancelx4 on sparc64*-linux as well as any
other test that required pause() cancellation to work with
-fexceptions
Please apply, thanks.
nptl/
2008-05-09 David S. Miller <davem@davemloft.net>
* sysdeps/unix/sysv/linux/sparc/sparc64/Makefile: New file.
---
.../sysdeps/unix/sysv/linux/sparc/sparc64/Makefile | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
create mode 100644 nptl/sysdeps/unix/sysv/linux/sparc/sparc64/Makefile
diff --git a/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/Makefile b/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/Makefile
new file mode 100644
index 0000000..1843833
--- /dev/null
+++ b/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/Makefile
@@ -0,0 +1,4 @@
+CFLAGS-ptw-pause.o += -fexceptions
+CFLAGS-ptw-pause.os += -fexceptions
+CFLAGS-ptw-sigsuspend.o += -fexceptions
+CFLAGS-ptw-sigsuspend.os += -fexceptions
--
1.5.5.1.57.g5909c