View | Details | Raw Unified | Return to bug 62088
Collapse All | Expand All

(-)linux-2.6/arch/s390/kernel/traps.c (-1 / +16 lines)
Lines 630-635 Link Here
630
	}
630
	}
631
}
631
}
632
632
633
asmlinkage void space_switch_exception(struct pt_regs * regs, long int_code)
634
{
635
        siginfo_t info;
636
637
	/* Set user psw back to home space mode. */
638
	if (regs->psw.mask & PSW_MASK_PSTATE)
639
		regs->psw.mask |= PSW_ASC_HOME;
640
	/* Send SIGILL. */
641
        info.si_signo = SIGILL;
642
        info.si_errno = 0;
643
        info.si_code = ILL_PRVOPC;
644
        info.si_addr = get_check_address(regs);
645
        do_trap(int_code, SIGILL, "space switch event", regs, &info);
646
}
647
633
asmlinkage void kernel_stack_overflow(struct pt_regs * regs)
648
asmlinkage void kernel_stack_overflow(struct pt_regs * regs)
634
{
649
{
635
	die("Kernel stack overflow", regs, 0);
650
	die("Kernel stack overflow", regs, 0);
Lines 673-679 Link Here
673
        pgm_check_table[0x3B] = &do_dat_exception;
688
        pgm_check_table[0x3B] = &do_dat_exception;
674
#endif /* CONFIG_ARCH_S390X */
689
#endif /* CONFIG_ARCH_S390X */
675
        pgm_check_table[0x15] = &operand_exception;
690
        pgm_check_table[0x15] = &operand_exception;
676
        pgm_check_table[0x1C] = &privileged_op;
691
        pgm_check_table[0x1C] = &space_switch_exception;
677
        pgm_check_table[0x1D] = &hfp_sqrt_exception;
692
        pgm_check_table[0x1D] = &hfp_sqrt_exception;
678
	pgm_check_table[0x40] = &do_monitor_call;
693
	pgm_check_table[0x40] = &do_monitor_call;
679
694

Return to bug 62088