|
@@ -95,7 +95,7 @@ u32 seccomp_bpf_load(int off)
|
|
if (off == BPF_DATA(nr))
|
|
if (off == BPF_DATA(nr))
|
|
return syscall_get_nr(current, regs);
|
|
return syscall_get_nr(current, regs);
|
|
if (off == BPF_DATA(arch))
|
|
if (off == BPF_DATA(arch))
|
|
- return syscall_get_arch(current, regs);
|
|
|
|
|
|
+ return syscall_get_arch();
|
|
if (off >= BPF_DATA(args[0]) && off < BPF_DATA(args[6])) {
|
|
if (off >= BPF_DATA(args[0]) && off < BPF_DATA(args[6])) {
|
|
unsigned long value;
|
|
unsigned long value;
|
|
int arg = (off - BPF_DATA(args[0])) / sizeof(u64);
|
|
int arg = (off - BPF_DATA(args[0])) / sizeof(u64);
|
|
@@ -351,7 +351,7 @@ static void seccomp_send_sigsys(int syscall, int reason)
|
|
info.si_code = SYS_SECCOMP;
|
|
info.si_code = SYS_SECCOMP;
|
|
info.si_call_addr = (void __user *)KSTK_EIP(current);
|
|
info.si_call_addr = (void __user *)KSTK_EIP(current);
|
|
info.si_errno = reason;
|
|
info.si_errno = reason;
|
|
- info.si_arch = syscall_get_arch(current, task_pt_regs(current));
|
|
|
|
|
|
+ info.si_arch = syscall_get_arch();
|
|
info.si_syscall = syscall;
|
|
info.si_syscall = syscall;
|
|
force_sig_info(SIGSYS, &info, current);
|
|
force_sig_info(SIGSYS, &info, current);
|
|
}
|
|
}
|