Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

um: Remove __access_ok_vsyscall()

FIXADDR_USER_START and FIXADDR_USER_END are now always zero.

Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
Link: https://patch.msgid.link/20251028-uml-remove-32bit-pseudo-vdso-v1-8-e930063eff5f@weissschuh.net
Signed-off-by: Johannes Berg <johannes.berg@intel.com>

authored by

Thomas Weißschuh and committed by
Johannes Berg
f20e32ff 880f615b

+1 -7
+1 -7
arch/um/include/asm/uaccess.h
··· 15 15 (((unsigned long) (addr) < TASK_SIZE) && \ 16 16 (((unsigned long) (addr) + (size)) < TASK_SIZE)) 17 17 18 - #define __access_ok_vsyscall(addr, size) \ 19 - (((unsigned long) (addr) >= FIXADDR_USER_START) && \ 20 - ((unsigned long) (addr) + (size) <= FIXADDR_USER_END)) 21 - 22 18 #define __addr_range_nowrap(addr, size) \ 23 19 ((unsigned long) (addr) <= ((unsigned long) (addr) + (size))) 24 20 ··· 35 39 static inline int __access_ok(const void __user *ptr, unsigned long size) 36 40 { 37 41 unsigned long addr = (unsigned long)ptr; 38 - return __addr_range_nowrap(addr, size) && 39 - (__under_task_size(addr, size) || 40 - __access_ok_vsyscall(addr, size)); 42 + return __addr_range_nowrap(addr, size) && __under_task_size(addr, size); 41 43 } 42 44 43 45 #define __get_kernel_nofault(dst, src, type, err_label) \