The Debian Jessie 3.16.x kernels (3.16.36-1 and later) modified the the kernel sources to already provide the READ_ONCE and WRITE_ONCE kernel macros. The batman-adv compat helper defines will conflict on such kernels and thus prevent the compilation against these downstream kernels.
Reported-by: Ralf Jung post@ralfj.de Signed-off-by: Sven Eckelmann sven@narfation.org --- Cc: Ralf Jung post+openmesh@ralfj.de
See https://www.open-mesh.org/issues/350 --- compat-include/linux/compiler.h | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/compat-include/linux/compiler.h b/compat-include/linux/compiler.h index 62b6a2f9..45cd49fa 100644 --- a/compat-include/linux/compiler.h +++ b/compat-include/linux/compiler.h @@ -26,11 +26,15 @@
#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 19, 0)
+#ifndef READ_ONCE #define READ_ONCE(x) ACCESS_ONCE(x) +#endif
+#ifndef WRITE_ONCE #define WRITE_ONCE(x, val) ({ \ ACCESS_ONCE(x) = (val); \ }) +#endif
#endif /* < KERNEL_VERSION(3, 19, 0) */
b.a.t.m.a.n@lists.open-mesh.org