Messages in this thread Patch in this message | | | From | Richard Weinberger <> | Subject | [PATCH 08/20] openrisc: Do not call do_signal() with irqs disabled | Date | Sat, 26 May 2012 00:04:24 +0200 |
| |
get_signal_to_deliver() calls try_to_freeze() which might sleep.
Cc: Jonas Bonn <jonas@southpole.se> Cc: linux@lists.openrisc.net Signed-off-by: Richard Weinberger <richard@nod.at> --- arch/openrisc/kernel/signal.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/arch/openrisc/kernel/signal.c b/arch/openrisc/kernel/signal.c index e970743..f2ae7ac 100644 --- a/arch/openrisc/kernel/signal.c +++ b/arch/openrisc/kernel/signal.c @@ -26,6 +26,7 @@ #include <linux/unistd.h> #include <linux/stddef.h> #include <linux/tracehook.h> +#include <linux/irqflags.h> #include <asm/processor.h> #include <asm/ucontext.h> @@ -370,6 +371,8 @@ void do_signal(struct pt_regs *regs) asmlinkage void do_notify_resume(struct pt_regs *regs) { + local_irq_enable(); + if (current_thread_info()->flags & _TIF_SIGPENDING) do_signal(regs); -- 1.7.7.3
| |