mirror of
https://github.com/FEX-Emu/linux.git
synced 2024-12-13 20:33:15 +00:00
[PATCH] m68k uaccess __user annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
4b4fcaa1a9
commit
b971018bae
@ -76,7 +76,7 @@ asm volatile ("\n" \
|
||||
break; \
|
||||
case 8: \
|
||||
{ \
|
||||
const void *__pu_ptr = (ptr); \
|
||||
const void __user *__pu_ptr = (ptr); \
|
||||
asm volatile ("\n" \
|
||||
"1: moves.l %2,(%1)+\n" \
|
||||
"2: moves.l %R2,(%1)\n" \
|
||||
@ -125,7 +125,7 @@ asm volatile ("\n" \
|
||||
" .previous" \
|
||||
: "+d" (res), "=&" #reg (__gu_val) \
|
||||
: "m" (*(ptr)), "i" (err)); \
|
||||
(x) = (typeof(*(ptr)))(long)__gu_val; \
|
||||
(x) = (typeof(*(ptr)))(unsigned long)__gu_val; \
|
||||
})
|
||||
|
||||
#define __get_user(x, ptr) \
|
||||
@ -221,16 +221,16 @@ __constant_copy_from_user(void *to, const void __user *from, unsigned long n)
|
||||
|
||||
switch (n) {
|
||||
case 1:
|
||||
__get_user_asm(res, *(u8 *)to, (u8 *)from, u8, b, d, 1);
|
||||
__get_user_asm(res, *(u8 *)to, (u8 __user *)from, u8, b, d, 1);
|
||||
break;
|
||||
case 2:
|
||||
__get_user_asm(res, *(u16 *)to, (u16 *)from, u16, w, d, 2);
|
||||
__get_user_asm(res, *(u16 *)to, (u16 __user *)from, u16, w, d, 2);
|
||||
break;
|
||||
case 3:
|
||||
__constant_copy_from_user_asm(res, to, from, tmp, 3, w, b,);
|
||||
break;
|
||||
case 4:
|
||||
__get_user_asm(res, *(u32 *)to, (u32 *)from, u32, l, r, 4);
|
||||
__get_user_asm(res, *(u32 *)to, (u32 __user *)from, u32, l, r, 4);
|
||||
break;
|
||||
case 5:
|
||||
__constant_copy_from_user_asm(res, to, from, tmp, 5, l, b,);
|
||||
@ -302,16 +302,16 @@ __constant_copy_to_user(void __user *to, const void *from, unsigned long n)
|
||||
|
||||
switch (n) {
|
||||
case 1:
|
||||
__put_user_asm(res, *(u8 *)from, (u8 *)to, b, d, 1);
|
||||
__put_user_asm(res, *(u8 *)from, (u8 __user *)to, b, d, 1);
|
||||
break;
|
||||
case 2:
|
||||
__put_user_asm(res, *(u16 *)from, (u16 *)to, w, d, 2);
|
||||
__put_user_asm(res, *(u16 *)from, (u16 __user *)to, w, d, 2);
|
||||
break;
|
||||
case 3:
|
||||
__constant_copy_to_user_asm(res, to, from, tmp, 3, w, b,);
|
||||
break;
|
||||
case 4:
|
||||
__put_user_asm(res, *(u32 *)from, (u32 *)to, l, r, 4);
|
||||
__put_user_asm(res, *(u32 *)from, (u32 __user *)to, l, r, 4);
|
||||
break;
|
||||
case 5:
|
||||
__constant_copy_to_user_asm(res, to, from, tmp, 5, l, b,);
|
||||
|
Loading…
Reference in New Issue
Block a user