diff options
Diffstat (limited to 'arch/ia64/kernel/traps.c')
| -rw-r--r-- | arch/ia64/kernel/traps.c | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/arch/ia64/kernel/traps.c b/arch/ia64/kernel/traps.c index 85d8616ac4f6..e13cb905930f 100644 --- a/arch/ia64/kernel/traps.c +++ b/arch/ia64/kernel/traps.c | |||
| @@ -176,7 +176,7 @@ __kprobes ia64_bad_break (unsigned long break_num, struct pt_regs *regs) | |||
| 176 | } | 176 | } |
| 177 | force_sig_fault(sig, code, | 177 | force_sig_fault(sig, code, |
| 178 | (void __user *) (regs->cr_iip + ia64_psr(regs)->ri), | 178 | (void __user *) (regs->cr_iip + ia64_psr(regs)->ri), |
| 179 | break_num, 0 /* clear __ISR_VALID */, 0, current); | 179 | break_num, 0 /* clear __ISR_VALID */, 0); |
| 180 | } | 180 | } |
| 181 | 181 | ||
| 182 | /* | 182 | /* |
| @@ -353,7 +353,7 @@ handle_fpu_swa (int fp_fault, struct pt_regs *regs, unsigned long isr) | |||
| 353 | } | 353 | } |
| 354 | force_sig_fault(SIGFPE, si_code, | 354 | force_sig_fault(SIGFPE, si_code, |
| 355 | (void __user *) (regs->cr_iip + ia64_psr(regs)->ri), | 355 | (void __user *) (regs->cr_iip + ia64_psr(regs)->ri), |
| 356 | 0, __ISR_VALID, isr, current); | 356 | 0, __ISR_VALID, isr); |
| 357 | } | 357 | } |
| 358 | } else { | 358 | } else { |
| 359 | if (exception == -1) { | 359 | if (exception == -1) { |
| @@ -373,7 +373,7 @@ handle_fpu_swa (int fp_fault, struct pt_regs *regs, unsigned long isr) | |||
| 373 | } | 373 | } |
| 374 | force_sig_fault(SIGFPE, si_code, | 374 | force_sig_fault(SIGFPE, si_code, |
| 375 | (void __user *) (regs->cr_iip + ia64_psr(regs)->ri), | 375 | (void __user *) (regs->cr_iip + ia64_psr(regs)->ri), |
| 376 | 0, __ISR_VALID, isr, current); | 376 | 0, __ISR_VALID, isr); |
| 377 | } | 377 | } |
| 378 | } | 378 | } |
| 379 | return 0; | 379 | return 0; |
| @@ -408,7 +408,7 @@ ia64_illegal_op_fault (unsigned long ec, long arg1, long arg2, long arg3, | |||
| 408 | 408 | ||
| 409 | force_sig_fault(SIGILL, ILL_ILLOPC, | 409 | force_sig_fault(SIGILL, ILL_ILLOPC, |
| 410 | (void __user *) (regs.cr_iip + ia64_psr(®s)->ri), | 410 | (void __user *) (regs.cr_iip + ia64_psr(®s)->ri), |
| 411 | 0, 0, 0, current); | 411 | 0, 0, 0); |
| 412 | return rv; | 412 | return rv; |
| 413 | } | 413 | } |
| 414 | 414 | ||
| @@ -483,7 +483,7 @@ ia64_fault (unsigned long vector, unsigned long isr, unsigned long ifa, | |||
| 483 | + ia64_psr(®s)->ri); | 483 | + ia64_psr(®s)->ri); |
| 484 | } | 484 | } |
| 485 | force_sig_fault(sig, code, addr, | 485 | force_sig_fault(sig, code, addr, |
| 486 | vector, __ISR_VALID, isr, current); | 486 | vector, __ISR_VALID, isr); |
| 487 | return; | 487 | return; |
| 488 | } else if (ia64_done_with_exception(®s)) | 488 | } else if (ia64_done_with_exception(®s)) |
| 489 | return; | 489 | return; |
| @@ -493,7 +493,7 @@ ia64_fault (unsigned long vector, unsigned long isr, unsigned long ifa, | |||
| 493 | case 31: /* Unsupported Data Reference */ | 493 | case 31: /* Unsupported Data Reference */ |
| 494 | if (user_mode(®s)) { | 494 | if (user_mode(®s)) { |
| 495 | force_sig_fault(SIGILL, ILL_ILLOPN, (void __user *) iip, | 495 | force_sig_fault(SIGILL, ILL_ILLOPN, (void __user *) iip, |
| 496 | vector, __ISR_VALID, isr, current); | 496 | vector, __ISR_VALID, isr); |
| 497 | return; | 497 | return; |
| 498 | } | 498 | } |
| 499 | sprintf(buf, "Unsupported data reference"); | 499 | sprintf(buf, "Unsupported data reference"); |
| @@ -542,7 +542,7 @@ ia64_fault (unsigned long vector, unsigned long isr, unsigned long ifa, | |||
| 542 | == NOTIFY_STOP) | 542 | == NOTIFY_STOP) |
| 543 | return; | 543 | return; |
| 544 | force_sig_fault(SIGTRAP, si_code, (void __user *) ifa, | 544 | force_sig_fault(SIGTRAP, si_code, (void __user *) ifa, |
| 545 | 0, __ISR_VALID, isr, current); | 545 | 0, __ISR_VALID, isr); |
| 546 | return; | 546 | return; |
| 547 | 547 | ||
| 548 | case 32: /* fp fault */ | 548 | case 32: /* fp fault */ |
| @@ -550,7 +550,7 @@ ia64_fault (unsigned long vector, unsigned long isr, unsigned long ifa, | |||
| 550 | result = handle_fpu_swa((vector == 32) ? 1 : 0, ®s, isr); | 550 | result = handle_fpu_swa((vector == 32) ? 1 : 0, ®s, isr); |
| 551 | if ((result < 0) || (current->thread.flags & IA64_THREAD_FPEMU_SIGFPE)) { | 551 | if ((result < 0) || (current->thread.flags & IA64_THREAD_FPEMU_SIGFPE)) { |
| 552 | force_sig_fault(SIGFPE, FPE_FLTINV, (void __user *) iip, | 552 | force_sig_fault(SIGFPE, FPE_FLTINV, (void __user *) iip, |
| 553 | 0, __ISR_VALID, isr, current); | 553 | 0, __ISR_VALID, isr); |
| 554 | } | 554 | } |
| 555 | return; | 555 | return; |
| 556 | 556 | ||
| @@ -578,7 +578,7 @@ ia64_fault (unsigned long vector, unsigned long isr, unsigned long ifa, | |||
| 578 | if (user_mode(®s)) { | 578 | if (user_mode(®s)) { |
| 579 | force_sig_fault(SIGILL, ILL_BADIADDR, | 579 | force_sig_fault(SIGILL, ILL_BADIADDR, |
| 580 | (void __user *) iip, | 580 | (void __user *) iip, |
| 581 | 0, 0, 0, current); | 581 | 0, 0, 0); |
| 582 | return; | 582 | return; |
| 583 | } | 583 | } |
| 584 | sprintf(buf, "Unimplemented Instruction Address fault"); | 584 | sprintf(buf, "Unimplemented Instruction Address fault"); |
| @@ -589,14 +589,14 @@ ia64_fault (unsigned long vector, unsigned long isr, unsigned long ifa, | |||
| 589 | printk(KERN_ERR "Unexpected IA-32 exception (Trap 45)\n"); | 589 | printk(KERN_ERR "Unexpected IA-32 exception (Trap 45)\n"); |
| 590 | printk(KERN_ERR " iip - 0x%lx, ifa - 0x%lx, isr - 0x%lx\n", | 590 | printk(KERN_ERR " iip - 0x%lx, ifa - 0x%lx, isr - 0x%lx\n", |
| 591 | iip, ifa, isr); | 591 | iip, ifa, isr); |
| 592 | force_sig(SIGSEGV, current); | 592 | force_sig(SIGSEGV); |
| 593 | return; | 593 | return; |
| 594 | 594 | ||
| 595 | case 46: | 595 | case 46: |
| 596 | printk(KERN_ERR "Unexpected IA-32 intercept trap (Trap 46)\n"); | 596 | printk(KERN_ERR "Unexpected IA-32 intercept trap (Trap 46)\n"); |
| 597 | printk(KERN_ERR " iip - 0x%lx, ifa - 0x%lx, isr - 0x%lx, iim - 0x%lx\n", | 597 | printk(KERN_ERR " iip - 0x%lx, ifa - 0x%lx, isr - 0x%lx, iim - 0x%lx\n", |
| 598 | iip, ifa, isr, iim); | 598 | iip, ifa, isr, iim); |
| 599 | force_sig(SIGSEGV, current); | 599 | force_sig(SIGSEGV); |
| 600 | return; | 600 | return; |
| 601 | 601 | ||
| 602 | case 47: | 602 | case 47: |
| @@ -608,5 +608,5 @@ ia64_fault (unsigned long vector, unsigned long isr, unsigned long ifa, | |||
| 608 | break; | 608 | break; |
| 609 | } | 609 | } |
| 610 | if (!die_if_kernel(buf, ®s, error)) | 610 | if (!die_if_kernel(buf, ®s, error)) |
| 611 | force_sig(SIGILL, current); | 611 | force_sig(SIGILL); |
| 612 | } | 612 | } |
