提交 f8eac901 编写于 作者: E Eric W. Biederman

signal: Remove task parameter from force_sig_mceerr

All of the callers pass current into force_sig_mceer so remove the
task parameter to make this obvious.

This also makes it clear that force_sig_mceerr passes current
into force_sig_info.
Signed-off-by: N"Eric W. Biederman" <ebiederm@xmission.com>
上级 3cf5d076
...@@ -266,7 +266,7 @@ void arm64_force_sig_mceerr(int code, void __user *addr, short lsb, ...@@ -266,7 +266,7 @@ void arm64_force_sig_mceerr(int code, void __user *addr, short lsb,
const char *str) const char *str)
{ {
arm64_show_signal(SIGBUS, str); arm64_show_signal(SIGBUS, str);
force_sig_mceerr(code, addr, lsb, current); force_sig_mceerr(code, addr, lsb);
} }
void arm64_force_sig_ptrace_errno_trap(int errno, void __user *addr, void arm64_force_sig_ptrace_errno_trap(int errno, void __user *addr,
......
...@@ -403,7 +403,7 @@ void do_page_fault(struct pt_regs *regs, unsigned long code, ...@@ -403,7 +403,7 @@ void do_page_fault(struct pt_regs *regs, unsigned long code,
lsb = PAGE_SHIFT; lsb = PAGE_SHIFT;
force_sig_mceerr(BUS_MCEERR_AR, (void __user *) address, force_sig_mceerr(BUS_MCEERR_AR, (void __user *) address,
lsb, current); lsb);
return; return;
} }
#endif #endif
......
...@@ -182,8 +182,7 @@ static int do_sigbus(struct pt_regs *regs, unsigned long address, ...@@ -182,8 +182,7 @@ static int do_sigbus(struct pt_regs *regs, unsigned long address,
if (fault & VM_FAULT_HWPOISON) if (fault & VM_FAULT_HWPOISON)
lsb = PAGE_SHIFT; lsb = PAGE_SHIFT;
force_sig_mceerr(BUS_MCEERR_AR, (void __user *)address, lsb, force_sig_mceerr(BUS_MCEERR_AR, (void __user *)address, lsb);
current);
return 0; return 0;
} }
......
...@@ -1040,7 +1040,7 @@ do_sigbus(struct pt_regs *regs, unsigned long error_code, unsigned long address, ...@@ -1040,7 +1040,7 @@ do_sigbus(struct pt_regs *regs, unsigned long error_code, unsigned long address,
lsb = hstate_index_to_shift(VM_FAULT_GET_HINDEX(fault)); lsb = hstate_index_to_shift(VM_FAULT_GET_HINDEX(fault));
if (fault & VM_FAULT_HWPOISON) if (fault & VM_FAULT_HWPOISON)
lsb = PAGE_SHIFT; lsb = PAGE_SHIFT;
force_sig_mceerr(BUS_MCEERR_AR, (void __user *)address, lsb, tsk); force_sig_mceerr(BUS_MCEERR_AR, (void __user *)address, lsb);
return; return;
} }
#endif #endif
......
...@@ -316,7 +316,7 @@ int send_sig_fault(int sig, int code, void __user *addr ...@@ -316,7 +316,7 @@ int send_sig_fault(int sig, int code, void __user *addr
___ARCH_SI_IA64(int imm, unsigned int flags, unsigned long isr) ___ARCH_SI_IA64(int imm, unsigned int flags, unsigned long isr)
, struct task_struct *t); , struct task_struct *t);
int force_sig_mceerr(int code, void __user *, short, struct task_struct *); int force_sig_mceerr(int code, void __user *, short);
int send_sig_mceerr(int code, void __user *, short, struct task_struct *); int send_sig_mceerr(int code, void __user *, short, struct task_struct *);
int force_sig_bnderr(void __user *addr, void __user *lower, void __user *upper); int force_sig_bnderr(void __user *addr, void __user *lower, void __user *upper);
......
...@@ -1666,7 +1666,7 @@ int send_sig_fault(int sig, int code, void __user *addr ...@@ -1666,7 +1666,7 @@ int send_sig_fault(int sig, int code, void __user *addr
return send_sig_info(info.si_signo, &info, t); return send_sig_info(info.si_signo, &info, t);
} }
int force_sig_mceerr(int code, void __user *addr, short lsb, struct task_struct *t) int force_sig_mceerr(int code, void __user *addr, short lsb)
{ {
struct kernel_siginfo info; struct kernel_siginfo info;
...@@ -1677,7 +1677,7 @@ int force_sig_mceerr(int code, void __user *addr, short lsb, struct task_struct ...@@ -1677,7 +1677,7 @@ int force_sig_mceerr(int code, void __user *addr, short lsb, struct task_struct
info.si_code = code; info.si_code = code;
info.si_addr = addr; info.si_addr = addr;
info.si_addr_lsb = lsb; info.si_addr_lsb = lsb;
return force_sig_info(info.si_signo, &info, t); return force_sig_info(info.si_signo, &info, current);
} }
int send_sig_mceerr(int code, void __user *addr, short lsb, struct task_struct *t) int send_sig_mceerr(int code, void __user *addr, short lsb, struct task_struct *t)
......
...@@ -221,7 +221,7 @@ static int kill_proc(struct to_kill *tk, unsigned long pfn, int flags) ...@@ -221,7 +221,7 @@ static int kill_proc(struct to_kill *tk, unsigned long pfn, int flags)
if ((flags & MF_ACTION_REQUIRED) && t->mm == current->mm) { if ((flags & MF_ACTION_REQUIRED) && t->mm == current->mm) {
ret = force_sig_mceerr(BUS_MCEERR_AR, (void __user *)tk->addr, ret = force_sig_mceerr(BUS_MCEERR_AR, (void __user *)tk->addr,
addr_lsb, current); addr_lsb);
} else { } else {
/* /*
* Don't use force here, it's convenient if the signal * Don't use force here, it's convenient if the signal
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册