Thread (3 messages) 3 messages, 2 authors, 2017-02-27

Re: [PATCH] asm-generic: Force cast get_user() setting x to 0

From: Stephen Boyd <hidden>
Date: 2017-02-25 01:25:02
Also in: lkml

Quoting Stephen Boyd (2017-02-17 08:52:29)
If we call get_user() with an __le* or __be* type sparse will
complain when we assign the result to 0 on the faulting path.
Let's force cast here so that sparse doesn't complain. This
mirrors what we do in __get_user() as well.

Signed-off-by: Stephen Boyd <redacted>
---

I made a similar fix to arm64 headers, and it looks like asm-generic
would need the same fix.
I suppose we can ignore this. I was using sparse v0.5.0 but it seems
that later versions of sparse don't complain here anymore as Luc has
pointed out.

-Stephen
quoted hunk ↗ jump to hunk
 include/asm-generic/uaccess.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/asm-generic/uaccess.h b/include/asm-generic/uaccess.h
index cc6bb319e464..6352d61df7eb 100644
--- a/include/asm-generic/uaccess.h
+++ b/include/asm-generic/uaccess.h
@@ -227,7 +227,7 @@ extern int __put_user_bad(void) __attribute__((noreturn));
        might_fault();                                          \
        access_ok(VERIFY_READ, __p, sizeof(*ptr)) ?             \
                __get_user((x), (__typeof__(*(ptr)) *)__p) :    \
-               ((x) = (__typeof__(*(ptr)))0,-EFAULT);          \
+               ((x) = (__force __typeof__(*(ptr)))0, -EFAULT); \
 })
 
 #ifndef __get_user_fn
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help