summary refs log tree commit diff
path: root/arch/sh
diff options
context:
space:
mode:
authorMichael S. Tsirkin <mst@redhat.com>2014-12-12 01:56:04 +0200
committerMichael S. Tsirkin <mst@redhat.com>2015-01-13 15:23:21 +0200
commitcad1c0dfc8961abeb92e5afbfa275b6122501e5f (patch)
tree260b73d0c10d33b9678d9dae8c4c3e99ce59870b /arch/sh
parent079f0f269f2a64080d7fa45cf686b02662ff8e36 (diff)
downloadlinux-cad1c0dfc8961abeb92e5afbfa275b6122501e5f.tar.gz
sh/uaccess: fix sparse errors
virtio wants to read bitwise types from userspace using get_user.  At the
moment this triggers sparse errors, since the value is passed through an
integer.

Fix that up using __force.

Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'arch/sh')
-rw-r--r--arch/sh/include/asm/uaccess.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/sh/include/asm/uaccess.h b/arch/sh/include/asm/uaccess.h
index 9486376605f4..a49635c51266 100644
--- a/arch/sh/include/asm/uaccess.h
+++ b/arch/sh/include/asm/uaccess.h
@@ -60,7 +60,7 @@ struct __large_struct { unsigned long buf[100]; };
 	const __typeof__(*(ptr)) __user *__gu_addr = (ptr);	\
 	__chk_user_ptr(ptr);					\
 	__get_user_size(__gu_val, __gu_addr, (size), __gu_err);	\
-	(x) = (__typeof__(*(ptr)))__gu_val;			\
+	(x) = (__force __typeof__(*(ptr)))__gu_val;		\
 	__gu_err;						\
 })
 
@@ -71,7 +71,7 @@ struct __large_struct { unsigned long buf[100]; };
 	const __typeof__(*(ptr)) *__gu_addr = (ptr);			\
 	if (likely(access_ok(VERIFY_READ, __gu_addr, (size))))		\
 		__get_user_size(__gu_val, __gu_addr, (size), __gu_err);	\
-	(x) = (__typeof__(*(ptr)))__gu_val;				\
+	(x) = (__force __typeof__(*(ptr)))__gu_val;			\
 	__gu_err;							\
 })