SOURCES (LINUX_2_6): linux-2.6-nptl-signal-delivery-deadlock.patch...
pluto
pluto at pld-linux.org
Thu Aug 18 13:47:19 CEST 2005
Author: pluto Date: Thu Aug 18 11:47:19 2005 GMT
Module: SOURCES Tag: LINUX_2_6
---- Log message:
- deadlock fix.
---- Files affected:
SOURCES:
linux-2.6-nptl-signal-delivery-deadlock.patch (NONE -> 1.1.2.1) (NEW)
---- Diffs:
================================================================
Index: SOURCES/linux-2.6-nptl-signal-delivery-deadlock.patch
diff -u /dev/null SOURCES/linux-2.6-nptl-signal-delivery-deadlock.patch:1.1.2.1
--- /dev/null Thu Aug 18 13:47:19 2005
+++ SOURCES/linux-2.6-nptl-signal-delivery-deadlock.patch Thu Aug 18 13:47:14 2005
@@ -0,0 +1,26 @@
+ [PATCH] NPTL signal delivery deadlock fix
+
+ This bug is quite subtle and only happens in a very interesting
+ situation where a real-time threaded process is in the middle of a
+ coredump when someone whacks it with a SIGKILL. However, this deadlock
+ leaves the system pretty hosed and you have to reboot to recover.
+
+ Not good for real-time priority-preemption applications like our
+ telephony application, with 90+ real-time (SCHED_FIFO and SCHED_RR)
+ processes, many of them multi-threaded, interacting with each other for
+ high volume call processing.
+
+ Acked-by: Roland McGrath <roland at redhat.com>
+ Signed-off-by: Linus Torvalds <torvalds at osdl.org>
+
+--- a/kernel/signal.c
++++ b/kernel/signal.c
+@@ -692,7 +692,7 @@ static void handle_stop_signal(int sig,
+ {
+ struct task_struct *t;
+
+- if (p->flags & SIGNAL_GROUP_EXIT)
++ if (p->signal->flags & SIGNAL_GROUP_EXIT)
+ /*
+ * The process is in the middle of dying already.
+ */
================================================================
More information about the pld-cvs-commit
mailing list