From 2a3fdc117cdd664814d7374941698729e47fea95 Mon Sep 17 00:00:00 2001 From: Al Viro Date: Sun, 22 Apr 2012 03:30:18 -0400 Subject: c6x: ->restart_block.fn needs to be reset on rt_sigreturn Signed-off-by: Al Viro --- arch/c6x/kernel/signal.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'arch/c6x/kernel/signal.c') diff --git a/arch/c6x/kernel/signal.c b/arch/c6x/kernel/signal.c index 3b5a05099989..cf37478c1169 100644 --- a/arch/c6x/kernel/signal.c +++ b/arch/c6x/kernel/signal.c @@ -69,6 +69,9 @@ asmlinkage int do_rt_sigreturn(struct pt_regs *regs) struct rt_sigframe __user *frame; sigset_t set; + /* Always make any pending restarted system calls return -EINTR */ + current_thread_info()->restart_block.fn = do_no_restart_syscall; + /* * Since we stacked the signal on a dword boundary, * 'sp' should be dword aligned here. If it's -- cgit v1.2.3