aboutsummaryrefslogtreecommitdiff
path: root/fs/read_write.c
diff options
context:
space:
mode:
authorRoland McGrath <roland@redhat.com>2005-06-23 00:08:37 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-06-23 09:45:13 -0700
commit0928d6ef7f204979749fb241a90a04a35dae133a (patch)
treef91a3a4725a2e59ed3cfce4cabd31f61798b9342 /fs/read_write.c
parenta3a00751ad8970c13d0563c2e92ee68c655a8e6b (diff)
[PATCH] x86_64: never block forced SIGSEGV
This is the x86_64 version of the signal fix I just posted for i386. This problem was first noticed on PPC and has already been fixed there. But the exact same issue applies to other platforms in the same way. The signal blocking for sa_mask and the handled signal takes place after the handler setup. When the stack is bogus, the handler setup forces a SIGSEGV. But then this will be blocked, and returning to user mode will fault again and iterate. This patch fixes the problem by checking whether signal handler setup failed, and not doing the signal-blocking if so. This copies what was done in the ppc code. I think all architectures' signal handler setup code follows this pattern and needs the change. Signed-off-by: Roland McGrath <roland@redhat.com> Cc: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fs/read_write.c')
0 files changed, 0 insertions, 0 deletions