diff options
author | Jeff Dike <jdike@addtoit.com> | 2007-05-06 14:51:24 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-05-07 12:13:02 -0700 |
commit | 5d86456d3852cb95a38d2b23fe01cede54984ba5 (patch) | |
tree | a0e973d629717d93c7b4dc32ad7afd9e64f5f974 /arch/um/include | |
parent | ccdddb57874522e6b267204f9c5e94ba7d9d66b0 (diff) | |
download | blackbird-op-linux-5d86456d3852cb95a38d2b23fe01cede54984ba5.tar.gz blackbird-op-linux-5d86456d3852cb95a38d2b23fe01cede54984ba5.zip |
uml: tidy fault code
Tidying in preparation for the segfault register dumping patch which follows.
void * pointers are changed to union uml_pt_regs *. This makes the types
match reality, except in arch_fixup, which is changed to operate on a union
uml_pt_regs. This fixes a bug in the call from segv_handler, which passes a
union uml_pt_regs, to segv, which expects to pass a struct sigcontext to
arch_fixup.
Whitespace and other style fixes.
There's also a errno printk fix.
Signed-off-by: Jeff Dike <jdike@linux.intel.com>
Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/um/include')
-rw-r--r-- | arch/um/include/arch.h | 2 | ||||
-rw-r--r-- | arch/um/include/kern_util.h | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/arch/um/include/arch.h b/arch/um/include/arch.h index 8e11dd7c1adb..10ad52daa8c5 100644 --- a/arch/um/include/arch.h +++ b/arch/um/include/arch.h @@ -9,7 +9,7 @@ #include "sysdep/ptrace.h" extern void arch_check_bugs(void); -extern int arch_fixup(unsigned long address, void *sc_ptr); +extern int arch_fixup(unsigned long address, union uml_pt_regs *regs); extern int arch_handle_signal(int sig, union uml_pt_regs *regs); #endif diff --git a/arch/um/include/kern_util.h b/arch/um/include/kern_util.h index ae434a9b400d..092a2841556f 100644 --- a/arch/um/include/kern_util.h +++ b/arch/um/include/kern_util.h @@ -44,7 +44,7 @@ extern unsigned long alloc_stack(int order, int atomic); extern int do_signal(void); extern int is_stack_fault(unsigned long sp); extern unsigned long segv(struct faultinfo fi, unsigned long ip, - int is_user, void *sc); + int is_user, union uml_pt_regs *regs); extern int handle_page_fault(unsigned long address, unsigned long ip, int is_write, int is_user, int *code_out); extern void syscall_ready(void); |