diff options
author | Anton Arapov <anton@redhat.com> | 2012-09-12 09:18:33 +0200 |
---|---|---|
committer | Anton Arapov <anton@redhat.com> | 2012-09-12 09:19:26 +0200 |
commit | 985ef6b2108ed28ffd5f6630e1e0fce2e2a775f2 (patch) | |
tree | eb9091ebd60e14eea65a9e6b5140f98d88e8a590 /arch/m68k/kernel | |
parent | 1d44b6f3fcf6058fb7c960b7558766967e8028f7 (diff) | |
download | kernel-uprobes-985ef6b2108ed28ffd5f6630e1e0fce2e2a775f2.tar.gz kernel-uprobes-985ef6b2108ed28ffd5f6630e1e0fce2e2a775f2.tar.xz kernel-uprobes-985ef6b2108ed28ffd5f6630e1e0fce2e2a775f2.zip |
fedora kernel: 021ce7bee3cfdcbf16da1256b2c9f40f7e9bbd9ev3.5.3-1
Signed-off-by: Anton Arapov <anton@redhat.com>
Diffstat (limited to 'arch/m68k/kernel')
-rw-r--r-- | arch/m68k/kernel/sys_m68k.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/arch/m68k/kernel/sys_m68k.c b/arch/m68k/kernel/sys_m68k.c index 8623f8dc16f..9a5932ec368 100644 --- a/arch/m68k/kernel/sys_m68k.c +++ b/arch/m68k/kernel/sys_m68k.c @@ -479,9 +479,13 @@ sys_atomic_cmpxchg_32(unsigned long newval, int oldval, int d3, int d4, int d5, goto bad_access; } - mem_value = *mem; + /* + * No need to check for EFAULT; we know that the page is + * present and writable. + */ + __get_user(mem_value, mem); if (mem_value == oldval) - *mem = newval; + __put_user(newval, mem); pte_unmap_unlock(pte, ptl); up_read(&mm->mmap_sem); |