aboutsummaryrefslogtreecommitdiffstats
path: root/arch/s390/kernel/traps.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/s390/kernel/traps.c')
-rw-r--r--arch/s390/kernel/traps.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/arch/s390/kernel/traps.c b/arch/s390/kernel/traps.c
index 3eb4fab048b8..66375a5e3d12 100644
--- a/arch/s390/kernel/traps.c
+++ b/arch/s390/kernel/traps.c
@@ -61,7 +61,7 @@ extern pgm_check_handler_t do_dat_exception;
61#ifdef CONFIG_PFAULT 61#ifdef CONFIG_PFAULT
62extern int pfault_init(void); 62extern int pfault_init(void);
63extern void pfault_fini(void); 63extern void pfault_fini(void);
64extern void pfault_interrupt(struct pt_regs *regs, __u16 error_code); 64extern void pfault_interrupt(__u16 error_code);
65static ext_int_info_t ext_int_pfault; 65static ext_int_info_t ext_int_pfault;
66#endif 66#endif
67extern pgm_check_handler_t do_monitor_call; 67extern pgm_check_handler_t do_monitor_call;
@@ -474,7 +474,7 @@ asmlinkage void illegal_op(struct pt_regs * regs, long interruption_code)
474 signal = math_emu_b3(opcode, regs); 474 signal = math_emu_b3(opcode, regs);
475 } else if (opcode[0] == 0xed) { 475 } else if (opcode[0] == 0xed) {
476 get_user(*((__u32 *) (opcode+2)), 476 get_user(*((__u32 *) (opcode+2)),
477 (__u32 *)(location+1)); 477 (__u32 __user *)(location+1));
478 signal = math_emu_ed(opcode, regs); 478 signal = math_emu_ed(opcode, regs);
479 } else if (*((__u16 *) opcode) == 0xb299) { 479 } else if (*((__u16 *) opcode) == 0xb299) {
480 get_user(*((__u16 *) (opcode+2)), location+1); 480 get_user(*((__u16 *) (opcode+2)), location+1);
@@ -499,7 +499,7 @@ asmlinkage void illegal_op(struct pt_regs * regs, long interruption_code)
499 info.si_signo = signal; 499 info.si_signo = signal;
500 info.si_errno = 0; 500 info.si_errno = 0;
501 info.si_code = SEGV_MAPERR; 501 info.si_code = SEGV_MAPERR;
502 info.si_addr = (void *) location; 502 info.si_addr = (void __user *) location;
503 do_trap(interruption_code, signal, 503 do_trap(interruption_code, signal,
504 "user address fault", regs, &info); 504 "user address fault", regs, &info);
505 } else 505 } else
@@ -520,10 +520,10 @@ asmlinkage void
520specification_exception(struct pt_regs * regs, long interruption_code) 520specification_exception(struct pt_regs * regs, long interruption_code)
521{ 521{
522 __u8 opcode[6]; 522 __u8 opcode[6];
523 __u16 *location = NULL; 523 __u16 __user *location = NULL;
524 int signal = 0; 524 int signal = 0;
525 525
526 location = (__u16 *) get_check_address(regs); 526 location = (__u16 __user *) get_check_address(regs);
527 527
528 /* 528 /*
529 * We got all needed information from the lowcore and can 529 * We got all needed information from the lowcore and can
@@ -632,7 +632,7 @@ asmlinkage void data_exception(struct pt_regs * regs, long interruption_code)
632 break; 632 break;
633 case 0xed: 633 case 0xed:
634 get_user(*((__u32 *) (opcode+2)), 634 get_user(*((__u32 *) (opcode+2)),
635 (__u32 *)(location+1)); 635 (__u32 __user *)(location+1));
636 signal = math_emu_ed(opcode, regs); 636 signal = math_emu_ed(opcode, regs);
637 break; 637 break;
638 case 0xb2: 638 case 0xb2: