Skip to content

Commit 5458989

Browse files
chleroymaddy-kerneldev
authored andcommitted
powerpc/uaccess: Remove {allow/prevent}_{read/write/read_write}_{from/to/}_user()
The six following functions have become simple single-line fonctions that do not have much added value anymore: - allow_read_from_user() - allow_write_to_user() - allow_read_write_user() - prevent_read_from_user() - prevent_write_to_user() - prevent_read_write_user() Directly call allow_user_access() and prevent_user_access(), it doesn't reduce the readability and it removes unnecessary middle functions. Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu> Signed-off-by: Madhavan Srinivasan <maddy@linux.ibm.com> Link: https://patch.msgid.link/70971f0ba81eab742a120e5bfdeff6b42d08fd98.1766574657.git.chleroy@kernel.org
1 parent e3efbfb commit 5458989

2 files changed

Lines changed: 15 additions & 62 deletions

File tree

arch/powerpc/include/asm/kup.h

Lines changed: 0 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -131,53 +131,6 @@ static __always_inline void kuap_assert_locked(void)
131131
kuap_get_and_assert_locked();
132132
}
133133

134-
static __always_inline void allow_read_from_user(const void __user *from, unsigned long size)
135-
{
136-
allow_user_access(NULL, KUAP_READ);
137-
}
138-
139-
static __always_inline void allow_write_to_user(void __user *to, unsigned long size)
140-
{
141-
allow_user_access(to, KUAP_WRITE);
142-
}
143-
144-
static __always_inline void allow_read_write_user(void __user *to, const void __user *from,
145-
unsigned long size)
146-
{
147-
allow_user_access(to, KUAP_READ_WRITE);
148-
}
149-
150-
static __always_inline void prevent_read_from_user(const void __user *from, unsigned long size)
151-
{
152-
prevent_user_access(KUAP_READ);
153-
}
154-
155-
static __always_inline void prevent_write_to_user(void __user *to, unsigned long size)
156-
{
157-
prevent_user_access(KUAP_WRITE);
158-
}
159-
160-
static __always_inline void prevent_read_write_user(void __user *to, const void __user *from,
161-
unsigned long size)
162-
{
163-
prevent_user_access(KUAP_READ_WRITE);
164-
}
165-
166-
static __always_inline void prevent_current_access_user(void)
167-
{
168-
prevent_user_access(KUAP_READ_WRITE);
169-
}
170-
171-
static __always_inline void prevent_current_read_from_user(void)
172-
{
173-
prevent_user_access(KUAP_READ);
174-
}
175-
176-
static __always_inline void prevent_current_write_to_user(void)
177-
{
178-
prevent_user_access(KUAP_WRITE);
179-
}
180-
181134
#endif /* !__ASSEMBLER__ */
182135

183136
#endif /* _ASM_POWERPC_KUAP_H_ */

arch/powerpc/include/asm/uaccess.h

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -45,14 +45,14 @@
4545
do { \
4646
__label__ __pu_failed; \
4747
\
48-
allow_write_to_user(__pu_addr, __pu_size); \
48+
allow_user_access(__pu_addr, KUAP_WRITE); \
4949
__put_user_size_goto(__pu_val, __pu_addr, __pu_size, __pu_failed); \
50-
prevent_write_to_user(__pu_addr, __pu_size); \
50+
prevent_user_access(KUAP_WRITE); \
5151
__pu_err = 0; \
5252
break; \
5353
\
5454
__pu_failed: \
55-
prevent_write_to_user(__pu_addr, __pu_size); \
55+
prevent_user_access(KUAP_WRITE); \
5656
__pu_err = -EFAULT; \
5757
} while (0); \
5858
\
@@ -302,9 +302,9 @@ do { \
302302
\
303303
might_fault(); \
304304
barrier_nospec(); \
305-
allow_read_from_user(__gu_addr, __gu_size); \
305+
allow_user_access(NULL, KUAP_READ); \
306306
__get_user_size_allowed(__gu_val, __gu_addr, __gu_size, __gu_err); \
307-
prevent_read_from_user(__gu_addr, __gu_size); \
307+
prevent_user_access(KUAP_READ); \
308308
(x) = (__typeof__(*(ptr)))__gu_val; \
309309
\
310310
__gu_err; \
@@ -331,9 +331,9 @@ raw_copy_in_user(void __user *to, const void __user *from, unsigned long n)
331331
unsigned long ret;
332332

333333
barrier_nospec();
334-
allow_read_write_user(to, from, n);
334+
allow_user_access(to, KUAP_READ_WRITE);
335335
ret = __copy_tofrom_user(to, from, n);
336-
prevent_read_write_user(to, from, n);
336+
prevent_user_access(KUAP_READ_WRITE);
337337
return ret;
338338
}
339339
#endif /* __powerpc64__ */
@@ -343,9 +343,9 @@ static inline unsigned long raw_copy_from_user(void *to,
343343
{
344344
unsigned long ret;
345345

346-
allow_read_from_user(from, n);
346+
allow_user_access(NULL, KUAP_READ);
347347
ret = __copy_tofrom_user((__force void __user *)to, from, n);
348-
prevent_read_from_user(from, n);
348+
prevent_user_access(KUAP_READ);
349349
return ret;
350350
}
351351

@@ -354,9 +354,9 @@ raw_copy_to_user(void __user *to, const void *from, unsigned long n)
354354
{
355355
unsigned long ret;
356356

357-
allow_write_to_user(to, n);
357+
allow_user_access(to, KUAP_WRITE);
358358
ret = __copy_tofrom_user(to, (__force const void __user *)from, n);
359-
prevent_write_to_user(to, n);
359+
prevent_user_access(KUAP_WRITE);
360360
return ret;
361361
}
362362

@@ -367,9 +367,9 @@ static inline unsigned long __clear_user(void __user *addr, unsigned long size)
367367
unsigned long ret;
368368

369369
might_fault();
370-
allow_write_to_user(addr, size);
370+
allow_user_access(addr, KUAP_WRITE);
371371
ret = __arch_clear_user(addr, size);
372-
prevent_write_to_user(addr, size);
372+
prevent_user_access(KUAP_WRITE);
373373
return ret;
374374
}
375375

@@ -397,9 +397,9 @@ copy_mc_to_user(void __user *to, const void *from, unsigned long n)
397397
{
398398
if (check_copy_size(from, n, true)) {
399399
if (access_ok(to, n)) {
400-
allow_write_to_user(to, n);
400+
allow_user_access(to, KUAP_WRITE);
401401
n = copy_mc_generic((void __force *)to, from, n);
402-
prevent_write_to_user(to, n);
402+
prevent_user_access(KUAP_WRITE);
403403
}
404404
}
405405

0 commit comments

Comments
 (0)