2010-12-15 10:39:50

by Al Viro

[permalink] [raw]
Subject: [PATCH 5/6] avr32: need to reset ->restart_block.fn on sigreturn


Acked-by: Hans-Christian Egtvedt <[email protected]>
Signed-off-by: Al Viro <[email protected]>
---
arch/avr32/kernel/signal.c | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/arch/avr32/kernel/signal.c b/arch/avr32/kernel/signal.c
index b9fa924..3b4bb5a 100644
--- a/arch/avr32/kernel/signal.c
+++ b/arch/avr32/kernel/signal.c
@@ -42,6 +42,9 @@ restore_sigcontext(struct pt_regs *regs, struct sigcontext __user *sc)
{
int err = 0;

+ /* Always make any pending restarted system calls return -EINTR */
+ current_thread_info()->restart_block.fn = do_no_restart_syscall;
+
#define COPY(x) err |= __get_user(regs->x, &sc->x)
COPY(sr);
COPY(pc);
--
1.5.6.5