From: checkpatch@dpdk.org
To: test-report@dpdk.org
Cc: Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com>
Subject: [dpdk-test-report] |WARNING| pw68399 [PATCH v3 12/34] net/bnxt: add EM/EEM functionality
Date: Tue, 14 Apr 2020 10:18:13 +0200 (CEST) [thread overview]
Message-ID: <20200414081813.F33E31C1FA@dpdk.org> (raw)
In-Reply-To: <1586852011-37536-13-git-send-email-venkatkumar.duvvuru@broadcom.com>
Test-Label: checkpatch
Test-Status: WARNING
http://dpdk.org/patch/68399
_coding style issues_
CHECK:MACRO_ARG_REUSE: Macro argument reuse 'x' - possible side-effects?
#145: FILE: drivers/net/bnxt/tf_core/lookup3.h:16:
+#define rot(x, k) (((x) << (k)) | ((x) >> (32 - (k))))
CHECK:MACRO_ARG_REUSE: Macro argument reuse 'k' - possible side-effects?
#145: FILE: drivers/net/bnxt/tf_core/lookup3.h:16:
+#define rot(x, k) (((x) << (k)) | ((x) >> (32 - (k))))
CHECK:MACRO_ARG_REUSE: Macro argument reuse 'a' - possible side-effects?
#188: FILE: drivers/net/bnxt/tf_core/lookup3.h:59:
+#define mix(a, b, c) \
+{ \
+ (a) -= (c); (a) ^= rot((c), 4); (c) += b; \
+ (b) -= (a); (b) ^= rot((a), 6); (a) += c; \
+ (c) -= (b); (c) ^= rot((b), 8); (b) += a; \
+ (a) -= (c); (a) ^= rot((c), 16); (c) += b; \
+ (b) -= (a); (b) ^= rot((a), 19); (a) += c; \
+ (c) -= (b); (c) ^= rot((b), 4); (b) += a; \
+}
CHECK:MACRO_ARG_REUSE: Macro argument reuse 'b' - possible side-effects?
#188: FILE: drivers/net/bnxt/tf_core/lookup3.h:59:
+#define mix(a, b, c) \
+{ \
+ (a) -= (c); (a) ^= rot((c), 4); (c) += b; \
+ (b) -= (a); (b) ^= rot((a), 6); (a) += c; \
+ (c) -= (b); (c) ^= rot((b), 8); (b) += a; \
+ (a) -= (c); (a) ^= rot((c), 16); (c) += b; \
+ (b) -= (a); (b) ^= rot((a), 19); (a) += c; \
+ (c) -= (b); (c) ^= rot((b), 4); (b) += a; \
+}
CHECK:MACRO_ARG_REUSE: Macro argument reuse 'c' - possible side-effects?
#188: FILE: drivers/net/bnxt/tf_core/lookup3.h:59:
+#define mix(a, b, c) \
+{ \
+ (a) -= (c); (a) ^= rot((c), 4); (c) += b; \
+ (b) -= (a); (b) ^= rot((a), 6); (a) += c; \
+ (c) -= (b); (c) ^= rot((b), 8); (b) += a; \
+ (a) -= (c); (a) ^= rot((c), 16); (c) += b; \
+ (b) -= (a); (b) ^= rot((a), 19); (a) += c; \
+ (c) -= (b); (c) ^= rot((b), 4); (b) += a; \
+}
CHECK:MACRO_ARG_REUSE: Macro argument reuse 'a' - possible side-effects?
#222: FILE: drivers/net/bnxt/tf_core/lookup3.h:93:
+#define final(a, b, c) \
+{ \
+ (c) ^= (b); (c) -= rot((b), 14); \
+ (a) ^= (c); (a) -= rot((c), 11); \
+ (b) ^= (a); (b) -= rot((a), 25); \
+ (c) ^= (b); (c) -= rot((b), 16); \
+ (a) ^= (c); (a) -= rot((c), 4); \
+ (b) ^= (a); (b) -= rot((a), 14); \
+ (c) ^= (b); (c) -= rot((b), 24); \
+}
CHECK:MACRO_ARG_REUSE: Macro argument reuse 'b' - possible side-effects?
#222: FILE: drivers/net/bnxt/tf_core/lookup3.h:93:
+#define final(a, b, c) \
+{ \
+ (c) ^= (b); (c) -= rot((b), 14); \
+ (a) ^= (c); (a) -= rot((c), 11); \
+ (b) ^= (a); (b) -= rot((a), 25); \
+ (c) ^= (b); (c) -= rot((b), 16); \
+ (a) ^= (c); (a) -= rot((c), 4); \
+ (b) ^= (a); (b) -= rot((a), 14); \
+ (c) ^= (b); (c) -= rot((b), 24); \
+}
CHECK:MACRO_ARG_REUSE: Macro argument reuse 'c' - possible side-effects?
#222: FILE: drivers/net/bnxt/tf_core/lookup3.h:93:
+#define final(a, b, c) \
+{ \
+ (c) ^= (b); (c) -= rot((b), 14); \
+ (a) ^= (c); (a) -= rot((c), 11); \
+ (b) ^= (a); (b) -= rot((a), 25); \
+ (c) ^= (b); (c) -= rot((b), 16); \
+ (a) ^= (c); (a) -= rot((c), 4); \
+ (b) ^= (a); (b) -= rot((a), 14); \
+ (c) ^= (b); (c) -= rot((b), 24); \
+}
WARNING:MISSING_BREAK: Possible switch case/default not preceded by break or fallthrough comment
#283: FILE: drivers/net/bnxt/tf_core/lookup3.h:154:
+ case 0: /* case 0: nothing left to add */
CHECK:MACRO_ARG_REUSE: Macro argument reuse 'crc' - possible side-effects?
#1183: FILE: drivers/net/bnxt/tf_core/tf_em.c:40:
+#define ucrc32(ch, crc) (crc32tbl[((crc) ^ (ch)) & 0xff] ^ ((crc) >> 8))
WARNING:LONG_LINE: line over 90 characters
#1530: FILE: drivers/net/bnxt/tf_core/tf_em.c:387:
+ mask = tf_em_get_key_mask(tbl_scope_cb->em_ctx_info[parms->dir].em_tables[KEY0_TABLE].num_entries);
CHECK:MACRO_ARG_REUSE: Macro argument reuse 'flow_handle' - possible side-effects?
#1816: FILE: drivers/net/bnxt/tf_core/tf_ext_flow_handle.h:29:
+#define TF_GET_FIELDS_FROM_FLOW_HANDLE(flow_handle, \
+ num_key_entries, \
+ flow_type, \
+ flags, \
+ index, \
+ entry_num, \
+ hash_type) \
+do { \
+ (num_key_entries) = \
+ (((flow_handle) & TF_NUM_KEY_ENTRIES_FLOW_HANDLE_MASK) >> \
+ TF_NUM_KEY_ENTRIES_FLOW_HANDLE_SFT); \
+ (flow_type) = (((flow_handle) & TF_FLOW_TYPE_FLOW_HANDLE_MASK) >> \
+ TF_FLOW_TYPE_FLOW_HANDLE_SFT); \
+ (flags) = (((flow_handle) & TF_FLAGS_FLOW_HANDLE_MASK) >> \
+ TF_FLAGS_FLOW_HANDLE_SFT); \
+ (index) = (((flow_handle) & TF_INDEX_FLOW_HANDLE_MASK) >> \
+ TF_INDEX_FLOW_HANDLE_SFT); \
+ (entry_num) = (((flow_handle) & TF_ENTRY_NUM_FLOW_HANDLE_MASK) >> \
+ TF_ENTRY_NUM_FLOW_HANDLE_SFT); \
+ (hash_type) = (((flow_handle) & TF_HASH_TYPE_FLOW_HANDLE_MASK) >> \
+ TF_HASH_TYPE_FLOW_HANDLE_SFT); \
+} while (0)
CHECK:MACRO_ARG_REUSE: Macro argument reuse 'flow_handle' - possible side-effects?
#1839: FILE: drivers/net/bnxt/tf_core/tf_ext_flow_handle.h:52:
+#define TF_SET_FIELDS_IN_FLOW_HANDLE(flow_handle, \
+ num_key_entries, \
+ flow_type, \
+ flags, \
+ index, \
+ entry_num, \
+ hash_type) \
+do { \
+ (flow_handle) &= ~TF_FLOW_HANDLE_MASK; \
+ (flow_handle) |= \
+ (((num_key_entries) << TF_NUM_KEY_ENTRIES_FLOW_HANDLE_SFT) & \
+ TF_NUM_KEY_ENTRIES_FLOW_HANDLE_MASK); \
+ (flow_handle) |= (((flow_type) << TF_FLOW_TYPE_FLOW_HANDLE_SFT) & \
+ TF_FLOW_TYPE_FLOW_HANDLE_MASK); \
+ (flow_handle) |= (((flags) << TF_FLAGS_FLOW_HANDLE_SFT) & \
+ TF_FLAGS_FLOW_HANDLE_MASK); \
+ (flow_handle) |= ((((uint64_t)index) << TF_INDEX_FLOW_HANDLE_SFT) & \
+ TF_INDEX_FLOW_HANDLE_MASK); \
+ (flow_handle) |= \
+ ((((uint64_t)entry_num) << TF_ENTRY_NUM_FLOW_HANDLE_SFT) & \
+ TF_ENTRY_NUM_FLOW_HANDLE_MASK); \
+ (flow_handle) |= \
+ ((((uint64_t)hash_type) << TF_HASH_TYPE_FLOW_HANDLE_SFT) & \
+ TF_HASH_TYPE_FLOW_HANDLE_MASK); \
+} while (0)
WARNING:SINGLE_STATEMENT_DO_WHILE_MACRO: Single statement macros should not use a do {} while (0) loop
#1866: FILE: drivers/net/bnxt/tf_core/tf_ext_flow_handle.h:79:
+#define TF_GET_INDEX_FROM_FLOW_HANDLE(flow_handle, \
+ index) \
+do { \
+ index = (((flow_handle) & TF_INDEX_FLOW_HANDLE_MASK) >> \
+ TF_INDEX_FLOW_HANDLE_SFT); \
+} while (0)
WARNING:SINGLE_STATEMENT_DO_WHILE_MACRO: Single statement macros should not use a do {} while (0) loop
#1873: FILE: drivers/net/bnxt/tf_core/tf_ext_flow_handle.h:86:
+#define TF_GET_HASH_TYPE_FROM_FLOW_HANDLE(flow_handle, \
+ hash_type) \
+do { \
+ hash_type = (((flow_handle) & TF_HASH_TYPE_FLOW_HANDLE_MASK) >> \
+ TF_HASH_TYPE_FLOW_HANDLE_SFT); \
+} while (0)
CHECK:MACRO_ARG_REUSE: Macro argument reuse 'flow_id' - possible side-effects?
#1890: FILE: drivers/net/bnxt/tf_core/tf_ext_flow_handle.h:103:
+#define TF_SET_FLOW_ID(flow_id, gfid, flag, dir) \
+do { \
+ (flow_id) &= ~(TF_GFID_FLOW_ID_MASK | \
+ TF_FLAG_FLOW_ID_MASK | \
+ TF_DIR_FLOW_ID_MASK); \
+ (flow_id) |= (((gfid) << TF_GFID_FLOW_ID_SFT) & \
+ TF_GFID_FLOW_ID_MASK) | \
+ (((flag) << TF_FLAG_FLOW_ID_SFT) & \
+ TF_FLAG_FLOW_ID_MASK) | \
+ (((dir) << TF_DIR_FLOW_ID_SFT) & \
+ TF_DIR_FLOW_ID_MASK); \
+} while (0)
WARNING:SINGLE_STATEMENT_DO_WHILE_MACRO: Single statement macros should not use a do {} while (0) loop
#1903: FILE: drivers/net/bnxt/tf_core/tf_ext_flow_handle.h:116:
+#define TF_GET_GFID_FROM_FLOW_ID(flow_id, gfid) \
+do { \
+ gfid = (((flow_id) & TF_GFID_FLOW_ID_MASK) >> \
+ TF_GFID_FLOW_ID_SFT); \
+} while (0)
WARNING:SINGLE_STATEMENT_DO_WHILE_MACRO: Single statement macros should not use a do {} while (0) loop
#1909: FILE: drivers/net/bnxt/tf_core/tf_ext_flow_handle.h:122:
+#define TF_GET_DIR_FROM_FLOW_ID(flow_id, dir) \
+do { \
+ dir = (((flow_id) & TF_DIR_FLOW_ID_MASK) >> \
+ TF_DIR_FLOW_ID_SFT); \
+} while (0)
WARNING:SINGLE_STATEMENT_DO_WHILE_MACRO: Single statement macros should not use a do {} while (0) loop
#1915: FILE: drivers/net/bnxt/tf_core/tf_ext_flow_handle.h:128:
+#define TF_GET_FLAG_FROM_FLOW_ID(flow_id, flag) \
+do { \
+ flag = (((flow_id) & TF_FLAG_FLOW_ID_MASK) >> \
+ TF_FLAG_FLOW_ID_SFT); \
+} while (0)
WARNING:SINGLE_STATEMENT_DO_WHILE_MACRO: Single statement macros should not use a do {} while (0) loop
#1932: FILE: drivers/net/bnxt/tf_core/tf_ext_flow_handle.h:145:
+#define TF_SET_GFID(gfid, index, type) \
+do { \
+ gfid = (((index) << TF_HASH_INDEX_GFID_SFT) & \
+ TF_HASH_INDEX_GFID_MASK) | \
+ (((type) << TF_HASH_TYPE_GFID_SFT) & \
+ TF_HASH_TYPE_GFID_MASK); \
+} while (0)
WARNING:SINGLE_STATEMENT_DO_WHILE_MACRO: Single statement macros should not use a do {} while (0) loop
#1940: FILE: drivers/net/bnxt/tf_core/tf_ext_flow_handle.h:153:
+#define TF_GET_HASH_INDEX_FROM_GFID(gfid, index) \
+do { \
+ index = (((gfid) & TF_HASH_INDEX_GFID_MASK) >> \
+ TF_HASH_INDEX_GFID_SFT); \
+} while (0)
WARNING:SINGLE_STATEMENT_DO_WHILE_MACRO: Single statement macros should not use a do {} while (0) loop
#1946: FILE: drivers/net/bnxt/tf_core/tf_ext_flow_handle.h:159:
+#define TF_GET_HASH_TYPE_FROM_GFID(gfid, type) \
+do { \
+ type = (((gfid) & TF_HASH_TYPE_GFID_MASK) >> \
+ TF_HASH_TYPE_GFID_SFT); \
+} while (0)
CHECK:CAMELCASE: Avoid CamelCase: <PRIu64>
#2232: FILE: drivers/net/bnxt/tf_core/tf_tbl.c:61:
+ "No map for page %d table %016" PRIu64 "
",
total: 0 errors, 10 warnings, 13 checks, 3919 lines checked
parent reply other threads:[~2020-04-14 8:18 UTC|newest]
Thread overview: expand[flat|nested] mbox.gz Atom feed
[parent not found: <1586852011-37536-13-git-send-email-venkatkumar.duvvuru@broadcom.com>]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200414081813.F33E31C1FA@dpdk.org \
--to=checkpatch@dpdk.org \
--cc=test-report@dpdk.org \
--cc=venkatkumar.duvvuru@broadcom.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).