On Tue, 18 Sep 2018, Eric W. Biederman wrote: > The function do_sigbus never sets si_code to PKUERR so it can never > return a pkey to userspace. Therefore remove the unusable pkey > parameter from do_sigbus. > > Signed-off-by: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx> Reviewed-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx> > --- > arch/x86/mm/fault.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/arch/x86/mm/fault.c b/arch/x86/mm/fault.c > index cfc88920716f..6886866c072d 100644 > --- a/arch/x86/mm/fault.c > +++ b/arch/x86/mm/fault.c > @@ -962,7 +962,7 @@ bad_area_access_error(struct pt_regs *regs, unsigned long error_code, > > static void > do_sigbus(struct pt_regs *regs, unsigned long error_code, unsigned long address, > - u32 *pkey, unsigned int fault) > + unsigned int fault) > { > struct task_struct *tsk = current; > > @@ -994,7 +994,7 @@ do_sigbus(struct pt_regs *regs, unsigned long error_code, unsigned long address, > return; > } > #endif > - force_sig_info_fault(SIGBUS, BUS_ADRERR, address, tsk, pkey); > + force_sig_info_fault(SIGBUS, BUS_ADRERR, address, tsk, NULL); > } > > static noinline void > @@ -1023,7 +1023,7 @@ mm_fault_error(struct pt_regs *regs, unsigned long error_code, > } else { > if (fault & (VM_FAULT_SIGBUS|VM_FAULT_HWPOISON| > VM_FAULT_HWPOISON_LARGE)) > - do_sigbus(regs, error_code, address, pkey, fault); > + do_sigbus(regs, error_code, address, fault); > else if (fault & VM_FAULT_SIGSEGV) > bad_area_nosemaphore(regs, error_code, address); > else > -- > 2.17.1 > >