[dpdk-test-report] |WARNING| pw69974 [PATCH v2 1/2] net/ixgbe: fix defects of macro in VF

checkpatch at dpdk.org checkpatch at dpdk.org
Fri May 8 07:00:18 CEST 2020


Test-Label: checkpatch
Test-Status: WARNING
http://dpdk.org/patch/69974

_coding style issues_


CHECK:MACRO_ARG_REUSE: Macro argument reuse 'last' - possible side-effects?
#111: FILE: drivers/net/ixgbe/ixgbe_ethdev.c:405:
+#define UPDATE_VF_STAT_36BIT(lsb, msb, last, cur)               \
+{                                                               \
+	u64 new_lsb = IXGBE_READ_REG(hw, lsb);                  \
+	u64 new_msb = IXGBE_READ_REG(hw, msb);                  \
+	u64 latest = ((new_msb << 32) | new_lsb);               \
+	u64 stat = 0;                                           \
+	if (latest >= last)                                     \
+		stat = latest - last;                           \
+	else                                                    \
+		stat = (u64)((latest +                          \
+			((u64)1 << IXGBE_36_BIT_WIDTH)) - last);\
+	cur += stat & IXGBE_36_BIT_MASK;                        \
+	last = latest;                                          \
 }

CHECK:MACRO_ARG_PRECEDENCE: Macro argument 'last' may be better as '(last)' to avoid precedence issues
#111: FILE: drivers/net/ixgbe/ixgbe_ethdev.c:405:
+#define UPDATE_VF_STAT_36BIT(lsb, msb, last, cur)               \
+{                                                               \
+	u64 new_lsb = IXGBE_READ_REG(hw, lsb);                  \
+	u64 new_msb = IXGBE_READ_REG(hw, msb);                  \
+	u64 latest = ((new_msb << 32) | new_lsb);               \
+	u64 stat = 0;                                           \
+	if (latest >= last)                                     \
+		stat = latest - last;                           \
+	else                                                    \
+		stat = (u64)((latest +                          \
+			((u64)1 << IXGBE_36_BIT_WIDTH)) - last);\
+	cur += stat & IXGBE_36_BIT_MASK;                        \
+	last = latest;                                          \
 }

CHECK:MACRO_ARG_PRECEDENCE: Macro argument 'cur' may be better as '(cur)' to avoid precedence issues
#111: FILE: drivers/net/ixgbe/ixgbe_ethdev.c:405:
+#define UPDATE_VF_STAT_36BIT(lsb, msb, last, cur)               \
+{                                                               \
+	u64 new_lsb = IXGBE_READ_REG(hw, lsb);                  \
+	u64 new_msb = IXGBE_READ_REG(hw, msb);                  \
+	u64 latest = ((new_msb << 32) | new_lsb);               \
+	u64 stat = 0;                                           \
+	if (latest >= last)                                     \
+		stat = latest - last;                           \
+	else                                                    \
+		stat = (u64)((latest +                          \
+			((u64)1 << IXGBE_36_BIT_WIDTH)) - last);\
+	cur += stat & IXGBE_36_BIT_MASK;                        \
+	last = latest;                                          \
 }

total: 0 errors, 0 warnings, 3 checks, 47 lines checked


More information about the test-report mailing list