linux/arch/parisc/lib
John David Anglin 91428ca932 parisc: Check region is readable by user in raw_copy_from_user()
Because of the way the _PAGE_READ is handled in the parisc PTE, an
access interruption is not generated when the kernel reads from a
region where the _PAGE_READ is zero. The current code was written
assuming read access faults would also occur in the kernel.

This change adds user access checks to raw_copy_from_user().  The
prober_user() define checks whether user code has read access to
a virtual address. Note that page faults are not handled in the
exception support for the probe instruction. For this reason, we
precede the probe by a ldb access check.

Signed-off-by: John David Anglin <dave.anglin@bell.net>
Signed-off-by: Helge Deller <deller@gmx.de>
Cc: stable@vger.kernel.org # v5.12+
2025-07-25 22:45:23 +02:00
..
bitops.c parisc: add u16 support to cmpxchg() 2024-04-09 22:06:00 -07:00
checksum.c net: checksum: Move from32to16() to generic header 2024-10-30 15:29:59 +01:00
delay.c
io.c parisc: Remove memcpy_fromio 2025-02-03 19:27:00 +01:00
iomap.c parisc: Drop homebrewn io[read|write]64_[lo_hi|hi_lo] 2022-09-23 21:52:27 +02:00
lusercopy.S parisc: Implement __get/put_kernel_nofault() 2021-09-09 22:53:09 +02:00
Makefile Revert "parisc: Add assembly implementations for memset, strlen, strcpy, strncpy and strcat" 2021-08-29 10:13:32 -07:00
memcpy.c parisc: Check region is readable by user in raw_copy_from_user() 2025-07-25 22:45:23 +02:00
memset.c Revert "parisc: Add assembly implementations for memset, strlen, strcpy, strncpy and strcat" 2021-08-29 10:13:32 -07:00
ucmpdi2.c parisc: ucmpdi2: Fix no previous prototype for '__ucmpdi2' warning 2023-08-10 18:34:05 +02:00