|
@@ -60,17 +60,10 @@ asmlinkage void sw_exception(struct pt_regs *regs)
|
|
|
|
|
|
void _exception(int signr, struct pt_regs *regs, int code, unsigned long addr)
|
|
|
{
|
|
|
- siginfo_t info;
|
|
|
-
|
|
|
if (kernel_mode(regs))
|
|
|
die("Exception in kernel mode", regs, signr);
|
|
|
|
|
|
- clear_siginfo(&info);
|
|
|
- info.si_signo = signr;
|
|
|
- info.si_errno = 0;
|
|
|
- info.si_code = code;
|
|
|
- info.si_addr = (void __user *) addr;
|
|
|
- force_sig_info(signr, &info, current);
|
|
|
+ force_sig_fault(signr, code, (void __user *)addr, current);
|
|
|
}
|
|
|
|
|
|
asmlinkage void full_exception(struct pt_regs *regs, unsigned int type,
|