aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Borntraeger <borntraeger@de.ibm.com>2015-01-12 12:13:39 +0100
committerChristian Borntraeger <borntraeger@de.ibm.com>2015-01-19 14:15:00 +0100
commitc5b19946eb76c67566aae6a84bf2b10ad59295ea (patch)
treeb52119176597d541599f4c230e1513042ce14b6e
parent378af02b1aecabb3756e19c0cbb8cdd9c3b9637f (diff)
downloadlinux-ACCESS_ONCE.tar.gz
kernel: Fix sparse warning for ACCESS_ONCEfor-linusACCESS_ONCE
Commit 927609d622a3 ("kernel: tighten rules for ACCESS ONCE") results in sparse warnings like "Using plain integer as NULL pointer" - Let's add a type cast to the dummy assignment. To avoid warnings lik "sparse: warning: cast to restricted __hc32" we also use __force on that cast. Fixes: 927609d622a3 ("kernel: tighten rules for ACCESS ONCE") Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
-rw-r--r--include/linux/compiler.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/compiler.h b/include/linux/compiler.h
index 5e186bf6f6c167..7bebf0563d184e 100644
--- a/include/linux/compiler.h
+++ b/include/linux/compiler.h
@@ -461,7 +461,7 @@ static __always_inline void __assign_once_size(volatile void *p, void *res, int
* If possible use READ_ONCE/ASSIGN_ONCE instead.
*/
#define __ACCESS_ONCE(x) ({ \
- __maybe_unused typeof(x) __var = 0; \
+ __maybe_unused typeof(x) __var = (__force typeof(x)) 0; \
(volatile typeof(x) *)&(x); })
#define ACCESS_ONCE(x) (*__ACCESS_ONCE(x))