From: Pravin B Shelar Date: Mon, 5 Nov 2012 21:41:02 +0000 (-0800) Subject: datapath: Fix sparse warning for symbol 'BUILD_BUG_ON_NOT_POWER_OF_2' X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=51f4701be1;p=openvswitch datapath: Fix sparse warning for symbol 'BUILD_BUG_ON_NOT_POWER_OF_2' BUILD_BUG_ON_NOT_POWER_OF_2 symbol is moved from kernel.h to bug.h in 3.4. Therefore sparse is giving warning: include/linux/bug.h:15:9: warning: preprocessor token BUILD_BUG_ON_NOT_POWER_OF_2 redefined ovs/datapath/linux/compat/include/linux/kernel.h:44:9: this was the original definition Signed-off-by: Pravin B Shelar Acked-by: Jesse Gross --- diff --git a/datapath/linux/Modules.mk b/datapath/linux/Modules.mk index 8ce61157..14d23a4a 100644 --- a/datapath/linux/Modules.mk +++ b/datapath/linux/Modules.mk @@ -13,6 +13,7 @@ openvswitch_sources += \ linux/compat/time.c \ linux/compat/workqueue.c openvswitch_headers += \ + linux/compat/include/linux/bug.h \ linux/compat/include/linux/compiler.h \ linux/compat/include/linux/compiler-gcc.h \ linux/compat/include/linux/cpumask.h \ diff --git a/datapath/linux/compat/include/linux/kernel.h b/datapath/linux/compat/include/linux/kernel.h index 812f2132..069839bd 100644 --- a/datapath/linux/compat/include/linux/kernel.h +++ b/datapath/linux/compat/include/linux/kernel.h @@ -7,7 +7,11 @@ #endif #include +#if LINUX_VERSION_CODE < KERNEL_VERSION(3,4,0) +/* BUILD_BUG_ON_NOT_POWER_OF_2 definition */ #include +#endif + #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,28) #undef pr_emerg #define pr_emerg(fmt, ...) \ @@ -39,12 +43,6 @@ #define pr_warn pr_warning #endif -#ifndef BUILD_BUG_ON_NOT_POWER_OF_2 -/* Force a compilation error if a constant expression is not a power of 2 */ -#define BUILD_BUG_ON_NOT_POWER_OF_2(n) \ - BUILD_BUG_ON((n) == 0 || (((n) & ((n) - 1)) != 0)) -#endif - #if defined(CONFIG_PREEMPT) && LINUX_VERSION_CODE < KERNEL_VERSION(2,6,21) #error "CONFIG_PREEMPT is broken before 2.6.21--see commit 4498121ca3, \"[NET]: Handle disabled preemption in gfp_any()\"" #endif