]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
s390/uaccess: Define INLINE_COPY_FROM_USER and INLINE_COPY_TO_USER
authorHeiko Carstens <hca@linux.ibm.com>
Tue, 11 Feb 2025 19:19:28 +0000 (20:19 +0100)
committerVasily Gorbik <gor@linux.ibm.com>
Tue, 4 Mar 2025 16:18:03 +0000 (17:18 +0100)
Inline copy_from_user() and copy_to_user(). With the shortened inline
assemblies of raw_copy_to_user() and raw_copy_from_user() the additional
kernel text size is acceptable, considering that this avoids function
calls on hot paths.

This increases the kernel text size by ~90kb (defconfig, gcc 14.2.0):

add/remove: 13/4 grow/shrink: 650/14 up/down: 93484/-3254 (90230)

Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
arch/s390/include/asm/uaccess.h

index 87833f50fa529acebe60038f64d45e6e4b9523ce..333a2afc0d6f10a1ccc155684ec857afe9efdbf7 100644 (file)
@@ -28,6 +28,9 @@ void debug_user_asce(int exit);
 #define uaccess_kmsan_or_inline __always_inline
 #endif
 
+#define INLINE_COPY_FROM_USER
+#define INLINE_COPY_TO_USER
+
 static uaccess_kmsan_or_inline __must_check unsigned long
 raw_copy_from_user(void *to, const void __user *from, unsigned long size)
 {