diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-09-11 20:53:21 +0200 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-09-11 21:42:59 +0200 |
commit | 1d18ef489509314506328b9e464dd47c24c1d68f (patch) | |
tree | 0462ee876e127f9b86afa05e48cfc50d0163cbd4 /include | |
parent | 3ee1afa308f2a38e5d1e2ad3752ad7abcf480da1 (diff) | |
download | op-kernel-dev-1d18ef489509314506328b9e464dd47c24c1d68f.zip op-kernel-dev-1d18ef489509314506328b9e464dd47c24c1d68f.tar.gz |
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: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include')
-rw-r--r-- | include/asm-x86/uaccess.h | 2 | ||||
-rw-r--r-- | include/linux/uaccess.h | 2 |
2 files changed, 1 insertions, 3 deletions
diff --git a/include/asm-x86/uaccess.h b/include/asm-x86/uaccess.h index 39f8420..dc8edb5 100644 --- a/include/asm-x86/uaccess.h +++ b/include/asm-x86/uaccess.h @@ -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: \ diff --git a/include/linux/uaccess.h b/include/linux/uaccess.h index fec6dec..2062293 100644 --- a/include/linux/uaccess.h +++ b/include/linux/uaccess.h @@ -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; \ |