diff options
author | David Howells <dhowells@redhat.com> | 2012-05-01 20:44:14 +0200 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2012-06-01 18:59:18 +0200 |
commit | 137c3c469f5a940c8c095b734373581c3a0d3955 (patch) | |
tree | 43a01fe1f514429fc915605587ace27b14dccc9f /arch/frv/kernel/signal.c | |
parent | new helper: signal_delivered() (diff) | |
download | linux-137c3c469f5a940c8c095b734373581c3a0d3955.tar.xz linux-137c3c469f5a940c8c095b734373581c3a0d3955.zip |
FRV: Prevent syscall exit tracing and notify_resume at end of kernel exceptions
Move the test for kernel mode processing from do_signal() into entry.S to also
prevent system call exit tracing and userspace resumption notification handling
happening when returning from kernel exceptions.
Reported-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'arch/frv/kernel/signal.c')
-rw-r--r-- | arch/frv/kernel/signal.c | 10 |
1 files changed, 0 insertions, 10 deletions
diff --git a/arch/frv/kernel/signal.c b/arch/frv/kernel/signal.c index 4e134c7eceea..f3b9064c548c 100644 --- a/arch/frv/kernel/signal.c +++ b/arch/frv/kernel/signal.c @@ -474,18 +474,8 @@ static void do_signal(void) { struct k_sigaction ka; siginfo_t info; - sigset_t *oldset; int signr; - /* - * We want the common case to go fast, which - * is why we may in certain cases get here from - * kernel mode. Just return without doing anything - * if so. - */ - if (!user_mode(__frame)) - return; - signr = get_signal_to_deliver(&info, &ka, __frame, NULL); if (signr > 0) { handle_signal(signr, &info, &ka); |