signal/x86: Remove the pkey parameter from do_sigbus
authorEric W. Biederman <ebiederm@xmission.com>
Mon, 17 Sep 2018 22:16:01 +0000 (00:16 +0200)
committerEric W. Biederman <ebiederm@xmission.com>
Fri, 21 Sep 2018 12:48:44 +0000 (14:48 +0200)
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.

Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
arch/x86/mm/fault.c

index 259db57..9ef1d41 100644 (file)
@@ -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;
 
@@ -995,7 +995,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
@@ -1024,7 +1024,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