diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2010-09-20 22:48:57 +0200 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-09-22 18:33:50 +0200 |
commit | 9a81c16b527528ad307843be5571111aa8d35a80 (patch) | |
tree | 4fea21edefa32d8e8e997f3db63f9cefaddff28c /virt/kvm | |
parent | Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block (diff) | |
download | linux-9a81c16b527528ad307843be5571111aa8d35a80.tar.xz linux-9a81c16b527528ad307843be5571111aa8d35a80.zip |
powerpc: fix double syscall restarts
Make sigreturn zero regs->trap, make do_signal() do the same on all
paths. As it is, signal interrupting e.g. read() from fd 512 (==
ERESTARTSYS) with another signal getting unblocked when the first
handler finishes will lead to restart one insn earlier than it ought
to. Same for multiple signals with in-kernel handlers interrupting
that sucker at the same time. Same for multiple signals of any kind
interrupting that sucker on 64bit...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'virt/kvm')
0 files changed, 0 insertions, 0 deletions