diff options
Diffstat (limited to 'arch/um/kernel/skas/syscall.c')
-rw-r--r-- | arch/um/kernel/skas/syscall.c | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/arch/um/kernel/skas/syscall.c b/arch/um/kernel/skas/syscall.c index e183da633c89..8582c1331048 100644 --- a/arch/um/kernel/skas/syscall.c +++ b/arch/um/kernel/skas/syscall.c | |||
@@ -1,17 +1,13 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (C) 2002 Jeff Dike (jdike@karaya.com) | 2 | * Copyright (C) 2002 - 2007 Jeff Dike (jdike@{addtoit,linux.intel}.com) |
3 | * Licensed under the GPL | 3 | * Licensed under the GPL |
4 | */ | 4 | */ |
5 | 5 | ||
6 | #include "linux/sys.h" | 6 | #include "linux/kernel.h" |
7 | #include "linux/ptrace.h" | 7 | #include "linux/ptrace.h" |
8 | #include "asm/errno.h" | ||
9 | #include "asm/unistd.h" | ||
10 | #include "asm/ptrace.h" | ||
11 | #include "asm/current.h" | ||
12 | #include "sysdep/syscalls.h" | ||
13 | #include "kern_util.h" | 8 | #include "kern_util.h" |
14 | #include "syscall.h" | 9 | #include "sysdep/ptrace.h" |
10 | #include "sysdep/syscalls.h" | ||
15 | 11 | ||
16 | void handle_syscall(struct uml_pt_regs *r) | 12 | void handle_syscall(struct uml_pt_regs *r) |
17 | { | 13 | { |
@@ -24,7 +20,8 @@ void handle_syscall(struct uml_pt_regs *r) | |||
24 | current->thread.nsyscalls++; | 20 | current->thread.nsyscalls++; |
25 | nsyscalls++; | 21 | nsyscalls++; |
26 | 22 | ||
27 | /* This should go in the declaration of syscall, but when I do that, | 23 | /* |
24 | * This should go in the declaration of syscall, but when I do that, | ||
28 | * strace -f -c bash -c 'ls ; ls' breaks, sometimes not tracing | 25 | * strace -f -c bash -c 'ls ; ls' breaks, sometimes not tracing |
29 | * children at all, sometimes hanging when bash doesn't see the first | 26 | * children at all, sometimes hanging when bash doesn't see the first |
30 | * ls exit. | 27 | * ls exit. |
@@ -33,7 +30,7 @@ void handle_syscall(struct uml_pt_regs *r) | |||
33 | * in case it's a compiler bug. | 30 | * in case it's a compiler bug. |
34 | */ | 31 | */ |
35 | syscall = UPT_SYSCALL_NR(r); | 32 | syscall = UPT_SYSCALL_NR(r); |
36 | if((syscall >= NR_syscalls) || (syscall < 0)) | 33 | if ((syscall >= NR_syscalls) || (syscall < 0)) |
37 | result = -ENOSYS; | 34 | result = -ENOSYS; |
38 | else result = EXECUTE_SYSCALL(syscall, regs); | 35 | else result = EXECUTE_SYSCALL(syscall, regs); |
39 | 36 | ||