diff options
-rw-r--r-- | arch/i386/kernel/entry.S | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/arch/i386/kernel/entry.S b/arch/i386/kernel/entry.S index 9a47723469c6..abb909793efc 100644 --- a/arch/i386/kernel/entry.S +++ b/arch/i386/kernel/entry.S | |||
@@ -339,18 +339,12 @@ syscall_trace_entry: | |||
339 | xorl %edx,%edx | 339 | xorl %edx,%edx |
340 | call do_syscall_trace | 340 | call do_syscall_trace |
341 | cmpl $0, %eax | 341 | cmpl $0, %eax |
342 | jne syscall_skip # ret != 0 -> running under PTRACE_SYSEMU, | 342 | jne resume_userspace # ret != 0 -> running under PTRACE_SYSEMU, |
343 | # so must skip actual syscall | 343 | # so must skip actual syscall |
344 | movl ORIG_EAX(%esp), %eax | 344 | movl ORIG_EAX(%esp), %eax |
345 | cmpl $(nr_syscalls), %eax | 345 | cmpl $(nr_syscalls), %eax |
346 | jnae syscall_call | 346 | jnae syscall_call |
347 | jmp syscall_exit | 347 | jmp syscall_exit |
348 | syscall_skip: | ||
349 | cli # make sure we don't miss an interrupt | ||
350 | # setting need_resched or sigpending | ||
351 | # between sampling and the iret | ||
352 | movl TI_flags(%ebp), %ecx | ||
353 | jmp work_pending | ||
354 | 348 | ||
355 | # perform syscall exit tracing | 349 | # perform syscall exit tracing |
356 | ALIGN | 350 | ALIGN |