aboutsummaryrefslogtreecommitdiffstats
path: root/arch/frv/kernel/signal.c
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2012-05-01 19:44:14 +0100
committerAl Viro <viro@zeniv.linux.org.uk>2012-06-01 12:59:18 -0400
commit137c3c469f5a940c8c095b734373581c3a0d3955 (patch)
tree43a01fe1f514429fc915605587ace27b14dccc9f /arch/frv/kernel/signal.c
parentnew helper: signal_delivered() (diff)
downloadlinux-dev-137c3c469f5a940c8c095b734373581c3a0d3955.tar.xz
linux-dev-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 '')
-rw-r--r--arch/frv/kernel/signal.c10
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);