mirror of
https://github.com/torvalds/linux.git
synced 2024-11-10 14:11:52 +00:00
[PATCH] signal handling: revert sigkill priority fix
This patch reverts commit c33880aadd
since
it's not needed anymore. As pointed out by Roland McGrath the real fix
is to deliver all signals before returning to user space.
See http://www.ussg.iu.edu/hypermail/linux/kernel/0509.2/0683.html
A fix for s390 has been merged.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Roland McGrath <roland@redhat.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Linus Torvalds <torvalds@osdl.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
ba260e23ef
commit
b17b0421d7
@ -513,16 +513,7 @@ static int __dequeue_signal(struct sigpending *pending, sigset_t *mask,
|
||||
{
|
||||
int sig = 0;
|
||||
|
||||
/* SIGKILL must have priority, otherwise it is quite easy
|
||||
* to create an unkillable process, sending sig < SIGKILL
|
||||
* to self */
|
||||
if (unlikely(sigismember(&pending->signal, SIGKILL))) {
|
||||
if (!sigismember(mask, SIGKILL))
|
||||
sig = SIGKILL;
|
||||
}
|
||||
|
||||
if (likely(!sig))
|
||||
sig = next_signal(pending, mask);
|
||||
sig = next_signal(pending, mask);
|
||||
if (sig) {
|
||||
if (current->notifier) {
|
||||
if (sigismember(current->notifier_mask, sig)) {
|
||||
|
Loading…
Reference in New Issue
Block a user