mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] kupdated signal handling
@ 2003-10-07 18:33 Benjamin Herrenschmidt
  0 siblings, 0 replies; only message in thread
From: Benjamin Herrenschmidt @ 2003-10-07 18:33 UTC (permalink / raw)
  To: Marcelo Tosatti; +Cc: Linux Kernel list, Andrea Arcangeli

Here's the fix to the problem we have been discussing...

===== fs/buffer.c 1.80 vs edited =====
--- 1.80/fs/buffer.c	Sat Sep 13 20:09:44 2003
+++ edited/fs/buffer.c	Wed Oct  1 11:27:07 2003
@@ -3068,13 +3068,13 @@
 		remove_wait_queue(&kupdate_wait, &wait);
 		/* check for sigstop */
 		if (signal_pending(tsk)) {
-			int stopped = 0;
+			int sig, stopped = 0;
+			struct siginfo info;
+
 			spin_lock_irq(&tsk->sigmask_lock);
-			if (sigismember(&tsk->pending.signal, SIGSTOP)) {
-				sigdelset(&tsk->pending.signal, SIGSTOP);
+			sig = dequeue_signal(&current->blocked, &info);
+			if (sig == SIGSTOP)
 				stopped = 1;
-			}
-			recalc_sigpending(tsk);
 			spin_unlock_irq(&tsk->sigmask_lock);
 			if (stopped) {
 				tsk->state = TASK_STOPPED;



^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2003-10-07 18:34 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-10-07 18:33 [PATCH] kupdated signal handling Benjamin Herrenschmidt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®