Commit ae5db6d1 authored by Richard Weinberger's avatar Richard Weinberger

Revert "um: Fix wait_stub_done() error handling"

This reverts commit 0974a9ca.
The real for for that issue is to release current->mm->mmap_sem in
fix_range_common().
Signed-off-by: default avatarRichard Weinberger <richard@nod.at>
parent d0571909
...@@ -54,7 +54,7 @@ static int ptrace_dump_regs(int pid) ...@@ -54,7 +54,7 @@ static int ptrace_dump_regs(int pid)
void wait_stub_done(int pid) void wait_stub_done(int pid)
{ {
int n, status, err, bad_stop = 0; int n, status, err;
while (1) { while (1) {
CATCH_EINTR(n = waitpid(pid, &status, WUNTRACED | __WALL)); CATCH_EINTR(n = waitpid(pid, &status, WUNTRACED | __WALL));
...@@ -74,8 +74,6 @@ void wait_stub_done(int pid) ...@@ -74,8 +74,6 @@ void wait_stub_done(int pid)
if (((1 << WSTOPSIG(status)) & STUB_DONE_MASK) != 0) if (((1 << WSTOPSIG(status)) & STUB_DONE_MASK) != 0)
return; return;
else
bad_stop = 1;
bad_wait: bad_wait:
err = ptrace_dump_regs(pid); err = ptrace_dump_regs(pid);
...@@ -85,10 +83,7 @@ void wait_stub_done(int pid) ...@@ -85,10 +83,7 @@ void wait_stub_done(int pid)
printk(UM_KERN_ERR "wait_stub_done : failed to wait for SIGTRAP, " printk(UM_KERN_ERR "wait_stub_done : failed to wait for SIGTRAP, "
"pid = %d, n = %d, errno = %d, status = 0x%x\n", pid, n, errno, "pid = %d, n = %d, errno = %d, status = 0x%x\n", pid, n, errno,
status); status);
if (bad_stop) fatal_sigsegv();
kill(pid, SIGKILL);
else
fatal_sigsegv();
} }
extern unsigned long current_stub_stack(void); extern unsigned long current_stub_stack(void);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment