On Wed, Feb 16, 2022 at 02:13:28PM +0100, Arnd Bergmann wrote:
From: Arnd Bergmann <arnd@xxxxxxxx> test_kernel_ptr() uses access_ok() to figure out if a given address points to user space instead of kernel space. However on architectures that set CONFIG_ALTERNATE_USER_ADDRESS_SPACE, a pointer can be valid for both, and the check always fails because access_ok() returns true. Make the check for user space pointers conditional on the type of address space layout.
What is this code even trying to do? It looks extremly broken.