[PATCH] compiler.h: Fix sparse check errors

From: Mauro Carvalho Chehab
Date: Tue Jul 07 2015 - 09:44:27 EST


The #define __pmem was put at the wrong place, inside a
__rcu check. The way it is, if CONFIG_SPARSE_RCU_POINTER is
not defined, it will produce thousands of errors like:

./arch/x86/include/asm/io.h:251:27: error: void declaration
./arch/x86/include/asm/io.h:251:27: error: Expected ; at end of declaration
./arch/x86/include/asm/io.h:251:27: error: got *

making sparse pretty much useless, due to the excess of noise.

So, move the define out of the sparse RCU pointer check.

Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

diff --git a/include/linux/compiler.h b/include/linux/compiler.h
index 7f8ad9593da7..4f85b58b7285 100644
--- a/include/linux/compiler.h
+++ b/include/linux/compiler.h
@@ -21,8 +21,8 @@
# define __rcu __attribute__((noderef, address_space(4)))
#else
# define __rcu
+#endif
# define __pmem __attribute__((noderef, address_space(5)))
-#endif
extern void __chk_user_ptr(const volatile void __user *);
extern void __chk_io_ptr(const volatile void __iomem *);
#else
--
2.4.3

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/