diff options
author | Michael Ellerman <mpe@ellerman.id.au> | 2018-01-21 23:21:14 +1100 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2018-01-21 23:21:14 +1100 |
commit | ebf0b6a8b1e445d2be66087732aafcda12ab9f59 (patch) | |
tree | f00716a1dbde6b54dea5469ef209baac01883ec3 /arch/powerpc/mm/fault.c | |
parent | 5400fc229e6078a6964b15fb98e9a994df3d642a (diff) | |
parent | 1b689a95ce7427075f9ac9fb4aea1af530742b7f (diff) | |
download | linux-ebf0b6a8b1e445d2be66087732aafcda12ab9f59.tar.bz2 |
Merge branch 'fixes' into next
Merge our fixes branch from the 4.15 cycle.
Unusually the fixes branch saw some significant features merged,
notably the RFI flush patches, so we want the code in next to be
tested against that, to avoid any surprises when the two are merged.
There's also some other work on the panic handling that was reverted
in fixes and we now want to do properly in next, which would conflict.
And we also fix a few other minor merge conflicts.
Diffstat (limited to 'arch/powerpc/mm/fault.c')
-rw-r--r-- | arch/powerpc/mm/fault.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/arch/powerpc/mm/fault.c b/arch/powerpc/mm/fault.c index d3a6e0395eaa..866446cf2d9a 100644 --- a/arch/powerpc/mm/fault.c +++ b/arch/powerpc/mm/fault.c @@ -153,6 +153,11 @@ static int bad_key_fault_exception(struct pt_regs *regs, unsigned long address, return __bad_area_nosemaphore(regs, address, SEGV_PKUERR, pkey); } +static noinline int bad_access(struct pt_regs *regs, unsigned long address) +{ + return __bad_area(regs, address, SEGV_ACCERR, 0); +} + static int do_sigbus(struct pt_regs *regs, unsigned long address, unsigned int fault) { @@ -502,7 +507,7 @@ retry: good_area: if (unlikely(access_error(is_write, is_exec, vma))) - return bad_area(regs, address); + return bad_access(regs, address); /* * If for any reason at all we couldn't handle the fault, |