powerpc/32s: fix allow/prevent_user_access() when crossing segment boundaries.
authorChristophe Leroy <christophe.leroy@c-s.fr>
Mon, 14 Oct 2019 16:51:28 +0000 (16:51 +0000)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 16 Oct 2019 21:57:43 +0000 (08:57 +1100)
commitd10f60ae27d26d811e2a1bb39ded47df96d7499f
tree04055f423810aea371f77a733419234e78f070f5
parent2272905a4580f26630f7d652cc33935b59f96d4c
powerpc/32s: fix allow/prevent_user_access() when crossing segment boundaries.

Make sure starting addr is aligned to segment boundary so that when
incrementing the segment, the starting address of the new segment is
below the end address. Otherwise the last segment might get  missed.

Fixes: a68c31fc01ef ("powerpc/32s: Implement Kernel Userspace Access Protection")
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/067a1b09f15f421d40797c2d04c22d4049a1cee8.1571071875.git.christophe.leroy@c-s.fr
arch/powerpc/include/asm/book3s/32/kup.h