diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2016-05-22 20:21:27 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2016-05-22 20:21:27 -0400 |
| commit | bd28b14591b98f696bc9f94c5ba2e598ca487dfd (patch) | |
| tree | 5cd165412fa7dec2dbbac28ff6d8d5b12d3011f4 /kernel | |
| parent | 5b09c3edecd37ec1a52fbd5ae97a19734edc7a77 (diff) | |
x86: remove more uaccess_32.h complexity
I'm looking at trying to possibly merge the 32-bit and 64-bit versions
of the x86 uaccess.h implementation, but first this needs to be cleaned
up.
For example, the 32-bit version of "__copy_from_user_inatomic()" is
mostly the special cases for the constant size, and it's actually almost
never relevant. Most users aren't actually using a constant size
anyway, and the few cases that do small constant copies are better off
just using __get_user() instead.
So get rid of the unnecessary complexity.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel')
| -rw-r--r-- | kernel/events/uprobes.c | 3 | ||||
| -rw-r--r-- | kernel/futex.c | 2 |
2 files changed, 2 insertions, 3 deletions
diff --git a/kernel/events/uprobes.c b/kernel/events/uprobes.c index 7edc95edfaee..c01f733ff2e1 100644 --- a/kernel/events/uprobes.c +++ b/kernel/events/uprobes.c | |||
| @@ -1694,8 +1694,7 @@ static int is_trap_at_addr(struct mm_struct *mm, unsigned long vaddr) | |||
| 1694 | int result; | 1694 | int result; |
| 1695 | 1695 | ||
| 1696 | pagefault_disable(); | 1696 | pagefault_disable(); |
| 1697 | result = __copy_from_user_inatomic(&opcode, (void __user*)vaddr, | 1697 | result = __get_user(opcode, (uprobe_opcode_t __user *)vaddr); |
| 1698 | sizeof(opcode)); | ||
| 1699 | pagefault_enable(); | 1698 | pagefault_enable(); |
| 1700 | 1699 | ||
| 1701 | if (likely(result == 0)) | 1700 | if (likely(result == 0)) |
diff --git a/kernel/futex.c b/kernel/futex.c index c20f06f38ef3..ee25f5ba4aca 100644 --- a/kernel/futex.c +++ b/kernel/futex.c | |||
| @@ -729,7 +729,7 @@ static int get_futex_value_locked(u32 *dest, u32 __user *from) | |||
| 729 | int ret; | 729 | int ret; |
| 730 | 730 | ||
| 731 | pagefault_disable(); | 731 | pagefault_disable(); |
| 732 | ret = __copy_from_user_inatomic(dest, from, sizeof(u32)); | 732 | ret = __get_user(*dest, from); |
| 733 | pagefault_enable(); | 733 | pagefault_enable(); |
| 734 | 734 | ||
| 735 | return ret ? -EFAULT : 0; | 735 | return ret ? -EFAULT : 0; |
