The ptr is a pointer to userspace memory. So we need annotate it with
__user otherwise we may get sparse warnings like:

drivers/vhost/vhost.c:1603:13: sparse: sparse: incorrect type in initializer 
(different address spaces) @@    expected void const *__gu_ptr @@    got 
unsigned int [noderef] [usertypvoid const *__gu_ptr @@
drivers/vhost/vhost.c:1603:13: sparse:    expected void const *__gu_ptr
drivers/vhost/vhost.c:1603:13: sparse:    got unsigned int [noderef] [usertype] 
<asn:1> *idxp

Cc: Geert Uytterhoeven <[email protected]>
Cc: [email protected]
Cc: [email protected]
Reported-by: kbuild test robot <[email protected]>
Signed-off-by: Jason Wang <[email protected]>
---
 arch/m68k/include/asm/uaccess_mm.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/m68k/include/asm/uaccess_mm.h 
b/arch/m68k/include/asm/uaccess_mm.h
index 7e85de984df1..9ae9f8d05925 100644
--- a/arch/m68k/include/asm/uaccess_mm.h
+++ b/arch/m68k/include/asm/uaccess_mm.h
@@ -142,7 +142,7 @@ asm volatile ("\n"                                  \
                __get_user_asm(__gu_err, x, ptr, u32, l, r, -EFAULT);   \
                break;                                                  \
        case 8: {                                                       \
-               const void *__gu_ptr = (ptr);                           \
+               const void __user *__gu_ptr = (ptr);                    \
                union {                                                 \
                        u64 l;                                          \
                        __typeof__(*(ptr)) t;                           \
-- 
2.20.1

Reply via email to