linux/arch/arc
Vineet Gupta 55bb9480f9 ARC: [Review] Prevent incorrect syscall restarts
Per Al Viro's "signals for dummies" https://lkml.org/lkml/2012/12/6/366
there are 3 golden rules for (not) restarting syscalls:

"	What we need to guarantee is
* restarts do not happen on signals caught in interrupts or exceptions
* restarts do not happen on signals caught in sigreturn()
* restart should happen only once, even if we get through do_signal()
  many times."

ARC Port already handled #1, this patch fixes #2 and #3.

We use the additional state in pt_regs->orig_r8 to ckh if restarting
has already been done once.

Thanks to Al Viro for spotting this.

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Cc: Al Viro <viro@ZenIV.linux.org.uk>
2013-02-15 23:15:50 +05:30
..
boot ARC: Build system: Makefiles, Kconfig, Linker script 2013-02-11 20:00:25 +05:30
include/asm ARC: [Review] Prevent incorrect syscall restarts 2013-02-15 23:15:50 +05:30
kernel ARC: [Review] Prevent incorrect syscall restarts 2013-02-15 23:15:50 +05:30
lib ARC: String library 2013-02-11 20:00:35 +05:30
mm ARC: uaccess friends 2013-02-11 20:00:31 +05:30
plat-arcfpga ARC: Interrupt Handling 2013-02-11 20:00:37 +05:30
Kbuild ARC: Build system: Makefiles, Kconfig, Linker script 2013-02-11 20:00:25 +05:30
Kconfig ARC: Signal handling 2013-02-15 23:03:30 +05:30
Kconfig.debug ARC: Build system: Makefiles, Kconfig, Linker script 2013-02-11 20:00:25 +05:30
Makefile ARC: Build system: Makefiles, Kconfig, Linker script 2013-02-11 20:00:25 +05:30