eal/ppc: remove the braces in memory barrier macros
authorGowrishankar Muthukrishnan <gowrishankar.m@linux.vnet.ibm.com>
Tue, 30 Jan 2018 10:53:18 +0000 (16:23 +0530)
committerThomas Monjalon <thomas@monjalon.net>
Tue, 30 Jan 2018 13:52:17 +0000 (14:52 +0100)
Calling rte_smp_{w/r}mb macro expands into a compound block, which
would break compiling a else clause following it, if that calling
place has been terminated already with ";", as in below code.
This patch adds { } around this macro to allow compiling else too.

Fixes: d23a6bd04d ("eal/ppc: fix memory barrier for IBM POWER")
Fixes: 05c3fd7110 ("eal/ppc: atomic operations for IBM Power")
Cc: stable@dpdk.org
Signed-off-by: Gowrishankar Muthukrishnan <gowrishankar.m@linux.vnet.ibm.com>
lib/librte_eal/common/include/arch/ppc_64/rte_atomic.h

index f38618f..39fce7b 100644 (file)
@@ -64,9 +64,9 @@ extern "C" {
  * occur before the STORE operations generated after.
  */
 #ifdef RTE_ARCH_64
-#define        rte_wmb() {asm volatile("lwsync" : : : "memory"); }
+#define        rte_wmb() asm volatile("lwsync" : : : "memory")
 #else
-#define        rte_wmb() {asm volatile("sync" : : : "memory"); }
+#define        rte_wmb() asm volatile("sync" : : : "memory")
 #endif
 
 /**
@@ -76,9 +76,9 @@ extern "C" {
  * occur before the LOAD operations generated after.
  */
 #ifdef RTE_ARCH_64
-#define        rte_rmb() {asm volatile("lwsync" : : : "memory"); }
+#define        rte_rmb() asm volatile("lwsync" : : : "memory")
 #else
-#define        rte_rmb() {asm volatile("sync" : : : "memory"); }
+#define        rte_rmb() asm volatile("sync" : : : "memory")
 #endif
 
 #define rte_smp_mb() rte_mb()