Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1d18ef48 authored by Ingo Molnar's avatar Ingo Molnar
Browse files

x86: some lock annotations for user copy paths, v3



- add annotation back to clear_user()
- change probe_kernel_address() to _inatomic*() method

Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent 3ee1afa3
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -148,6 +148,7 @@ do { \
unsigned long
clear_user(void __user *to, unsigned long n)
{
	might_fault();
	if (access_ok(VERIFY_WRITE, to, n))
		__do_clear_user(to, n);
	return n;
+0 −2
Original line number Diff line number Diff line
@@ -267,7 +267,6 @@ extern void __put_user_8(void);
#define __put_user_size(x, ptr, size, retval, errret)			\
do {									\
	retval = 0;							\
	might_fault();							\
	__chk_user_ptr(ptr);						\
	switch (size) {							\
	case 1:								\
@@ -320,7 +319,6 @@ do { \
#define __get_user_size(x, ptr, size, retval, errret)			\
do {									\
	retval = 0;							\
	might_fault();							\
	__chk_user_ptr(ptr);						\
	switch (size) {							\
	case 1:								\
+1 −1
Original line number Diff line number Diff line
@@ -78,7 +78,7 @@ static inline unsigned long __copy_from_user_nocache(void *to,
							\
		set_fs(KERNEL_DS);			\
		pagefault_disable();			\
		ret = __get_user(retval, (__force typeof(retval) __user *)(addr));		\
		ret = __copy_from_user_inatomic((__force typeof(retval) __user *)(addr), &(retval), sizeof(retval));		\
		pagefault_enable();			\
		set_fs(old_fs);				\
		ret;					\