From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by dpdk.org (Postfix, from userid 1017) id 63E657CC8; Tue, 23 May 2017 09:22:32 +0200 (CEST) In-Reply-To: <1495523581-56027-6-git-send-email-wei.zhao1@intel.com> References: <1495523581-56027-6-git-send-email-wei.zhao1@intel.com> To: test-report@dpdk.org Cc: zhao wei Message-Id: <20170523072232.63E657CC8@dpdk.org> Date: Tue, 23 May 2017 09:22:32 +0200 (CEST) From: checkpatch@dpdk.org Subject: [dpdk-test-report] |WARNING| pw24461 [PATCH 05/11] net/e1000: parse n-tuple filter X-BeenThere: test-report@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: automatic DPDK test reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 23 May 2017 07:22:32 -0000 Test-Label: checkpatch Test-Status: WARNING http://dpdk.org/patch/24461 _coding style issues_ WARNING:MACRO_WITH_FLOW_CONTROL: Macros with flow control statements should be avoided #46: FILE: drivers/net/e1000/e1000_ethdev.h:146: +#define MAC_TYPE_FILTER_SUP(type) do {\ + if ((type) != e1000_82580 && (type) != e1000_i350 &&\ + (type) != e1000_82576)\ + return -ENOTSUP;\ +} while (0) CHECK:MACRO_ARG_REUSE: Macro argument reuse 'item' - possible side-effects? #170: FILE: drivers/net/e1000/igb_flow.c:62: +#define NEXT_ITEM_OF_PATTERN(item, pattern, index)\ + do { \ + item = pattern + index;\ + while (item->type == RTE_FLOW_ITEM_TYPE_VOID) {\ + index++; \ + item = pattern + index; \ + } \ + } while (0) CHECK:MACRO_ARG_REUSE: Macro argument reuse 'pattern' - possible side-effects? #170: FILE: drivers/net/e1000/igb_flow.c:62: +#define NEXT_ITEM_OF_PATTERN(item, pattern, index)\ + do { \ + item = pattern + index;\ + while (item->type == RTE_FLOW_ITEM_TYPE_VOID) {\ + index++; \ + item = pattern + index; \ + } \ + } while (0) CHECK:MACRO_ARG_PRECEDENCE: Macro argument 'pattern' may be better as '(pattern)' to avoid precedence issues #170: FILE: drivers/net/e1000/igb_flow.c:62: +#define NEXT_ITEM_OF_PATTERN(item, pattern, index)\ + do { \ + item = pattern + index;\ + while (item->type == RTE_FLOW_ITEM_TYPE_VOID) {\ + index++; \ + item = pattern + index; \ + } \ + } while (0) CHECK:MACRO_ARG_REUSE: Macro argument reuse 'index' - possible side-effects? #170: FILE: drivers/net/e1000/igb_flow.c:62: +#define NEXT_ITEM_OF_PATTERN(item, pattern, index)\ + do { \ + item = pattern + index;\ + while (item->type == RTE_FLOW_ITEM_TYPE_VOID) {\ + index++; \ + item = pattern + index; \ + } \ + } while (0) CHECK:MACRO_ARG_PRECEDENCE: Macro argument 'index' may be better as '(index)' to avoid precedence issues #170: FILE: drivers/net/e1000/igb_flow.c:62: +#define NEXT_ITEM_OF_PATTERN(item, pattern, index)\ + do { \ + item = pattern + index;\ + while (item->type == RTE_FLOW_ITEM_TYPE_VOID) {\ + index++; \ + item = pattern + index; \ + } \ + } while (0) CHECK:MACRO_ARG_REUSE: Macro argument reuse 'act' - possible side-effects? #179: FILE: drivers/net/e1000/igb_flow.c:71: +#define NEXT_ITEM_OF_ACTION(act, actions, index)\ + do { \ + act = actions + index; \ + while (act->type == RTE_FLOW_ACTION_TYPE_VOID) {\ + index++; \ + act = actions + index; \ + } \ + } while (0) CHECK:MACRO_ARG_REUSE: Macro argument reuse 'actions' - possible side-effects? #179: FILE: drivers/net/e1000/igb_flow.c:71: +#define NEXT_ITEM_OF_ACTION(act, actions, index)\ + do { \ + act = actions + index; \ + while (act->type == RTE_FLOW_ACTION_TYPE_VOID) {\ + index++; \ + act = actions + index; \ + } \ + } while (0) CHECK:MACRO_ARG_PRECEDENCE: Macro argument 'actions' may be better as '(actions)' to avoid precedence issues #179: FILE: drivers/net/e1000/igb_flow.c:71: +#define NEXT_ITEM_OF_ACTION(act, actions, index)\ + do { \ + act = actions + index; \ + while (act->type == RTE_FLOW_ACTION_TYPE_VOID) {\ + index++; \ + act = actions + index; \ + } \ + } while (0) CHECK:MACRO_ARG_REUSE: Macro argument reuse 'index' - possible side-effects? #179: FILE: drivers/net/e1000/igb_flow.c:71: +#define NEXT_ITEM_OF_ACTION(act, actions, index)\ + do { \ + act = actions + index; \ + while (act->type == RTE_FLOW_ACTION_TYPE_VOID) {\ + index++; \ + act = actions + index; \ + } \ + } while (0) CHECK:MACRO_ARG_PRECEDENCE: Macro argument 'index' may be better as '(index)' to avoid precedence issues #179: FILE: drivers/net/e1000/igb_flow.c:71: +#define NEXT_ITEM_OF_ACTION(act, actions, index)\ + do { \ + act = actions + index; \ + while (act->type == RTE_FLOW_ACTION_TYPE_VOID) {\ + index++; \ + act = actions + index; \ + } \ + } while (0) CHECK:BRACES: Blank lines aren't necessary before a close brace '}' #281: FILE: drivers/net/e1000/igb_flow.c:173: + + } WARNING:TABSTOP: Statements should start on a tabstop #296: FILE: drivers/net/e1000/igb_flow.c:188: + return -rte_errno; CHECK:BRACES: Blank lines aren't necessary before a close brace '}' #314: FILE: drivers/net/e1000/igb_flow.c:206: + + } WARNING:SUSPECT_CODE_INDENT: suspect code indent for conditional statements (8, 24) #321: FILE: drivers/net/e1000/igb_flow.c:213: + if (ipv4_mask->hdr.version_ihl || [...] + rte_flow_error_set(error, CHECK:BRACES: Blank lines aren't necessary before a close brace '}' #364: FILE: drivers/net/e1000/igb_flow.c:256: + + } WARNING:MISSING_SPACE: break quoted strings at a space character #568: FILE: drivers/net/e1000/igb_flow.c:460: + NULL, "queue number not" + "supported by ntuple filter"); WARNING:MISSING_SPACE: break quoted strings at a space character #578: FILE: drivers/net/e1000/igb_flow.c:470: + NULL, "queue number not" + "supported by ntuple filter"); WARNING:MISSING_EOF_NEWLINE: adding a line without newline at end of file #617: FILE: drivers/net/e1000/igb_flow.c:509: +}; total: 0 errors, 6 warnings, 13 checks, 568 lines checked