summaryrefslogtreecommitdiffstats
path: root/call/call.1
Commit message (Expand)AuthorAgeFilesLines
* - new option -S: be silent. useful for using call in shellscripts.Thomas Osterried2008-07-091-0/+3
* - New option "-s <sourcecall>" (like in ax25_call)Thomas Osterried2005-12-281-1/+4
* Import ax25-apps 0.0.1 from tarballax25-apps-0.0.1Ralf Baechle1999-06-071-0/+178
1e4b95d7c9ea9dbacd1fc4a041120dfffb'>07bf731e4b95d7c9ea9dbacd1fc4a041120dfffb (patch) tree25ae7f2000421d45e484abac0b7252809476c0d0 parent8b51304ed3184826fb262c1e9d3e58b0b00fd083 (diff)
[PATCH] uml: skas0 stubs now check system call return values
Change syscall-stub's data to include a "expected retval". Stub now checks syscalls retval and aborts execution of syscall list, if retval != expected retval. run_syscall_stub prints the data of the failed syscall, using the data pointer and retval written by the stub to the beginning of the stack. one_syscall_stub is removed, to simplify code, because only some instructions are saved by one_syscall_stub, no host-syscall. Using the stub with additional data (modify_ldt via stub) is prepared also. Signed-off-by: Bodo Stroesser <bstroesser@fujitsu-siemens.com> Signed-off-by: Jeff Dike <jdike@addtoit.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat
-rw-r--r--arch/um/include/tlb.h6
-rw-r--r--arch/um/kernel/skas/include/skas.h33
-rw-r--r--arch/um/kernel/skas/mem_user.c234
-rw-r--r--arch/um/kernel/skas/tlb.c31
-rw-r--r--arch/um/kernel/tlb.c163
-rw-r--r--arch/um/kernel/tt/tlb.c27
-rw-r--r--arch/um/sys-i386/stub.S42
-rw-r--r--arch/um/sys-x86_64/stub.S50
8 files changed, 348 insertions, 238 deletions
diff --git a/arch/um/include/tlb.h b/arch/um/include/tlb.h
index 2deefb99c63c..45d7da6c3b2c 100644
--- a/arch/um/include/tlb.h
+++ b/arch/um/include/tlb.h
@@ -38,9 +38,9 @@ extern void mprotect_kernel_vm(int w);
extern void force_flush_all(void);
extern void fix_range_common(struct mm_struct *mm, unsigned long start_addr,
unsigned long end_addr, int force,
- void *(*do_ops)(union mm_context *,
- struct host_vm_op *, int, int,
- void *));
+ int (*do_ops)(union mm_context *,
+ struct host_vm_op *, int, int,
+ void **));
extern int flush_tlb_kernel_range_common(unsigned long start,
unsigned long end);
diff --git a/arch/um/kernel/skas/include/skas.h b/arch/um/kernel/skas/include/skas.h