On Thu, 2019-04-18 at 06:51:16 UTC, Michael Ellerman wrote: > From: Russell Currey <rus...@russell.cc> > > Without restoring the IAMR after idle, execution prevention on POWER9 > with Radix MMU is overwritten and the kernel can freely execute > userspace without faulting. > > This is necessary when returning from any stop state that modifies > user state, as well as hypervisor state. > > To test how this fails without this patch, load the lkdtm driver and > do the following: > > $ echo EXEC_USERSPACE > /sys/kernel/debug/provoke-crash/DIRECT > > which won't fault, then boot the kernel with powersave=off, where it > will fault. Applying this patch will fix this. > > Fixes: 3b10d0095a1e ("powerpc/mm/radix: Prevent kernel execution of user > space") > Cc: sta...@vger.kernel.org # v4.10+ > Signed-off-by: Russell Currey <rus...@russell.cc> > Reviewed-by: Akshay Adiga <akshay.ad...@linux.vnet.ibm.com> > Reviewed-by: Nicholas Piggin <npig...@gmail.com> > Signed-off-by: Michael Ellerman <m...@ellerman.id.au>
Series applied to powerpc next. https://git.kernel.org/powerpc/c/a3f3072db6cad40895c585dce65e36aa cheers