[PATCH] Fix i386 signal handling of NODEFER, should not affect sa_mask (was: Signal handling possibly wrong)

[PATCH] Fix i386 signal handling of NODEFER, should not affect sa_mask (was: Signal handling possibly wrong)

Post by Steven Ros » Thu, 11 Aug 2005 06:10:15



Hmm, I think you want this patch. You still need to check the return of
setting up the frames.

-- Steve

Signed-off-by: Steven Rostedt < XXXX@XXXXX.COM >

--- linux-2.6.13-rc6-git1/arch/i386/kernel/signal.c.orig 2005-08-09 16:54:36.000000000 -0400
+++ linux-2.6.13-rc6-git1/arch/i386/kernel/signal.c 2005-08-09 16:55:24.000000000 -0400
@@ -577,10 +577,11 @@ handle_signal(unsigned long sig, siginfo
else
ret = setup_frame(sig, ka, oldset, regs);

- if (ret && !(ka->sa.sa_flags & SA_NODEFER)) {
+ if (ret) {
spin_lock_irq(¤t->sighand->siglock);
sigorsets(¤t->blocked,¤t->blocked,&ka->sa.sa_mask);
- sigaddset(¤t->blocked,sig);
+ if (!(ka->sa.sa_flags & SA_NODEFER))
+ sigaddset(¤t->blocked,sig);
recalc_sigpending();
spin_unlock_irq(¤t->sighand->siglock);
}


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to XXXX@XXXXX.COM
More majordomo info at http://www.yqcomputer.com/
Please read the FAQ at http://www.yqcomputer.com/
 
 
 

1. [PATCH] convert signal handling of NODEFER to act like other Unix boxes.

2. POSIX signal handling versus traditional signal handling

I am trying to compare POSIX signal handling with traditional signal
handling. I do see some similarities (posted some sample code to
comp.sources.d), but I see some differences as well. When I say
differences, I mean differences beyond the obvious differences needed
for handling real-time behavior.

For example, in all the code snippets of POSIX Real-time signal
handling that I have seen, I don't see any checks to see if the
signal has been previously set to SIG_IGN, and keeping it that way in
case it has. Also, I don't see the signal handler resetting the
signal, to prevent it from being reset to its default value. Is it
just the code snippets that I am seeing, or are they indeed different?


Thanks,
Gus

3. [PATCH][2.6.8-rc2-mm1] s390 signal handling fixes

4. [RFC,PATCH] fix /sbin/init signal handling

5. [PATCH][2.6.8-rc2-mm1] ppc signal handling fixes

6. [PATCH 25/32] Blackfin arch: fix signal handling bug

7. [PATCH] fix broken vm86 interrupt/signal handling

8. [PATCH] x86_64 signal handling for 64-bit apps w/ mixed 32-bit code - trivial fix

9. [PATCH][2.6.8-rc2-mm1] x86_64 signal handling fix

10. [PATCH] x86_64: another fix for canonical RIPs during signal handling

11. [PATCH] signal handling: revert sigkill priority fix

12. [PATCH] FRV: Fix sigaltstack handling for RT signals

13. [PATCH] v9fs: signal handling fixes

14. [PATCH 1/2] FRV: Fix FRV signal handling

15. Python 2.3.3 signals, threads & extensions: signal handling problem[Resolved]