aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/mm/mpx.c')
-rw-r--r--arch/x86/mm/mpx.c12
1 files changed, 2 insertions, 10 deletions
diff --git a/arch/x86/mm/mpx.c b/arch/x86/mm/mpx.c
index ef05755a1900..7ed47b1e6f42 100644
--- a/arch/x86/mm/mpx.c
+++ b/arch/x86/mm/mpx.c
@@ -293,7 +293,7 @@ siginfo_t *mpx_generate_siginfo(struct pt_regs *regs)
293 * We were not able to extract an address from the instruction, 293 * We were not able to extract an address from the instruction,
294 * probably because there was something invalid in it. 294 * probably because there was something invalid in it.
295 */ 295 */
296 if (info->si_addr == (void *)-1) { 296 if (info->si_addr == (void __user *)-1) {
297 err = -EINVAL; 297 err = -EINVAL;
298 goto err_out; 298 goto err_out;
299 } 299 }
@@ -525,15 +525,7 @@ int mpx_handle_bd_fault(void)
525 if (!kernel_managing_mpx_tables(current->mm)) 525 if (!kernel_managing_mpx_tables(current->mm))
526 return -EINVAL; 526 return -EINVAL;
527 527
528 if (do_mpx_bt_fault()) { 528 return do_mpx_bt_fault();
529 force_sig(SIGSEGV, current);
530 /*
531 * The force_sig() is essentially "handling" this
532 * exception, so we do not pass up the error
533 * from do_mpx_bt_fault().
534 */
535 }
536 return 0;
537} 529}
538 530
539/* 531/*