[dpdk-test-report] |WARNING| [PATCH 02/56] net/sfc: import libefx base

checkpatch at dpdk.org checkpatch at dpdk.org
Mon Nov 21 16:11:58 CET 2016


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

_coding style issues_


CHECK:MACRO_ARG_REUSE: Macro argument reuse '_array' - possible side-effects?
#208: FILE: drivers/net/sfc/efx/base/efx.h:45:
+#define	EFX_ARRAY_SIZE(_array)			\
+	(sizeof(_array) / sizeof((_array)[0]))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_type' may be better as '(_type)' to avoid precedence issues
#211: FILE: drivers/net/sfc/efx/base/efx.h:48:
+#define	EFX_FIELD_OFFSET(_type, _field)		\
+	((size_t) &(((_type *)0)->_field))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_field' may be better as '(_field)' to avoid precedence issues
#211: FILE: drivers/net/sfc/efx/base/efx.h:48:
+#define	EFX_FIELD_OFFSET(_type, _field)		\
+	((size_t) &(((_type *)0)->_field))

CHECK:SPACING: No space is necessary after a cast
#212: FILE: drivers/net/sfc/efx/base/efx.h:49:
+	((size_t) &(((_type *)0)->_field))

CHECK:CAMELCASE: Avoid CamelCase: <__checkReturn>
#230: FILE: drivers/net/sfc/efx/base/efx.h:67:
+extern	__checkReturn	efx_rc_t

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#359: FILE: drivers/net/sfc/efx/base/efx.h:196:
+#define	EFX_INTR_SIZE	(sizeof (efx_oword_t))

CHECK:SPACING: spaces preferred around that '*' (ctx:VxV)
#474: FILE: drivers/net/sfc/efx/base/efx.h:311:
+	__in_ecount(6*count)		uint8_t const *addrs,
 	             ^

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_encp' - possible side-effects?
#719: FILE: drivers/net/sfc/efx/base/efx.h:556:
+#define	EFX_PCI_FUNCTION(_encp)	\
+	(EFX_PCI_FUNCTION_IS_PF(_encp) ? (_encp)->enc_pf : (_encp)->enc_vf)

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#803: FILE: drivers/net/sfc/efx/base/efx.h:640:
+#define	EFX_EVQ_SIZE(_nevs)	((_nevs) * sizeof (efx_qword_t))

WARNING:TYPO_SPELLING: 'psuedo' may be misspelled - perhaps 'pseudo'?
#998: FILE: drivers/net/sfc/efx/base/efx.h:835:
+efx_psuedo_hdr_pkt_length_get(

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#1006: FILE: drivers/net/sfc/efx/base/efx.h:843:
+#define	EFX_RXQ_SIZE(_ndescs)		((_ndescs) * sizeof (efx_qword_t))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_dcsize' may be better as '(_dcsize)' to avoid precedence issues
#1009: FILE: drivers/net/sfc/efx/base/efx.h:846:
+#define	EFX_RXQ_DC_NDESCS(_dcsize)	(8 << _dcsize)

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#1085: FILE: drivers/net/sfc/efx/base/efx.h:922:
+#define	EFX_TXQ_SIZE(_ndescs)		((_ndescs) * sizeof (efx_qword_t))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_dcsize' may be better as '(_dcsize)' to avoid precedence issues
#1088: FILE: drivers/net/sfc/efx/base/efx.h:925:
+#define	EFX_TXQ_DC_NDESCS(_dcsize)	(8 << _dcsize)

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1453: FILE: drivers/net/sfc/efx/base/efx_crc32.c:40:
+    0x00000000, 0x77073096, 0xee0e612c, 0x990951ba,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1454: FILE: drivers/net/sfc/efx/base/efx_crc32.c:41:
+    0x076dc419, 0x706af48f, 0xe963a535, 0x9e6495a3,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1455: FILE: drivers/net/sfc/efx/base/efx_crc32.c:42:
+    0x0edb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1456: FILE: drivers/net/sfc/efx/base/efx_crc32.c:43:
+    0x09b64c2b, 0x7eb17cbd, 0xe7b82d07, 0x90bf1d91,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1457: FILE: drivers/net/sfc/efx/base/efx_crc32.c:44:
+    0x1db71064, 0x6ab020f2, 0xf3b97148, 0x84be41de,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1458: FILE: drivers/net/sfc/efx/base/efx_crc32.c:45:
+    0x1adad47d, 0x6ddde4eb, 0xf4d4b551, 0x83d385c7,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1459: FILE: drivers/net/sfc/efx/base/efx_crc32.c:46:
+    0x136c9856, 0x646ba8c0, 0xfd62f97a, 0x8a65c9ec,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1460: FILE: drivers/net/sfc/efx/base/efx_crc32.c:47:
+    0x14015c4f, 0x63066cd9, 0xfa0f3d63, 0x8d080df5,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1461: FILE: drivers/net/sfc/efx/base/efx_crc32.c:48:
+    0x3b6e20c8, 0x4c69105e, 0xd56041e4, 0xa2677172,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1462: FILE: drivers/net/sfc/efx/base/efx_crc32.c:49:
+    0x3c03e4d1, 0x4b04d447, 0xd20d85fd, 0xa50ab56b,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1463: FILE: drivers/net/sfc/efx/base/efx_crc32.c:50:
+    0x35b5a8fa, 0x42b2986c, 0xdbbbc9d6, 0xacbcf940,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1464: FILE: drivers/net/sfc/efx/base/efx_crc32.c:51:
+    0x32d86ce3, 0x45df5c75, 0xdcd60dcf, 0xabd13d59,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1465: FILE: drivers/net/sfc/efx/base/efx_crc32.c:52:
+    0x26d930ac, 0x51de003a, 0xc8d75180, 0xbfd06116,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1466: FILE: drivers/net/sfc/efx/base/efx_crc32.c:53:
+    0x21b4f4b5, 0x56b3c423, 0xcfba9599, 0xb8bda50f,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1467: FILE: drivers/net/sfc/efx/base/efx_crc32.c:54:
+    0x2802b89e, 0x5f058808, 0xc60cd9b2, 0xb10be924,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1468: FILE: drivers/net/sfc/efx/base/efx_crc32.c:55:
+    0x2f6f7c87, 0x58684c11, 0xc1611dab, 0xb6662d3d,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1469: FILE: drivers/net/sfc/efx/base/efx_crc32.c:56:
+    0x76dc4190, 0x01db7106, 0x98d220bc, 0xefd5102a,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1470: FILE: drivers/net/sfc/efx/base/efx_crc32.c:57:
+    0x71b18589, 0x06b6b51f, 0x9fbfe4a5, 0xe8b8d433,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1471: FILE: drivers/net/sfc/efx/base/efx_crc32.c:58:
+    0x7807c9a2, 0x0f00f934, 0x9609a88e, 0xe10e9818,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1472: FILE: drivers/net/sfc/efx/base/efx_crc32.c:59:
+    0x7f6a0dbb, 0x086d3d2d, 0x91646c97, 0xe6635c01,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1473: FILE: drivers/net/sfc/efx/base/efx_crc32.c:60:
+    0x6b6b51f4, 0x1c6c6162, 0x856530d8, 0xf262004e,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1474: FILE: drivers/net/sfc/efx/base/efx_crc32.c:61:
+    0x6c0695ed, 0x1b01a57b, 0x8208f4c1, 0xf50fc457,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1475: FILE: drivers/net/sfc/efx/base/efx_crc32.c:62:
+    0x65b0d9c6, 0x12b7e950, 0x8bbeb8ea, 0xfcb9887c,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1476: FILE: drivers/net/sfc/efx/base/efx_crc32.c:63:
+    0x62dd1ddf, 0x15da2d49, 0x8cd37cf3, 0xfbd44c65,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1477: FILE: drivers/net/sfc/efx/base/efx_crc32.c:64:
+    0x4db26158, 0x3ab551ce, 0xa3bc0074, 0xd4bb30e2,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1478: FILE: drivers/net/sfc/efx/base/efx_crc32.c:65:
+    0x4adfa541, 0x3dd895d7, 0xa4d1c46d, 0xd3d6f4fb,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1479: FILE: drivers/net/sfc/efx/base/efx_crc32.c:66:
+    0x4369e96a, 0x346ed9fc, 0xad678846, 0xda60b8d0,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1480: FILE: drivers/net/sfc/efx/base/efx_crc32.c:67:
+    0x44042d73, 0x33031de5, 0xaa0a4c5f, 0xdd0d7cc9,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1481: FILE: drivers/net/sfc/efx/base/efx_crc32.c:68:
+    0x5005713c, 0x270241aa, 0xbe0b1010, 0xc90c2086,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1482: FILE: drivers/net/sfc/efx/base/efx_crc32.c:69:
+    0x5768b525, 0x206f85b3, 0xb966d409, 0xce61e49f,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1483: FILE: drivers/net/sfc/efx/base/efx_crc32.c:70:
+    0x5edef90e, 0x29d9c998, 0xb0d09822, 0xc7d7a8b4,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1484: FILE: drivers/net/sfc/efx/base/efx_crc32.c:71:
+    0x59b33d17, 0x2eb40d81, 0xb7bd5c3b, 0xc0ba6cad,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1485: FILE: drivers/net/sfc/efx/base/efx_crc32.c:72:
+    0xedb88320, 0x9abfb3b6, 0x03b6e20c, 0x74b1d29a,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1486: FILE: drivers/net/sfc/efx/base/efx_crc32.c:73:
+    0xead54739, 0x9dd277af, 0x04db2615, 0x73dc1683,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1487: FILE: drivers/net/sfc/efx/base/efx_crc32.c:74:
+    0xe3630b12, 0x94643b84, 0x0d6d6a3e, 0x7a6a5aa8,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1488: FILE: drivers/net/sfc/efx/base/efx_crc32.c:75:
+    0xe40ecf0b, 0x9309ff9d, 0x0a00ae27, 0x7d079eb1,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1489: FILE: drivers/net/sfc/efx/base/efx_crc32.c:76:
+    0xf00f9344, 0x8708a3d2, 0x1e01f268, 0x6906c2fe,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1490: FILE: drivers/net/sfc/efx/base/efx_crc32.c:77:
+    0xf762575d, 0x806567cb, 0x196c3671, 0x6e6b06e7,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1491: FILE: drivers/net/sfc/efx/base/efx_crc32.c:78:
+    0xfed41b76, 0x89d32be0, 0x10da7a5a, 0x67dd4acc,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1492: FILE: drivers/net/sfc/efx/base/efx_crc32.c:79:
+    0xf9b9df6f, 0x8ebeeff9, 0x17b7be43, 0x60b08ed5,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1493: FILE: drivers/net/sfc/efx/base/efx_crc32.c:80:
+    0xd6d6a3e8, 0xa1d1937e, 0x38d8c2c4, 0x4fdff252,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1494: FILE: drivers/net/sfc/efx/base/efx_crc32.c:81:
+    0xd1bb67f1, 0xa6bc5767, 0x3fb506dd, 0x48b2364b,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1495: FILE: drivers/net/sfc/efx/base/efx_crc32.c:82:
+    0xd80d2bda, 0xaf0a1b4c, 0x36034af6, 0x41047a60,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1496: FILE: drivers/net/sfc/efx/base/efx_crc32.c:83:
+    0xdf60efc3, 0xa867df55, 0x316e8eef, 0x4669be79,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1497: FILE: drivers/net/sfc/efx/base/efx_crc32.c:84:
+    0xcb61b38c, 0xbc66831a, 0x256fd2a0, 0x5268e236,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1498: FILE: drivers/net/sfc/efx/base/efx_crc32.c:85:
+    0xcc0c7795, 0xbb0b4703, 0x220216b9, 0x5505262f,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1499: FILE: drivers/net/sfc/efx/base/efx_crc32.c:86:
+    0xc5ba3bbe, 0xb2bd0b28, 0x2bb45a92, 0x5cb36a04,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1500: FILE: drivers/net/sfc/efx/base/efx_crc32.c:87:
+    0xc2d7ffa7, 0xb5d0cf31, 0x2cd99e8b, 0x5bdeae1d,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1501: FILE: drivers/net/sfc/efx/base/efx_crc32.c:88:
+    0x9b64c2b0, 0xec63f226, 0x756aa39c, 0x026d930a,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1502: FILE: drivers/net/sfc/efx/base/efx_crc32.c:89:
+    0x9c0906a9, 0xeb0e363f, 0x72076785, 0x05005713,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1503: FILE: drivers/net/sfc/efx/base/efx_crc32.c:90:
+    0x95bf4a82, 0xe2b87a14, 0x7bb12bae, 0x0cb61b38,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1504: FILE: drivers/net/sfc/efx/base/efx_crc32.c:91:
+    0x92d28e9b, 0xe5d5be0d, 0x7cdcefb7, 0x0bdbdf21,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1505: FILE: drivers/net/sfc/efx/base/efx_crc32.c:92:
+    0x86d3d2d4, 0xf1d4e242, 0x68ddb3f8, 0x1fda836e,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1506: FILE: drivers/net/sfc/efx/base/efx_crc32.c:93:
+    0x81be16cd, 0xf6b9265b, 0x6fb077e1, 0x18b74777,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1507: FILE: drivers/net/sfc/efx/base/efx_crc32.c:94:
+    0x88085ae6, 0xff0f6a70, 0x66063bca, 0x11010b5c,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1508: FILE: drivers/net/sfc/efx/base/efx_crc32.c:95:
+    0x8f659eff, 0xf862ae69, 0x616bffd3, 0x166ccf45,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1509: FILE: drivers/net/sfc/efx/base/efx_crc32.c:96:
+    0xa00ae278, 0xd70dd2ee, 0x4e048354, 0x3903b3c2,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1510: FILE: drivers/net/sfc/efx/base/efx_crc32.c:97:
+    0xa7672661, 0xd06016f7, 0x4969474d, 0x3e6e77db,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1511: FILE: drivers/net/sfc/efx/base/efx_crc32.c:98:
+    0xaed16a4a, 0xd9d65adc, 0x40df0b66, 0x37d83bf0,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1512: FILE: drivers/net/sfc/efx/base/efx_crc32.c:99:
+    0xa9bcae53, 0xdebb9ec5, 0x47b2cf7f, 0x30b5ffe9,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1513: FILE: drivers/net/sfc/efx/base/efx_crc32.c:100:
+    0xbdbdf21c, 0xcabac28a, 0x53b39330, 0x24b4a3a6,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1514: FILE: drivers/net/sfc/efx/base/efx_crc32.c:101:
+    0xbad03605, 0xcdd70693, 0x54de5729, 0x23d967bf,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1515: FILE: drivers/net/sfc/efx/base/efx_crc32.c:102:
+    0xb3667a2e, 0xc4614ab8, 0x5d681b02, 0x2a6f2b94,$

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#1516: FILE: drivers/net/sfc/efx/base/efx_crc32.c:103:
+    0xb40bbe37, 0xc30c8ea1, 0x5a05df1b, 0x2d02ef8d$

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#1534: FILE: drivers/net/sfc/efx/base/efx_crc32.c:121:
+	return (crc);

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_qword' - possible side-effects?
#1577: FILE: drivers/net/sfc/efx/base/efx_ev.c:36:
+#define	EFX_EV_PRESENT(_qword)						\
+	(EFX_QWORD_FIELD((_qword), EFX_DWORD_0) != 0xffffffff &&	\
+	EFX_QWORD_FIELD((_qword), EFX_DWORD_1) != 0xffffffff)

CHECK:BRACES: Blank lines aren't necessary after an open brace '{'
#1599: FILE: drivers/net/sfc/efx/base/efx_ev.c:58:
+	switch (enp->en_family) {
+

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#1608: FILE: drivers/net/sfc/efx/base/efx_ev.c:67:
+	if ((rc = eevop->eevo_init(enp)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#1613: FILE: drivers/net/sfc/efx/base/efx_ev.c:72:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#1623: FILE: drivers/net/sfc/efx/base/efx_ev.c:82:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_nic_cfg
#1658: FILE: drivers/net/sfc/efx/base/efx_ev.c:117:
+	efx_nic_cfg_t *encp = &(enp->en_nic_cfg);

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#1682: FILE: drivers/net/sfc/efx/base/efx_ev.c:141:
+	EFSYS_KMEM_ALLOC(enp->en_esip, sizeof (efx_evq_t), eep);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#1706: FILE: drivers/net/sfc/efx/base/efx_ev.c:165:
+	if ((rc = eevop->eevo_qcreate(enp, index, esmp, n, id, us, flags,

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#1710: FILE: drivers/net/sfc/efx/base/efx_ev.c:169:
+	return (0);

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#1717: FILE: drivers/net/sfc/efx/base/efx_ev.c:176:
+	EFSYS_KMEM_FREE(enp->en_esip, sizeof (efx_evq_t), eep);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#1724: FILE: drivers/net/sfc/efx/base/efx_ev.c:183:
+	return (rc);

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#1742: FILE: drivers/net/sfc/efx/base/efx_ev.c:201:
+	EFSYS_KMEM_FREE(enp->en_esip, sizeof (efx_evq_t), eep);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#1761: FILE: drivers/net/sfc/efx/base/efx_ev.c:220:
+	if ((rc = eevop->eevo_qprime(eep, count)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#1764: FILE: drivers/net/sfc/efx/base/efx_ev.c:223:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#1770: FILE: drivers/net/sfc/efx/base/efx_ev.c:229:
+	return (rc);

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#1783: FILE: drivers/net/sfc/efx/base/efx_ev.c:242:
+	offset = (count & eep->ee_mask) * sizeof (efx_qword_t);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#1786: FILE: drivers/net/sfc/efx/base/efx_ev.c:245:
+	return (EFX_EV_PRESENT(qword));

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#1823: FILE: drivers/net/sfc/efx/base/efx_ev.c:282:
+		offset = (count & eep->ee_mask) * sizeof (efx_qword_t);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around ev[total]
#1825: FILE: drivers/net/sfc/efx/base/efx_ev.c:284:
+			EFSYS_MEM_READQ(eep->ee_esmp, offset, &(ev[total]));

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#1834: FILE: drivers/net/sfc/efx/base/efx_ev.c:293:
+			offset += sizeof (efx_qword_t);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around ev[index]
#1848: FILE: drivers/net/sfc/efx/base/efx_ev.c:307:
+				    &(ev[index]), eecp, arg);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around ev[index]
#1852: FILE: drivers/net/sfc/efx/base/efx_ev.c:311:
+				    &(ev[index]), eecp, arg);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around ev[index]
#1856: FILE: drivers/net/sfc/efx/base/efx_ev.c:315:
+				    &(ev[index]), eecp, arg);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around ev[index]
#1860: FILE: drivers/net/sfc/efx/base/efx_ev.c:319:
+				    &(ev[index]), eecp, arg);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around ev[index]
#1865: FILE: drivers/net/sfc/efx/base/efx_ev.c:324:
+					    &(ev[index]), eecp, arg);

CHECK:SPACING: No space is necessary after a cast
#1878: FILE: drivers/net/sfc/efx/base/efx_ev.c:337:
+				(void) eecp->eec_exception(arg,

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#1895: FILE: drivers/net/sfc/efx/base/efx_ev.c:354:
+		offset = (count & eep->ee_mask) * sizeof (efx_qword_t);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around ev[0]
#1897: FILE: drivers/net/sfc/efx/base/efx_ev.c:356:
+			EFSYS_MEM_WRITEQ(eep->ee_esmp, offset, &(ev[0]));

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#1898: FILE: drivers/net/sfc/efx/base/efx_ev.c:357:
+			offset += sizeof (efx_qword_t);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_nic_cfg
#1930: FILE: drivers/net/sfc/efx/base/efx_ev.c:389:
+	efx_nic_cfg_t *encp = &(enp->en_nic_cfg);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#1942: FILE: drivers/net/sfc/efx/base/efx_ev.c:401:
+	return (0);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#1962: FILE: drivers/net/sfc/efx/base/efx_ev.c:421:
+	if ((rc = eevop->eevo_qmoderate(eep, us)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#1965: FILE: drivers/net/sfc/efx/base/efx_ev.c:424:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#1971: FILE: drivers/net/sfc/efx/base/efx_ev.c:430:
+	return (rc);

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value' - possible side-effects?
#2040: FILE: drivers/net/sfc/efx/base/efx_hash.c:61:
+#define	EFX_HASH_ROTATE(_value, _shift)					\
+	(((_value) << (_shift)) | ((_value) >> (32 - (_shift))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_shift' - possible side-effects?
#2040: FILE: drivers/net/sfc/efx/base/efx_hash.c:61:
+#define	EFX_HASH_ROTATE(_value, _shift)					\
+	(((_value) << (_shift)) | ((_value) >> (32 - (_shift))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_a' - possible side-effects?
#2046: FILE: drivers/net/sfc/efx/base/efx_hash.c:67:
+#define	EFX_HASH_MIX(_a, _b, _c)					\
+	do {								\
+		_a -= _c;						\
+		_a ^= EFX_HASH_ROTATE(_c, 4);				\
+		_c += _b;						\
+		_b -= _a;						\
+		_b ^= EFX_HASH_ROTATE(_a, 6);				\
+		_a += _c;						\
+		_c -= _b;						\
+		_c ^= EFX_HASH_ROTATE(_b, 8);				\
+		_b += _a;						\
+		_a -= _c;						\
+		_a ^= EFX_HASH_ROTATE(_c, 16);				\
+		_c += _b;						\
+		_b -= _a;						\
+		_b ^= EFX_HASH_ROTATE(_a, 19);				\
+		_a += _c;						\
+		_c -= _b;						\
+		_c ^= EFX_HASH_ROTATE(_b, 4);				\
+		_b += _a;						\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_a' may be better as '(_a)' to avoid precedence issues
#2046: FILE: drivers/net/sfc/efx/base/efx_hash.c:67:
+#define	EFX_HASH_MIX(_a, _b, _c)					\
+	do {								\
+		_a -= _c;						\
+		_a ^= EFX_HASH_ROTATE(_c, 4);				\
+		_c += _b;						\
+		_b -= _a;						\
+		_b ^= EFX_HASH_ROTATE(_a, 6);				\
+		_a += _c;						\
+		_c -= _b;						\
+		_c ^= EFX_HASH_ROTATE(_b, 8);				\
+		_b += _a;						\
+		_a -= _c;						\
+		_a ^= EFX_HASH_ROTATE(_c, 16);				\
+		_c += _b;						\
+		_b -= _a;						\
+		_b ^= EFX_HASH_ROTATE(_a, 19);				\
+		_a += _c;						\
+		_c -= _b;						\
+		_c ^= EFX_HASH_ROTATE(_b, 4);				\
+		_b += _a;						\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_b' - possible side-effects?
#2046: FILE: drivers/net/sfc/efx/base/efx_hash.c:67:
+#define	EFX_HASH_MIX(_a, _b, _c)					\
+	do {								\
+		_a -= _c;						\
+		_a ^= EFX_HASH_ROTATE(_c, 4);				\
+		_c += _b;						\
+		_b -= _a;						\
+		_b ^= EFX_HASH_ROTATE(_a, 6);				\
+		_a += _c;						\
+		_c -= _b;						\
+		_c ^= EFX_HASH_ROTATE(_b, 8);				\
+		_b += _a;						\
+		_a -= _c;						\
+		_a ^= EFX_HASH_ROTATE(_c, 16);				\
+		_c += _b;						\
+		_b -= _a;						\
+		_b ^= EFX_HASH_ROTATE(_a, 19);				\
+		_a += _c;						\
+		_c -= _b;						\
+		_c ^= EFX_HASH_ROTATE(_b, 4);				\
+		_b += _a;						\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_c' - possible side-effects?
#2046: FILE: drivers/net/sfc/efx/base/efx_hash.c:67:
+#define	EFX_HASH_MIX(_a, _b, _c)					\
+	do {								\
+		_a -= _c;						\
+		_a ^= EFX_HASH_ROTATE(_c, 4);				\
+		_c += _b;						\
+		_b -= _a;						\
+		_b ^= EFX_HASH_ROTATE(_a, 6);				\
+		_a += _c;						\
+		_c -= _b;						\
+		_c ^= EFX_HASH_ROTATE(_b, 8);				\
+		_b += _a;						\
+		_a -= _c;						\
+		_a ^= EFX_HASH_ROTATE(_c, 16);				\
+		_c += _b;						\
+		_b -= _a;						\
+		_b ^= EFX_HASH_ROTATE(_a, 19);				\
+		_a += _c;						\
+		_c -= _b;						\
+		_c ^= EFX_HASH_ROTATE(_b, 4);				\
+		_b += _a;						\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_a' - possible side-effects?
#2070: FILE: drivers/net/sfc/efx/base/efx_hash.c:91:
+#define	EFX_HASH_FINALISE(_a, _b, _c)					\
+	do {								\
+		_c ^= _b;						\
+		_c -= EFX_HASH_ROTATE(_b, 14);				\
+		_a ^= _c;						\
+		_a -= EFX_HASH_ROTATE(_c, 11);				\
+		_b ^= _a;						\
+		_b -= EFX_HASH_ROTATE(_a, 25);				\
+		_c ^= _b;						\
+		_c -= EFX_HASH_ROTATE(_b, 16);				\
+		_a ^= _c;						\
+		_a -= EFX_HASH_ROTATE(_c, 4);				\
+		_b ^= _a;						\
+		_b -= EFX_HASH_ROTATE(_a, 14);				\
+		_c ^= _b;						\
+		_c -= EFX_HASH_ROTATE(_b, 24);				\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_a' may be better as '(_a)' to avoid precedence issues
#2070: FILE: drivers/net/sfc/efx/base/efx_hash.c:91:
+#define	EFX_HASH_FINALISE(_a, _b, _c)					\
+	do {								\
+		_c ^= _b;						\
+		_c -= EFX_HASH_ROTATE(_b, 14);				\
+		_a ^= _c;						\
+		_a -= EFX_HASH_ROTATE(_c, 11);				\
+		_b ^= _a;						\
+		_b -= EFX_HASH_ROTATE(_a, 25);				\
+		_c ^= _b;						\
+		_c -= EFX_HASH_ROTATE(_b, 16);				\
+		_a ^= _c;						\
+		_a -= EFX_HASH_ROTATE(_c, 4);				\
+		_b ^= _a;						\
+		_b -= EFX_HASH_ROTATE(_a, 14);				\
+		_c ^= _b;						\
+		_c -= EFX_HASH_ROTATE(_b, 24);				\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_b' - possible side-effects?
#2070: FILE: drivers/net/sfc/efx/base/efx_hash.c:91:
+#define	EFX_HASH_FINALISE(_a, _b, _c)					\
+	do {								\
+		_c ^= _b;						\
+		_c -= EFX_HASH_ROTATE(_b, 14);				\
+		_a ^= _c;						\
+		_a -= EFX_HASH_ROTATE(_c, 11);				\
+		_b ^= _a;						\
+		_b -= EFX_HASH_ROTATE(_a, 25);				\
+		_c ^= _b;						\
+		_c -= EFX_HASH_ROTATE(_b, 16);				\
+		_a ^= _c;						\
+		_a -= EFX_HASH_ROTATE(_c, 4);				\
+		_b ^= _a;						\
+		_b -= EFX_HASH_ROTATE(_a, 14);				\
+		_c ^= _b;						\
+		_c -= EFX_HASH_ROTATE(_b, 24);				\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_c' - possible side-effects?
#2070: FILE: drivers/net/sfc/efx/base/efx_hash.c:91:
+#define	EFX_HASH_FINALISE(_a, _b, _c)					\
+	do {								\
+		_c ^= _b;						\
+		_c -= EFX_HASH_ROTATE(_b, 14);				\
+		_a ^= _c;						\
+		_a -= EFX_HASH_ROTATE(_c, 11);				\
+		_b ^= _a;						\
+		_b -= EFX_HASH_ROTATE(_a, 25);				\
+		_c ^= _b;						\
+		_c -= EFX_HASH_ROTATE(_b, 16);				\
+		_a ^= _c;						\
+		_a -= EFX_HASH_ROTATE(_c, 4);				\
+		_b ^= _a;						\
+		_b -= EFX_HASH_ROTATE(_a, 14);				\
+		_c ^= _b;						\
+		_c -= EFX_HASH_ROTATE(_b, 24);				\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_c' may be better as '(_c)' to avoid precedence issues
#2070: FILE: drivers/net/sfc/efx/base/efx_hash.c:91:
+#define	EFX_HASH_FINALISE(_a, _b, _c)					\
+	do {								\
+		_c ^= _b;						\
+		_c -= EFX_HASH_ROTATE(_b, 14);				\
+		_a ^= _c;						\
+		_a -= EFX_HASH_ROTATE(_c, 11);				\
+		_b ^= _a;						\
+		_b -= EFX_HASH_ROTATE(_a, 25);				\
+		_c ^= _b;						\
+		_c -= EFX_HASH_ROTATE(_b, 16);				\
+		_a ^= _c;						\
+		_a -= EFX_HASH_ROTATE(_c, 4);				\
+		_b ^= _a;						\
+		_b -= EFX_HASH_ROTATE(_a, 14);				\
+		_c ^= _b;						\
+		_c -= EFX_HASH_ROTATE(_b, 24);				\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MULTIPLE_ASSIGNMENTS: multiple assignments should be avoided
#2102: FILE: drivers/net/sfc/efx/base/efx_hash.c:123:
+	a = b = c = EFX_HASH_INITIAL_VALUE +

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#2103: FILE: drivers/net/sfc/efx/base/efx_hash.c:124:
+		(((uint32_t)count) * sizeof (uint32_t)) + init;

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#2134: FILE: drivers/net/sfc/efx/base/efx_hash.c:155:
+	return (c);

CHECK:MULTIPLE_ASSIGNMENTS: multiple assignments should be avoided
#2151: FILE: drivers/net/sfc/efx/base/efx_hash.c:172:
+	a = b = c = EFX_HASH_INITIAL_VALUE + (uint32_t)length + init;

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#2217: FILE: drivers/net/sfc/efx/base/efx_hash.c:238:
+	return (c);

CHECK:MULTIPLE_ASSIGNMENTS: multiple assignments should be avoided
#2234: FILE: drivers/net/sfc/efx/base/efx_hash.c:255:
+	a = b = c = EFX_HASH_INITIAL_VALUE + (uint32_t)length + init;

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#2300: FILE: drivers/net/sfc/efx/base/efx_hash.c:321:
+	return (c);

WARNING:LEADING_SPACE: please, no spaces at the start of a line
#2600: FILE: drivers/net/sfc/efx/base/efx_impl.h:287:
+    const efx_ev_callbacks_t *, void *);$

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_dst' - possible side-effects?
#2651: FILE: drivers/net/sfc/efx/base/efx_impl.h:338:
+#define	EFX_MAC_ADDR_COPY(_dst, _src)					\
+	do {								\
+		(_dst)[0] = (_src)[0];					\
+		(_dst)[1] = (_src)[1];					\
+		(_dst)[2] = (_src)[2];					\
+		(_dst)[3] = (_src)[3];					\
+		(_dst)[4] = (_src)[4];					\
+		(_dst)[5] = (_src)[5];					\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_src' - possible side-effects?
#2651: FILE: drivers/net/sfc/efx/base/efx_impl.h:338:
+#define	EFX_MAC_ADDR_COPY(_dst, _src)					\
+	do {								\
+		(_dst)[0] = (_src)[0];					\
+		(_dst)[1] = (_src)[1];					\
+		(_dst)[2] = (_src)[2];					\
+		(_dst)[3] = (_src)[3];					\
+		(_dst)[4] = (_src)[4];					\
+		(_dst)[5] = (_src)[5];					\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

WARNING:MISSING_BREAK: Possible switch case/default not preceeded by break or fallthrough comment
#2684: FILE: drivers/net/sfc/efx/base/efx_impl.h:371:
+		case EFX_FAMILY_HUNTINGTON:				\

WARNING:MISSING_BREAK: Possible switch case/default not preceeded by break or fallthrough comment
#2688: FILE: drivers/net/sfc/efx/base/efx_impl.h:375:
+		case EFX_FAMILY_MEDFORD:				\

WARNING:MISSING_BREAK: Possible switch case/default not preceeded by break or fallthrough comment
#2692: FILE: drivers/net/sfc/efx/base/efx_impl.h:379:
+		default:						\

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_enp' - possible side-effects?
#2708: FILE: drivers/net/sfc/efx/base/efx_impl.h:395:
+#define	EFX_BAR_READD(_enp, _reg, _edp, _lock)				\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_BAR_READD((_enp)->en_esbp, _reg ## _OFST,		\
+		    (_edp), (_lock));					\
+		EFSYS_PROBE3(efx_bar_readd, const char *, #_reg,	\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_edp)->ed_u32[0]);			\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_edp' - possible side-effects?
#2708: FILE: drivers/net/sfc/efx/base/efx_impl.h:395:
+#define	EFX_BAR_READD(_enp, _reg, _edp, _lock)				\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_BAR_READD((_enp)->en_esbp, _reg ## _OFST,		\
+		    (_edp), (_lock));					\
+		EFSYS_PROBE3(efx_bar_readd, const char *, #_reg,	\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_edp)->ed_u32[0]);			\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_enp' - possible side-effects?
#2719: FILE: drivers/net/sfc/efx/base/efx_impl.h:406:
+#define	EFX_BAR_WRITED(_enp, _reg, _edp, _lock)				\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE3(efx_bar_writed, const char *, #_reg,	\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_edp)->ed_u32[0]);			\
+		EFSYS_BAR_WRITED((_enp)->en_esbp, _reg ## _OFST,	\
+		    (_edp), (_lock));					\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_edp' - possible side-effects?
#2719: FILE: drivers/net/sfc/efx/base/efx_impl.h:406:
+#define	EFX_BAR_WRITED(_enp, _reg, _edp, _lock)				\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE3(efx_bar_writed, const char *, #_reg,	\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_edp)->ed_u32[0]);			\
+		EFSYS_BAR_WRITED((_enp)->en_esbp, _reg ## _OFST,	\
+		    (_edp), (_lock));					\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_enp' - possible side-effects?
#2730: FILE: drivers/net/sfc/efx/base/efx_impl.h:417:
+#define	EFX_BAR_READQ(_enp, _reg, _eqp)					\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_BAR_READQ((_enp)->en_esbp, _reg ## _OFST,		\
+		    (_eqp));						\
+		EFSYS_PROBE4(efx_bar_readq, const char *, #_reg,	\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eqp)->eq_u32[1],			\
+		    uint32_t, (_eqp)->eq_u32[0]);			\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_eqp' - possible side-effects?
#2730: FILE: drivers/net/sfc/efx/base/efx_impl.h:417:
+#define	EFX_BAR_READQ(_enp, _reg, _eqp)					\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_BAR_READQ((_enp)->en_esbp, _reg ## _OFST,		\
+		    (_eqp));						\
+		EFSYS_PROBE4(efx_bar_readq, const char *, #_reg,	\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eqp)->eq_u32[1],			\
+		    uint32_t, (_eqp)->eq_u32[0]);			\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_enp' - possible side-effects?
#2742: FILE: drivers/net/sfc/efx/base/efx_impl.h:429:
+#define	EFX_BAR_WRITEQ(_enp, _reg, _eqp)				\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE4(efx_bar_writeq, const char *, #_reg,	\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eqp)->eq_u32[1],			\
+		    uint32_t, (_eqp)->eq_u32[0]);			\
+		EFSYS_BAR_WRITEQ((_enp)->en_esbp, _reg ## _OFST,	\
+		    (_eqp));						\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_eqp' - possible side-effects?
#2742: FILE: drivers/net/sfc/efx/base/efx_impl.h:429:
+#define	EFX_BAR_WRITEQ(_enp, _reg, _eqp)				\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE4(efx_bar_writeq, const char *, #_reg,	\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eqp)->eq_u32[1],			\
+		    uint32_t, (_eqp)->eq_u32[0]);			\
+		EFSYS_BAR_WRITEQ((_enp)->en_esbp, _reg ## _OFST,	\
+		    (_eqp));						\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_enp' - possible side-effects?
#2754: FILE: drivers/net/sfc/efx/base/efx_impl.h:441:
+#define	EFX_BAR_READO(_enp, _reg, _eop)					\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_BAR_READO((_enp)->en_esbp, _reg ## _OFST,		\
+		    (_eop), B_TRUE);					\
+		EFSYS_PROBE6(efx_bar_reado, const char *, #_reg,	\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eop)->eo_u32[3],			\
+		    uint32_t, (_eop)->eo_u32[2],			\
+		    uint32_t, (_eop)->eo_u32[1],			\
+		    uint32_t, (_eop)->eo_u32[0]);			\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_eop' - possible side-effects?
#2754: FILE: drivers/net/sfc/efx/base/efx_impl.h:441:
+#define	EFX_BAR_READO(_enp, _reg, _eop)					\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_BAR_READO((_enp)->en_esbp, _reg ## _OFST,		\
+		    (_eop), B_TRUE);					\
+		EFSYS_PROBE6(efx_bar_reado, const char *, #_reg,	\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eop)->eo_u32[3],			\
+		    uint32_t, (_eop)->eo_u32[2],			\
+		    uint32_t, (_eop)->eo_u32[1],			\
+		    uint32_t, (_eop)->eo_u32[0]);			\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_enp' - possible side-effects?
#2768: FILE: drivers/net/sfc/efx/base/efx_impl.h:455:
+#define	EFX_BAR_WRITEO(_enp, _reg, _eop)				\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE6(efx_bar_writeo, const char *, #_reg,	\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eop)->eo_u32[3],			\
+		    uint32_t, (_eop)->eo_u32[2],			\
+		    uint32_t, (_eop)->eo_u32[1],			\
+		    uint32_t, (_eop)->eo_u32[0]);			\
+		EFSYS_BAR_WRITEO((_enp)->en_esbp, _reg ## _OFST,	\
+		    (_eop), B_TRUE);					\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_eop' - possible side-effects?
#2768: FILE: drivers/net/sfc/efx/base/efx_impl.h:455:
+#define	EFX_BAR_WRITEO(_enp, _reg, _eop)				\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE6(efx_bar_writeo, const char *, #_reg,	\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eop)->eo_u32[3],			\
+		    uint32_t, (_eop)->eo_u32[2],			\
+		    uint32_t, (_eop)->eo_u32[1],			\
+		    uint32_t, (_eop)->eo_u32[0]);			\
+		EFSYS_BAR_WRITEO((_enp)->en_esbp, _reg ## _OFST,	\
+		    (_eop), B_TRUE);					\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_enp' - possible side-effects?
#2782: FILE: drivers/net/sfc/efx/base/efx_impl.h:469:
+#define	EFX_BAR_TBL_READD(_enp, _reg, _index, _edp, _lock)		\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_BAR_READD((_enp)->en_esbp,			\
+		    (_reg ## _OFST + ((_index) * _reg ## _STEP)),	\
+		    (_edp), (_lock));					\
+		EFSYS_PROBE4(efx_bar_tbl_readd, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_edp)->ed_u32[0]);			\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_index' - possible side-effects?
#2782: FILE: drivers/net/sfc/efx/base/efx_impl.h:469:
+#define	EFX_BAR_TBL_READD(_enp, _reg, _index, _edp, _lock)		\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_BAR_READD((_enp)->en_esbp,			\
+		    (_reg ## _OFST + ((_index) * _reg ## _STEP)),	\
+		    (_edp), (_lock));					\
+		EFSYS_PROBE4(efx_bar_tbl_readd, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_edp)->ed_u32[0]);			\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_edp' - possible side-effects?
#2782: FILE: drivers/net/sfc/efx/base/efx_impl.h:469:
+#define	EFX_BAR_TBL_READD(_enp, _reg, _index, _edp, _lock)		\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_BAR_READD((_enp)->en_esbp,			\
+		    (_reg ## _OFST + ((_index) * _reg ## _STEP)),	\
+		    (_edp), (_lock));					\
+		EFSYS_PROBE4(efx_bar_tbl_readd, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_edp)->ed_u32[0]);			\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_enp' - possible side-effects?
#2795: FILE: drivers/net/sfc/efx/base/efx_impl.h:482:
+#define	EFX_BAR_TBL_WRITED(_enp, _reg, _index, _edp, _lock)		\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE4(efx_bar_tbl_writed, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_edp)->ed_u32[0]);			\
+		EFSYS_BAR_WRITED((_enp)->en_esbp,			\
+		    (_reg ## _OFST + ((_index) * _reg ## _STEP)),	\
+		    (_edp), (_lock));					\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_index' - possible side-effects?
#2795: FILE: drivers/net/sfc/efx/base/efx_impl.h:482:
+#define	EFX_BAR_TBL_WRITED(_enp, _reg, _index, _edp, _lock)		\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE4(efx_bar_tbl_writed, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_edp)->ed_u32[0]);			\
+		EFSYS_BAR_WRITED((_enp)->en_esbp,			\
+		    (_reg ## _OFST + ((_index) * _reg ## _STEP)),	\
+		    (_edp), (_lock));					\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_edp' - possible side-effects?
#2795: FILE: drivers/net/sfc/efx/base/efx_impl.h:482:
+#define	EFX_BAR_TBL_WRITED(_enp, _reg, _index, _edp, _lock)		\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE4(efx_bar_tbl_writed, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_edp)->ed_u32[0]);			\
+		EFSYS_BAR_WRITED((_enp)->en_esbp,			\
+		    (_reg ## _OFST + ((_index) * _reg ## _STEP)),	\
+		    (_edp), (_lock));					\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_enp' - possible side-effects?
#2808: FILE: drivers/net/sfc/efx/base/efx_impl.h:495:
+#define	EFX_BAR_TBL_WRITED2(_enp, _reg, _index, _edp, _lock)		\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE4(efx_bar_tbl_writed, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_edp)->ed_u32[0]);			\
+		EFSYS_BAR_WRITED((_enp)->en_esbp,			\
+		    (_reg ## _OFST +					\
+		    (2 * sizeof (efx_dword_t)) +			\
+		    ((_index) * _reg ## _STEP)),			\
+		    (_edp), (_lock));					\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_index' - possible side-effects?
#2808: FILE: drivers/net/sfc/efx/base/efx_impl.h:495:
+#define	EFX_BAR_TBL_WRITED2(_enp, _reg, _index, _edp, _lock)		\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE4(efx_bar_tbl_writed, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_edp)->ed_u32[0]);			\
+		EFSYS_BAR_WRITED((_enp)->en_esbp,			\
+		    (_reg ## _OFST +					\
+		    (2 * sizeof (efx_dword_t)) +			\
+		    ((_index) * _reg ## _STEP)),			\
+		    (_edp), (_lock));					\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_edp' - possible side-effects?
#2808: FILE: drivers/net/sfc/efx/base/efx_impl.h:495:
+#define	EFX_BAR_TBL_WRITED2(_enp, _reg, _index, _edp, _lock)		\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE4(efx_bar_tbl_writed, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_edp)->ed_u32[0]);			\
+		EFSYS_BAR_WRITED((_enp)->en_esbp,			\
+		    (_reg ## _OFST +					\
+		    (2 * sizeof (efx_dword_t)) +			\
+		    ((_index) * _reg ## _STEP)),			\
+		    (_edp), (_lock));					\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#2817: FILE: drivers/net/sfc/efx/base/efx_impl.h:504:
+		    (2 * sizeof (efx_dword_t)) +			\

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_enp' - possible side-effects?
#2823: FILE: drivers/net/sfc/efx/base/efx_impl.h:510:
+#define	EFX_BAR_TBL_WRITED3(_enp, _reg, _index, _edp, _lock)		\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE4(efx_bar_tbl_writed, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_edp)->ed_u32[0]);			\
+		EFSYS_BAR_WRITED((_enp)->en_esbp,			\
+		    (_reg ## _OFST +					\
+		    (3 * sizeof (efx_dword_t)) +			\
+		    ((_index) * _reg ## _STEP)),			\
+		    (_edp), (_lock));					\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_index' - possible side-effects?
#2823: FILE: drivers/net/sfc/efx/base/efx_impl.h:510:
+#define	EFX_BAR_TBL_WRITED3(_enp, _reg, _index, _edp, _lock)		\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE4(efx_bar_tbl_writed, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_edp)->ed_u32[0]);			\
+		EFSYS_BAR_WRITED((_enp)->en_esbp,			\
+		    (_reg ## _OFST +					\
+		    (3 * sizeof (efx_dword_t)) +			\
+		    ((_index) * _reg ## _STEP)),			\
+		    (_edp), (_lock));					\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_edp' - possible side-effects?
#2823: FILE: drivers/net/sfc/efx/base/efx_impl.h:510:
+#define	EFX_BAR_TBL_WRITED3(_enp, _reg, _index, _edp, _lock)		\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE4(efx_bar_tbl_writed, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_edp)->ed_u32[0]);			\
+		EFSYS_BAR_WRITED((_enp)->en_esbp,			\
+		    (_reg ## _OFST +					\
+		    (3 * sizeof (efx_dword_t)) +			\
+		    ((_index) * _reg ## _STEP)),			\
+		    (_edp), (_lock));					\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#2832: FILE: drivers/net/sfc/efx/base/efx_impl.h:519:
+		    (3 * sizeof (efx_dword_t)) +			\

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_enp' - possible side-effects?
#2838: FILE: drivers/net/sfc/efx/base/efx_impl.h:525:
+#define	EFX_BAR_TBL_READQ(_enp, _reg, _index, _eqp)			\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_BAR_READQ((_enp)->en_esbp,			\
+		    (_reg ## _OFST + ((_index) * _reg ## _STEP)),	\
+		    (_eqp));						\
+		EFSYS_PROBE5(efx_bar_tbl_readq, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eqp)->eq_u32[1],			\
+		    uint32_t, (_eqp)->eq_u32[0]);			\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_index' - possible side-effects?
#2838: FILE: drivers/net/sfc/efx/base/efx_impl.h:525:
+#define	EFX_BAR_TBL_READQ(_enp, _reg, _index, _eqp)			\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_BAR_READQ((_enp)->en_esbp,			\
+		    (_reg ## _OFST + ((_index) * _reg ## _STEP)),	\
+		    (_eqp));						\
+		EFSYS_PROBE5(efx_bar_tbl_readq, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eqp)->eq_u32[1],			\
+		    uint32_t, (_eqp)->eq_u32[0]);			\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_eqp' - possible side-effects?
#2838: FILE: drivers/net/sfc/efx/base/efx_impl.h:525:
+#define	EFX_BAR_TBL_READQ(_enp, _reg, _index, _eqp)			\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_BAR_READQ((_enp)->en_esbp,			\
+		    (_reg ## _OFST + ((_index) * _reg ## _STEP)),	\
+		    (_eqp));						\
+		EFSYS_PROBE5(efx_bar_tbl_readq, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eqp)->eq_u32[1],			\
+		    uint32_t, (_eqp)->eq_u32[0]);			\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_enp' - possible side-effects?
#2852: FILE: drivers/net/sfc/efx/base/efx_impl.h:539:
+#define	EFX_BAR_TBL_WRITEQ(_enp, _reg, _index, _eqp)			\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE5(efx_bar_tbl_writeq, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eqp)->eq_u32[1],			\
+		    uint32_t, (_eqp)->eq_u32[0]);			\
+		EFSYS_BAR_WRITEQ((_enp)->en_esbp,			\
+		    (_reg ## _OFST + ((_index) * _reg ## _STEP)),	\
+		    (_eqp));						\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_index' - possible side-effects?
#2852: FILE: drivers/net/sfc/efx/base/efx_impl.h:539:
+#define	EFX_BAR_TBL_WRITEQ(_enp, _reg, _index, _eqp)			\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE5(efx_bar_tbl_writeq, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eqp)->eq_u32[1],			\
+		    uint32_t, (_eqp)->eq_u32[0]);			\
+		EFSYS_BAR_WRITEQ((_enp)->en_esbp,			\
+		    (_reg ## _OFST + ((_index) * _reg ## _STEP)),	\
+		    (_eqp));						\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_eqp' - possible side-effects?
#2852: FILE: drivers/net/sfc/efx/base/efx_impl.h:539:
+#define	EFX_BAR_TBL_WRITEQ(_enp, _reg, _index, _eqp)			\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE5(efx_bar_tbl_writeq, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eqp)->eq_u32[1],			\
+		    uint32_t, (_eqp)->eq_u32[0]);			\
+		EFSYS_BAR_WRITEQ((_enp)->en_esbp,			\
+		    (_reg ## _OFST + ((_index) * _reg ## _STEP)),	\
+		    (_eqp));						\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_enp' - possible side-effects?
#2866: FILE: drivers/net/sfc/efx/base/efx_impl.h:553:
+#define	EFX_BAR_TBL_READO(_enp, _reg, _index, _eop, _lock)		\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_BAR_READO((_enp)->en_esbp,			\
+		    (_reg ## _OFST + ((_index) * _reg ## _STEP)),	\
+		    (_eop), (_lock));					\
+		EFSYS_PROBE7(efx_bar_tbl_reado, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eop)->eo_u32[3],			\
+		    uint32_t, (_eop)->eo_u32[2],			\
+		    uint32_t, (_eop)->eo_u32[1],			\
+		    uint32_t, (_eop)->eo_u32[0]);			\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_index' - possible side-effects?
#2866: FILE: drivers/net/sfc/efx/base/efx_impl.h:553:
+#define	EFX_BAR_TBL_READO(_enp, _reg, _index, _eop, _lock)		\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_BAR_READO((_enp)->en_esbp,			\
+		    (_reg ## _OFST + ((_index) * _reg ## _STEP)),	\
+		    (_eop), (_lock));					\
+		EFSYS_PROBE7(efx_bar_tbl_reado, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eop)->eo_u32[3],			\
+		    uint32_t, (_eop)->eo_u32[2],			\
+		    uint32_t, (_eop)->eo_u32[1],			\
+		    uint32_t, (_eop)->eo_u32[0]);			\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_eop' - possible side-effects?
#2866: FILE: drivers/net/sfc/efx/base/efx_impl.h:553:
+#define	EFX_BAR_TBL_READO(_enp, _reg, _index, _eop, _lock)		\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_BAR_READO((_enp)->en_esbp,			\
+		    (_reg ## _OFST + ((_index) * _reg ## _STEP)),	\
+		    (_eop), (_lock));					\
+		EFSYS_PROBE7(efx_bar_tbl_reado, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eop)->eo_u32[3],			\
+		    uint32_t, (_eop)->eo_u32[2],			\
+		    uint32_t, (_eop)->eo_u32[1],			\
+		    uint32_t, (_eop)->eo_u32[0]);			\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_enp' - possible side-effects?
#2882: FILE: drivers/net/sfc/efx/base/efx_impl.h:569:
+#define	EFX_BAR_TBL_WRITEO(_enp, _reg, _index, _eop, _lock)		\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE7(efx_bar_tbl_writeo, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eop)->eo_u32[3],			\
+		    uint32_t, (_eop)->eo_u32[2],			\
+		    uint32_t, (_eop)->eo_u32[1],			\
+		    uint32_t, (_eop)->eo_u32[0]);			\
+		EFSYS_BAR_WRITEO((_enp)->en_esbp,			\
+		    (_reg ## _OFST + ((_index) * _reg ## _STEP)),	\
+		    (_eop), (_lock));					\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_index' - possible side-effects?
#2882: FILE: drivers/net/sfc/efx/base/efx_impl.h:569:
+#define	EFX_BAR_TBL_WRITEO(_enp, _reg, _index, _eop, _lock)		\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE7(efx_bar_tbl_writeo, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eop)->eo_u32[3],			\
+		    uint32_t, (_eop)->eo_u32[2],			\
+		    uint32_t, (_eop)->eo_u32[1],			\
+		    uint32_t, (_eop)->eo_u32[0]);			\
+		EFSYS_BAR_WRITEO((_enp)->en_esbp,			\
+		    (_reg ## _OFST + ((_index) * _reg ## _STEP)),	\
+		    (_eop), (_lock));					\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_eop' - possible side-effects?
#2882: FILE: drivers/net/sfc/efx/base/efx_impl.h:569:
+#define	EFX_BAR_TBL_WRITEO(_enp, _reg, _index, _eop, _lock)		\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE7(efx_bar_tbl_writeo, const char *, #_reg,	\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eop)->eo_u32[3],			\
+		    uint32_t, (_eop)->eo_u32[2],			\
+		    uint32_t, (_eop)->eo_u32[1],			\
+		    uint32_t, (_eop)->eo_u32[0]);			\
+		EFSYS_BAR_WRITEO((_enp)->en_esbp,			\
+		    (_reg ## _OFST + ((_index) * _reg ## _STEP)),	\
+		    (_eop), (_lock));					\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_enp' - possible side-effects?
#2905: FILE: drivers/net/sfc/efx/base/efx_impl.h:592:
+#define	EFX_BAR_TBL_DOORBELL_WRITEO(_enp, _reg, _index, _eop)		\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE7(efx_bar_tbl_doorbell_writeo,		\
+		    const char *,					\
+		    #_reg,						\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eop)->eo_u32[3],			\
+		    uint32_t, (_eop)->eo_u32[2],			\
+		    uint32_t, (_eop)->eo_u32[1],			\
+		    uint32_t, (_eop)->eo_u32[0]);			\
+		EFSYS_BAR_DOORBELL_WRITEO((_enp)->en_esbp,		\
+		    (_reg ## _OFST + ((_index) * _reg ## _STEP)),	\
+		    (_eop));						\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_index' - possible side-effects?
#2905: FILE: drivers/net/sfc/efx/base/efx_impl.h:592:
+#define	EFX_BAR_TBL_DOORBELL_WRITEO(_enp, _reg, _index, _eop)		\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE7(efx_bar_tbl_doorbell_writeo,		\
+		    const char *,					\
+		    #_reg,						\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eop)->eo_u32[3],			\
+		    uint32_t, (_eop)->eo_u32[2],			\
+		    uint32_t, (_eop)->eo_u32[1],			\
+		    uint32_t, (_eop)->eo_u32[0]);			\
+		EFSYS_BAR_DOORBELL_WRITEO((_enp)->en_esbp,		\
+		    (_reg ## _OFST + ((_index) * _reg ## _STEP)),	\
+		    (_eop));						\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_eop' - possible side-effects?
#2905: FILE: drivers/net/sfc/efx/base/efx_impl.h:592:
+#define	EFX_BAR_TBL_DOORBELL_WRITEO(_enp, _reg, _index, _eop)		\
+	do {								\
+		EFX_CHECK_REG((_enp), (_reg));				\
+		EFSYS_PROBE7(efx_bar_tbl_doorbell_writeo,		\
+		    const char *,					\
+		    #_reg,						\
+		    uint32_t, (_index),					\
+		    uint32_t, _reg ## _OFST,				\
+		    uint32_t, (_eop)->eo_u32[3],			\
+		    uint32_t, (_eop)->eo_u32[2],			\
+		    uint32_t, (_eop)->eo_u32[1],			\
+		    uint32_t, (_eop)->eo_u32[0]);			\
+		EFSYS_BAR_DOORBELL_WRITEO((_enp)->en_esbp,		\
+		    (_reg ## _OFST + ((_index) * _reg ## _STEP)),	\
+		    (_eop));						\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#2930: FILE: drivers/net/sfc/efx/base/efx_impl.h:617:
+			    (_old) * sizeof (efx_desc_t),		\

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#2931: FILE: drivers/net/sfc/efx/base/efx_impl.h:618:
+			    ((_new) - (_old)) * sizeof (efx_desc_t));	\

WARNING:LINE_CONTINUATIONS: Avoid unnecessary line continuations
#2937: FILE: drivers/net/sfc/efx/base/efx_impl.h:624:
+			 */						\

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#2940: FILE: drivers/net/sfc/efx/base/efx_impl.h:627:
+			    (_entries) * sizeof (efx_desc_t));		\

CHECK:SPACING: spaces preferred around that '*' (ctx:VxV)
#2954: FILE: drivers/net/sfc/efx/base/efx_impl.h:641:
+	__in_ecount(6*count)		uint8_t const *addrs,
 	             ^

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_intr
#3018: FILE: drivers/net/sfc/efx/base/efx_intr.c:41:
+	efx_intr_t *eip = &(enp->en_intr);

CHECK:BRACES: Blank lines aren't necessary after an open brace '{'
#3037: FILE: drivers/net/sfc/efx/base/efx_intr.c:60:
+	switch (enp->en_family) {
+

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#3044: FILE: drivers/net/sfc/efx/base/efx_intr.c:67:
+	if ((rc = eiop->eio_init(enp, type, esmp)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3049: FILE: drivers/net/sfc/efx/base/efx_intr.c:72:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3058: FILE: drivers/net/sfc/efx/base/efx_intr.c:81:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_intr
#3065: FILE: drivers/net/sfc/efx/base/efx_intr.c:88:
+	efx_intr_t *eip = &(enp->en_intr);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_intr
#3081: FILE: drivers/net/sfc/efx/base/efx_intr.c:104:
+	efx_intr_t *eip = &(enp->en_intr);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_intr
#3094: FILE: drivers/net/sfc/efx/base/efx_intr.c:117:
+	efx_intr_t *eip = &(enp->en_intr);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_intr
#3107: FILE: drivers/net/sfc/efx/base/efx_intr.c:130:
+	efx_intr_t *eip = &(enp->en_intr);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_intr
#3122: FILE: drivers/net/sfc/efx/base/efx_intr.c:145:
+	efx_intr_t *eip = &(enp->en_intr);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3128: FILE: drivers/net/sfc/efx/base/efx_intr.c:151:
+	return (eiop->eio_trigger(enp, level));

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_intr
#3137: FILE: drivers/net/sfc/efx/base/efx_intr.c:160:
+	efx_intr_t *eip = &(enp->en_intr);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_intr
#3152: FILE: drivers/net/sfc/efx/base/efx_intr.c:175:
+	efx_intr_t *eip = &(enp->en_intr);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_intr
#3165: FILE: drivers/net/sfc/efx/base/efx_intr.c:188:
+	efx_intr_t *eip = &(enp->en_intr);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#3223: FILE: drivers/net/sfc/efx/base/efx_mac.c:39:
+	efx_port_t *epp = &(enp->en_port);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#3244: FILE: drivers/net/sfc/efx/base/efx_mac.c:60:
+	if ((rc = emop->emo_pdu_set(enp)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3247: FILE: drivers/net/sfc/efx/base/efx_mac.c:63:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3259: FILE: drivers/net/sfc/efx/base/efx_mac.c:75:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#3267: FILE: drivers/net/sfc/efx/base/efx_mac.c:83:
+	efx_port_t *epp = &(enp->en_port);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#3271: FILE: drivers/net/sfc/efx/base/efx_mac.c:87:
+	if ((rc = emop->emo_pdu_get(enp, pdu)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3274: FILE: drivers/net/sfc/efx/base/efx_mac.c:90:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3279: FILE: drivers/net/sfc/efx/base/efx_mac.c:95:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#3287: FILE: drivers/net/sfc/efx/base/efx_mac.c:103:
+	efx_port_t *epp = &(enp->en_port);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#3309: FILE: drivers/net/sfc/efx/base/efx_mac.c:125:
+	if ((rc = emop->emo_addr_set(enp)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3312: FILE: drivers/net/sfc/efx/base/efx_mac.c:128:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3324: FILE: drivers/net/sfc/efx/base/efx_mac.c:140:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#3335: FILE: drivers/net/sfc/efx/base/efx_mac.c:151:
+	efx_port_t *epp = &(enp->en_port);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#3356: FILE: drivers/net/sfc/efx/base/efx_mac.c:172:
+	if ((rc = emop->emo_reconfigure(enp)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3359: FILE: drivers/net/sfc/efx/base/efx_mac.c:175:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3369: FILE: drivers/net/sfc/efx/base/efx_mac.c:185:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#3377: FILE: drivers/net/sfc/efx/base/efx_mac.c:193:
+	efx_port_t *epp = &(enp->en_port);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3386: FILE: drivers/net/sfc/efx/base/efx_mac.c:202:
+		return (0);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#3390: FILE: drivers/net/sfc/efx/base/efx_mac.c:206:
+	if ((rc = emop->emo_reconfigure(enp)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3393: FILE: drivers/net/sfc/efx/base/efx_mac.c:209:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3398: FILE: drivers/net/sfc/efx/base/efx_mac.c:214:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#3406: FILE: drivers/net/sfc/efx/base/efx_mac.c:222:
+	efx_port_t *epp = &(enp->en_port);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#3413: FILE: drivers/net/sfc/efx/base/efx_mac.c:229:
+	if ((rc = emop->emo_up(enp, mac_upp)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3416: FILE: drivers/net/sfc/efx/base/efx_mac.c:232:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3421: FILE: drivers/net/sfc/efx/base/efx_mac.c:237:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#3430: FILE: drivers/net/sfc/efx/base/efx_mac.c:246:
+	efx_port_t *epp = &(enp->en_port);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#3475: FILE: drivers/net/sfc/efx/base/efx_mac.c:291:
+	if ((rc = epop->epo_reconfigure(enp)) != 0)

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#3478: FILE: drivers/net/sfc/efx/base/efx_mac.c:294:
+	if ((rc = emop->emo_reconfigure(enp)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3481: FILE: drivers/net/sfc/efx/base/efx_mac.c:297:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3496: FILE: drivers/net/sfc/efx/base/efx_mac.c:312:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#3505: FILE: drivers/net/sfc/efx/base/efx_mac.c:321:
+	efx_port_t *epp = &(enp->en_port);

CHECK:SPACING: spaces preferred around that '*' (ctx:VxV)
#3527: FILE: drivers/net/sfc/efx/base/efx_mac.c:343:
+	__in_ecount(6*count)		uint8_t const *addrs,
 	             ^

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#3530: FILE: drivers/net/sfc/efx/base/efx_mac.c:346:
+	efx_port_t *epp = &(enp->en_port);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#3565: FILE: drivers/net/sfc/efx/base/efx_mac.c:381:
+	if ((rc = emop->emo_multicast_list_set(enp)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3574: FILE: drivers/net/sfc/efx/base/efx_mac.c:390:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3596: FILE: drivers/net/sfc/efx/base/efx_mac.c:412:
+	return (rc);

CHECK:BRACES: Blank lines aren't necessary before a close brace '}'
#3598: FILE: drivers/net/sfc/efx/base/efx_mac.c:414:
+
+}

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#3606: FILE: drivers/net/sfc/efx/base/efx_mac.c:422:
+	efx_port_t *epp = &(enp->en_port);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3619: FILE: drivers/net/sfc/efx/base/efx_mac.c:435:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3624: FILE: drivers/net/sfc/efx/base/efx_mac.c:440:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#3631: FILE: drivers/net/sfc/efx/base/efx_mac.c:447:
+	efx_port_t *epp = &(enp->en_port);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#3646: FILE: drivers/net/sfc/efx/base/efx_mac.c:462:
+	efx_port_t *epp = &(enp->en_port);

CHECK:BRACES: Blank lines aren't necessary after an open brace '{'
#3652: FILE: drivers/net/sfc/efx/base/efx_mac.c:468:
+	switch (enp->en_family) {
+

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3665: FILE: drivers/net/sfc/efx/base/efx_mac.c:481:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3670: FILE: drivers/net/sfc/efx/base/efx_mac.c:486:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_nic_cfg
#3726: FILE: drivers/net/sfc/efx/base/efx_mon.c:47:
+	efx_nic_cfg_t *encp = &(enp->en_nic_cfg);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3732: FILE: drivers/net/sfc/efx/base/efx_mon.c:53:
+	return (__efx_mon_name[encp->enc_mon_type]);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_nic_cfg
#3742: FILE: drivers/net/sfc/efx/base/efx_mon.c:63:
+	efx_nic_cfg_t *encp = &(enp->en_nic_cfg);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_mon
#3743: FILE: drivers/net/sfc/efx/base/efx_mon.c:64:
+	efx_mon_t *emp = &(enp->en_mon);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3767: FILE: drivers/net/sfc/efx/base/efx_mon.c:88:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3779: FILE: drivers/net/sfc/efx/base/efx_mon.c:100:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_mon
#3786: FILE: drivers/net/sfc/efx/base/efx_mon.c:107:
+	efx_mon_t *emp = &(enp->en_mon);

CHECK:BRACES: Blank lines aren't necessary after an open brace '{'
#3845: FILE: drivers/net/sfc/efx/base/efx_nic.c:42:
+		switch (devid) {
+

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3853: FILE: drivers/net/sfc/efx/base/efx_nic.c:50:
+	return (ENOTSUP);

WARNING:USE_NEGATIVE_ERRNO: return of an errno should typically be negative (ie: return -ENOTSUP)
#3853: FILE: drivers/net/sfc/efx/base/efx_nic.c:50:
+	return (ENOTSUP);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3914: FILE: drivers/net/sfc/efx/base/efx_nic.c:111:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3925: FILE: drivers/net/sfc/efx/base/efx_nic.c:122:
+	return (rc);

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#3944: FILE: drivers/net/sfc/efx/base/efx_nic.c:141:
+	EFSYS_KMEM_ALLOC(esip, sizeof (efx_nic_t), enp);

CHECK:BRACES: Blank lines aren't necessary after an open brace '{'
#3954: FILE: drivers/net/sfc/efx/base/efx_nic.c:151:
+	switch (family) {
+

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3967: FILE: drivers/net/sfc/efx/base/efx_nic.c:164:
+	return (0);

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#3975: FILE: drivers/net/sfc/efx/base/efx_nic.c:172:
+	EFSYS_KMEM_FREE(esip, sizeof (efx_nic_t), enp);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#3980: FILE: drivers/net/sfc/efx/base/efx_nic.c:177:
+	return (rc);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#3994: FILE: drivers/net/sfc/efx/base/efx_nic.c:191:
+	if ((rc = enop->eno_probe(enp)) != 0)

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#3997: FILE: drivers/net/sfc/efx/base/efx_nic.c:194:
+	if ((rc = efx_phy_probe(enp)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4002: FILE: drivers/net/sfc/efx/base/efx_nic.c:199:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4012: FILE: drivers/net/sfc/efx/base/efx_nic.c:209:
+	return (rc);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#4027: FILE: drivers/net/sfc/efx/base/efx_nic.c:224:
+		if ((rc = enop->eno_set_drv_limits(enp, edlp)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4031: FILE: drivers/net/sfc/efx/base/efx_nic.c:228:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4036: FILE: drivers/net/sfc/efx/base/efx_nic.c:233:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around function pointer (enop->eno_get_bar_region)
#4057: FILE: drivers/net/sfc/efx/base/efx_nic.c:254:
+	if ((rc = (enop->eno_get_bar_region)(enp,

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#4057: FILE: drivers/net/sfc/efx/base/efx_nic.c:254:
+	if ((rc = (enop->eno_get_bar_region)(enp,

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4062: FILE: drivers/net/sfc/efx/base/efx_nic.c:259:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4070: FILE: drivers/net/sfc/efx/base/efx_nic.c:267:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around function pointer (enop->eno_get_vi_pool)
#4092: FILE: drivers/net/sfc/efx/base/efx_nic.c:289:
+		if ((rc = (enop->eno_get_vi_pool)(enp, &vi_count)) != 0)

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#4092: FILE: drivers/net/sfc/efx/base/efx_nic.c:289:
+		if ((rc = (enop->eno_get_vi_pool)(enp, &vi_count)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4105: FILE: drivers/net/sfc/efx/base/efx_nic.c:302:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4110: FILE: drivers/net/sfc/efx/base/efx_nic.c:307:
+	return (rc);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#4129: FILE: drivers/net/sfc/efx/base/efx_nic.c:326:
+	if ((rc = enop->eno_init(enp)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4134: FILE: drivers/net/sfc/efx/base/efx_nic.c:331:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4141: FILE: drivers/net/sfc/efx/base/efx_nic.c:338:
+	return (rc);

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#4203: FILE: drivers/net/sfc/efx/base/efx_nic.c:400:
+	EFSYS_KMEM_FREE(esip, sizeof (efx_nic_t), enp);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#4234: FILE: drivers/net/sfc/efx/base/efx_nic.c:431:
+	if ((rc = enop->eno_reset(enp)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4237: FILE: drivers/net/sfc/efx/base/efx_nic.c:434:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4244: FILE: drivers/net/sfc/efx/base/efx_nic.c:441:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_nic_cfg
#4253: FILE: drivers/net/sfc/efx/base/efx_nic.c:450:
+	return (&(enp->en_nic_cfg));

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4293: FILE: drivers/net/sfc/efx/base/efx_nic.c:490:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4300: FILE: drivers/net/sfc/efx/base/efx_nic.c:497:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_nic_cfg
#4311: FILE: drivers/net/sfc/efx/base/efx_nic.c:508:
+	efx_nic_cfg_t *encp = &(enp->en_nic_cfg);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4346: FILE: drivers/net/sfc/efx/base/efx_nic.c:543:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4351: FILE: drivers/net/sfc/efx/base/efx_nic.c:548:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#4397: FILE: drivers/net/sfc/efx/base/efx_phy.c:39:
+	efx_port_t *epp = &(enp->en_port);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_nic_cfg
#4398: FILE: drivers/net/sfc/efx/base/efx_phy.c:40:
+	efx_nic_cfg_t *encp = &(enp->en_nic_cfg);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4416: FILE: drivers/net/sfc/efx/base/efx_phy.c:58:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4424: FILE: drivers/net/sfc/efx/base/efx_phy.c:66:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#4431: FILE: drivers/net/sfc/efx/base/efx_phy.c:73:
+	efx_port_t *epp = &(enp->en_port);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4437: FILE: drivers/net/sfc/efx/base/efx_phy.c:79:
+	return (epop->epo_verify(enp));

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#4446: FILE: drivers/net/sfc/efx/base/efx_phy.c:88:
+	efx_port_t *epp = &(enp->en_port);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#4472: FILE: drivers/net/sfc/efx/base/efx_phy.c:114:
+	efx_port_t *epp = &(enp->en_port);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#4491: FILE: drivers/net/sfc/efx/base/efx_phy.c:133:
+	if ((rc = epop->epo_reconfigure(enp)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4495: FILE: drivers/net/sfc/efx/base/efx_phy.c:137:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4513: FILE: drivers/net/sfc/efx/base/efx_phy.c:155:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#4521: FILE: drivers/net/sfc/efx/base/efx_phy.c:163:
+	efx_port_t *epp = &(enp->en_port);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#4534: FILE: drivers/net/sfc/efx/base/efx_phy.c:176:
+	efx_port_t *epp = &(enp->en_port);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4540: FILE: drivers/net/sfc/efx/base/efx_phy.c:182:
+	return (epop->epo_oui_get(enp, ouip));

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#4548: FILE: drivers/net/sfc/efx/base/efx_phy.c:190:
+	efx_port_t *epp = &(enp->en_port);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#4577: FILE: drivers/net/sfc/efx/base/efx_phy.c:219:
+	if ((rc = efx_mcdi_phy_module_get_info(enp, dev_addr,

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4581: FILE: drivers/net/sfc/efx/base/efx_phy.c:223:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4588: FILE: drivers/net/sfc/efx/base/efx_phy.c:230:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#4596: FILE: drivers/net/sfc/efx/base/efx_phy.c:238:
+	efx_port_t *epp = &(enp->en_port);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#4707: FILE: drivers/net/sfc/efx/base/efx_port.c:38:
+	efx_port_t *epp = &(enp->en_port);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#4727: FILE: drivers/net/sfc/efx/base/efx_port.c:58:
+	if ((rc = efx_mac_select(enp)) != 0)

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#4740: FILE: drivers/net/sfc/efx/base/efx_port.c:71:
+		if ((rc = epop->epo_power(enp, B_TRUE)) != 0)

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#4743: FILE: drivers/net/sfc/efx/base/efx_port.c:74:
+		if ((rc = epop->epo_reset(enp)) != 0)

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#4750: FILE: drivers/net/sfc/efx/base/efx_port.c:81:
+	if ((rc = epop->epo_reconfigure(enp)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4753: FILE: drivers/net/sfc/efx/base/efx_port.c:84:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4764: FILE: drivers/net/sfc/efx/base/efx_port.c:95:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#4772: FILE: drivers/net/sfc/efx/base/efx_port.c:103:
+	efx_port_t *epp = &(enp->en_port);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#4786: FILE: drivers/net/sfc/efx/base/efx_port.c:117:
+	if ((rc = emop->emo_poll(enp, link_modep)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4789: FILE: drivers/net/sfc/efx/base/efx_port.c:120:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4794: FILE: drivers/net/sfc/efx/base/efx_port.c:125:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_port
#4801: FILE: drivers/net/sfc/efx/base/efx_port.c:132:
+	efx_port_t *epp = &(enp->en_port);

CHECK:SPACING: No space is necessary after a cast
#4817: FILE: drivers/net/sfc/efx/base/efx_port.c:148:
+		(void) epop->epo_power(enp, B_FALSE);

CHECK:BRACES: Blank lines aren't necessary after an open brace '{'
#4882: FILE: drivers/net/sfc/efx/base/efx_rx.c:56:
+	switch (enp->en_family) {
+

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#4889: FILE: drivers/net/sfc/efx/base/efx_rx.c:63:
+	if ((rc = erxop->erxo_init(enp)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4894: FILE: drivers/net/sfc/efx/base/efx_rx.c:68:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4907: FILE: drivers/net/sfc/efx/base/efx_rx.c:81:
+	return (rc);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#4968: FILE: drivers/net/sfc/efx/base/efx_rx.c:142:
+	if ((rc = erxop->erxo_qflush(erp)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4971: FILE: drivers/net/sfc/efx/base/efx_rx.c:145:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#4976: FILE: drivers/net/sfc/efx/base/efx_rx.c:150:
+	return (rc);

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#5011: FILE: drivers/net/sfc/efx/base/efx_rx.c:185:
+	EFSYS_KMEM_ALLOC(enp->en_esip, sizeof (efx_rxq_t), erp);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#5024: FILE: drivers/net/sfc/efx/base/efx_rx.c:198:
+	if ((rc = erxop->erxo_qcreate(enp, index, label, type, esmp, n, id,

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5031: FILE: drivers/net/sfc/efx/base/efx_rx.c:205:
+	return (0);

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#5036: FILE: drivers/net/sfc/efx/base/efx_rx.c:210:
+	EFSYS_KMEM_FREE(enp->en_esip, sizeof (efx_rxq_t), erp);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5040: FILE: drivers/net/sfc/efx/base/efx_rx.c:214:
+	return (rc);

WARNING:TYPO_SPELLING: 'psuedo' may be misspelled - perhaps 'pseudo'?
#5056: FILE: drivers/net/sfc/efx/base/efx_rx.c:230:
+efx_psuedo_hdr_pkt_length_get(

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5066: FILE: drivers/net/sfc/efx/base/efx_rx.c:240:
+	return (erxop->erxo_prefix_pktlen(enp, buffer, lengthp));

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5198: FILE: drivers/net/sfc/efx/base/efx_sram.c:124:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5216: FILE: drivers/net/sfc/efx/base/efx_sram.c:142:
+	return (rc);

CHECK:BRACES: Blank lines aren't necessary after an open brace '{'
#5306: FILE: drivers/net/sfc/efx/base/efx_tx.c:58:
+	switch (enp->en_family) {
+

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#5315: FILE: drivers/net/sfc/efx/base/efx_tx.c:67:
+	if ((rc = etxop->etxo_init(enp)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5320: FILE: drivers/net/sfc/efx/base/efx_tx.c:72:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5333: FILE: drivers/net/sfc/efx/base/efx_tx.c:85:
+	return (rc);

CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around enp->en_nic_cfg
#5367: FILE: drivers/net/sfc/efx/base/efx_tx.c:119:
+	efx_nic_cfg_t *encp = &(enp->en_nic_cfg);

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#5377: FILE: drivers/net/sfc/efx/base/efx_tx.c:129:
+	EFSYS_KMEM_ALLOC(enp->en_esip, sizeof (efx_txq_t), etp);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#5393: FILE: drivers/net/sfc/efx/base/efx_tx.c:145:
+	if ((rc = etxop->etxo_qcreate(enp, index, label, esmp,

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5400: FILE: drivers/net/sfc/efx/base/efx_tx.c:152:
+	return (0);

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#5404: FILE: drivers/net/sfc/efx/base/efx_tx.c:156:
+	EFSYS_KMEM_FREE(enp->en_esip, sizeof (efx_txq_t), etp);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5407: FILE: drivers/net/sfc/efx/base/efx_tx.c:159:
+	return (rc);

WARNING:SPACING: space prohibited between function name and open parenthesis '('
#5425: FILE: drivers/net/sfc/efx/base/efx_tx.c:177:
+	EFSYS_KMEM_FREE(enp->en_esip, sizeof (efx_txq_t), etp);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#5442: FILE: drivers/net/sfc/efx/base/efx_tx.c:194:
+	if ((rc = etxop->etxo_qpost(etp, eb,

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5446: FILE: drivers/net/sfc/efx/base/efx_tx.c:198:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5450: FILE: drivers/net/sfc/efx/base/efx_tx.c:202:
+	return (rc);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#5478: FILE: drivers/net/sfc/efx/base/efx_tx.c:230:
+	if ((rc = etxop->etxo_qpace(etp, ns)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5481: FILE: drivers/net/sfc/efx/base/efx_tx.c:233:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5485: FILE: drivers/net/sfc/efx/base/efx_tx.c:237:
+	return (rc);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#5498: FILE: drivers/net/sfc/efx/base/efx_tx.c:250:
+	if ((rc = etxop->etxo_qflush(etp)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5501: FILE: drivers/net/sfc/efx/base/efx_tx.c:253:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5505: FILE: drivers/net/sfc/efx/base/efx_tx.c:257:
+	return (rc);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#5538: FILE: drivers/net/sfc/efx/base/efx_tx.c:290:
+	if ((rc = etxop->etxo_qpio_enable(etp)) != 0)

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5541: FILE: drivers/net/sfc/efx/base/efx_tx.c:293:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5549: FILE: drivers/net/sfc/efx/base/efx_tx.c:301:
+	return (rc);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#5579: FILE: drivers/net/sfc/efx/base/efx_tx.c:331:
+		if ((rc = etxop->etxo_qpio_write(etp, buffer, buf_length,

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5582: FILE: drivers/net/sfc/efx/base/efx_tx.c:334:
+		return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5585: FILE: drivers/net/sfc/efx/base/efx_tx.c:337:
+	return (ENOTSUP);

WARNING:USE_NEGATIVE_ERRNO: return of an errno should typically be negative (ie: return -ENOTSUP)
#5585: FILE: drivers/net/sfc/efx/base/efx_tx.c:337:
+	return (ENOTSUP);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5589: FILE: drivers/net/sfc/efx/base/efx_tx.c:341:
+	return (rc);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#5606: FILE: drivers/net/sfc/efx/base/efx_tx.c:358:
+		if ((rc = etxop->etxo_qpio_post(etp, pkt_length, completed,

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5609: FILE: drivers/net/sfc/efx/base/efx_tx.c:361:
+		return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5612: FILE: drivers/net/sfc/efx/base/efx_tx.c:364:
+	return (ENOTSUP);

WARNING:USE_NEGATIVE_ERRNO: return of an errno should typically be negative (ie: return -ENOTSUP)
#5612: FILE: drivers/net/sfc/efx/base/efx_tx.c:364:
+	return (ENOTSUP);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5616: FILE: drivers/net/sfc/efx/base/efx_tx.c:368:
+	return (rc);

ERROR:ASSIGN_IN_IF: do not use assignment in if condition
#5633: FILE: drivers/net/sfc/efx/base/efx_tx.c:385:
+	if ((rc = etxop->etxo_qdesc_post(etp, ed,

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5637: FILE: drivers/net/sfc/efx/base/efx_tx.c:389:
+	return (0);

ERROR:RETURN_PARENTHESES: return is not a function, parentheses are not required
#5641: FILE: drivers/net/sfc/efx/base/efx_tx.c:393:
+	return (rc);

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#5854: FILE: drivers/net/sfc/efx/base/efx_types.h:137:
+#define	EFX_HIGH_BIT(_field)						\
+	(EFX_LOW_BIT(_field) + EFX_WIDTH(_field) - 1)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#5862: FILE: drivers/net/sfc/efx/base/efx_types.h:145:
+#define	EFX_MASK64(_field)						\
+	((EFX_WIDTH(_field) == 64) ? ~((uint64_t)0) :			\
+	    (((((uint64_t)1) << EFX_WIDTH(_field))) - 1))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#5870: FILE: drivers/net/sfc/efx/base/efx_types.h:153:
+#define	EFX_MASK32(_field)						\
+	((EFX_WIDTH(_field) == 32) ? ~((uint32_t)0) :			\
+	    (((((uint32_t)1) << EFX_WIDTH(_field))) - 1))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#5879: FILE: drivers/net/sfc/efx/base/efx_types.h:162:
+#define	EFX_MASK16(_field)						\
+	((EFX_WIDTH(_field) == 16) ? 0xffffu :				\
+	    (uint16_t)((1 << EFX_WIDTH(_field)) - 1))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_x' - possible side-effects?
#5964: FILE: drivers/net/sfc/efx/base/efx_types.h:247:
+#define	__SWAP16(_x)				\
+	((((_x) & 0xff) << 8) |			\
+	(((_x) >> 8) & 0xff))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_x' - possible side-effects?
#5968: FILE: drivers/net/sfc/efx/base/efx_types.h:251:
+#define	__SWAP32(_x)				\
+	((__SWAP16((_x) & 0xffff) << 16) |	\
+	__SWAP16(((_x) >> 16) & 0xffff))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_x' - possible side-effects?
#5972: FILE: drivers/net/sfc/efx/base/efx_types.h:255:
+#define	__SWAP64(_x)				\
+	((__SWAP32((_x) & 0xffffffff) << 32) |	\
+	__SWAP32(((_x) >> 32) & 0xffffffff))

ERROR:COMPLEX_MACRO: Macros with complex values should be enclosed in parentheses
#6050: FILE: drivers/net/sfc/efx/base/efx_types.h:333:
+#define	EFX_QWORD_VAL(_qword)					\
+	((unsigned int)__LE_TO_CPU_32((_qword).eq_u32[1])),	\
+	((unsigned int)__LE_TO_CPU_32((_qword).eq_u32[0]))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_qword' - possible side-effects?
#6050: FILE: drivers/net/sfc/efx/base/efx_types.h:333:
+#define	EFX_QWORD_VAL(_qword)					\
+	((unsigned int)__LE_TO_CPU_32((_qword).eq_u32[1])),	\
+	((unsigned int)__LE_TO_CPU_32((_qword).eq_u32[0]))

ERROR:COMPLEX_MACRO: Macros with complex values should be enclosed in parentheses
#6055: FILE: drivers/net/sfc/efx/base/efx_types.h:338:
+#define	EFX_OWORD_VAL(_oword)					\
+	((unsigned int)__LE_TO_CPU_32((_oword).eo_u32[3])),	\
+	((unsigned int)__LE_TO_CPU_32((_oword).eo_u32[2])),	\
+	((unsigned int)__LE_TO_CPU_32((_oword).eo_u32[1])),	\
+	((unsigned int)__LE_TO_CPU_32((_oword).eo_u32[0]))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword' - possible side-effects?
#6055: FILE: drivers/net/sfc/efx/base/efx_types.h:338:
+#define	EFX_OWORD_VAL(_oword)					\
+	((unsigned int)__LE_TO_CPU_32((_oword).eo_u32[3])),	\
+	((unsigned int)__LE_TO_CPU_32((_oword).eo_u32[2])),	\
+	((unsigned int)__LE_TO_CPU_32((_oword).eo_u32[1])),	\
+	((unsigned int)__LE_TO_CPU_32((_oword).eo_u32[0]))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_x' may be better as '(_x)' to avoid precedence issues
#6066: FILE: drivers/net/sfc/efx/base/efx_types.h:349:
+#define	FIX_LINT(_x)	(_x + fix_lint)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_element' - possible side-effects?
#6086: FILE: drivers/net/sfc/efx/base/efx_types.h:369:
+#define	EFX_EXTRACT_NATIVE(_element, _min, _max, _low, _high)		\
+	((FIX_LINT(_low > _max) || FIX_LINT(_high < _min)) ?		\
+		0U :							\
+		((_low > _min) ?					\
+			((_element) >> (_low - _min)) :			\
+			((_element) << (_min - _low))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_min' - possible side-effects?
#6086: FILE: drivers/net/sfc/efx/base/efx_types.h:369:
+#define	EFX_EXTRACT_NATIVE(_element, _min, _max, _low, _high)		\
+	((FIX_LINT(_low > _max) || FIX_LINT(_high < _min)) ?		\
+		0U :							\
+		((_low > _min) ?					\
+			((_element) >> (_low - _min)) :			\
+			((_element) << (_min - _low))))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_min' may be better as '(_min)' to avoid precedence issues
#6086: FILE: drivers/net/sfc/efx/base/efx_types.h:369:
+#define	EFX_EXTRACT_NATIVE(_element, _min, _max, _low, _high)		\
+	((FIX_LINT(_low > _max) || FIX_LINT(_high < _min)) ?		\
+		0U :							\
+		((_low > _min) ?					\
+			((_element) >> (_low - _min)) :			\
+			((_element) << (_min - _low))))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_max' may be better as '(_max)' to avoid precedence issues
#6086: FILE: drivers/net/sfc/efx/base/efx_types.h:369:
+#define	EFX_EXTRACT_NATIVE(_element, _min, _max, _low, _high)		\
+	((FIX_LINT(_low > _max) || FIX_LINT(_high < _min)) ?		\
+		0U :							\
+		((_low > _min) ?					\
+			((_element) >> (_low - _min)) :			\
+			((_element) << (_min - _low))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_low' - possible side-effects?
#6086: FILE: drivers/net/sfc/efx/base/efx_types.h:369:
+#define	EFX_EXTRACT_NATIVE(_element, _min, _max, _low, _high)		\
+	((FIX_LINT(_low > _max) || FIX_LINT(_high < _min)) ?		\
+		0U :							\
+		((_low > _min) ?					\
+			((_element) >> (_low - _min)) :			\
+			((_element) << (_min - _low))))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_low' may be better as '(_low)' to avoid precedence issues
#6086: FILE: drivers/net/sfc/efx/base/efx_types.h:369:
+#define	EFX_EXTRACT_NATIVE(_element, _min, _max, _low, _high)		\
+	((FIX_LINT(_low > _max) || FIX_LINT(_high < _min)) ?		\
+		0U :							\
+		((_low > _min) ?					\
+			((_element) >> (_low - _min)) :			\
+			((_element) << (_min - _low))))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_high' may be better as '(_high)' to avoid precedence issues
#6086: FILE: drivers/net/sfc/efx/base/efx_types.h:369:
+#define	EFX_EXTRACT_NATIVE(_element, _min, _max, _low, _high)		\
+	((FIX_LINT(_low > _max) || FIX_LINT(_high < _min)) ?		\
+		0U :							\
+		((_low > _min) ?					\
+			((_element) >> (_low - _min)) :			\
+			((_element) << (_min - _low))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword' - possible side-effects?
#6121: FILE: drivers/net/sfc/efx/base/efx_types.h:404:
+#define	EFX_EXTRACT_OWORD64(_oword, _low, _high)			\
+	(EFX_EXTRACT64((_oword).eo_u64[0], FIX_LINT(0), FIX_LINT(63),	\
+	    _low, _high) |						\
+	EFX_EXTRACT64((_oword).eo_u64[1], FIX_LINT(64), FIX_LINT(127),	\
+	    _low, _high))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_low' - possible side-effects?
#6121: FILE: drivers/net/sfc/efx/base/efx_types.h:404:
+#define	EFX_EXTRACT_OWORD64(_oword, _low, _high)			\
+	(EFX_EXTRACT64((_oword).eo_u64[0], FIX_LINT(0), FIX_LINT(63),	\
+	    _low, _high) |						\
+	EFX_EXTRACT64((_oword).eo_u64[1], FIX_LINT(64), FIX_LINT(127),	\
+	    _low, _high))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_high' - possible side-effects?
#6121: FILE: drivers/net/sfc/efx/base/efx_types.h:404:
+#define	EFX_EXTRACT_OWORD64(_oword, _low, _high)			\
+	(EFX_EXTRACT64((_oword).eo_u64[0], FIX_LINT(0), FIX_LINT(63),	\
+	    _low, _high) |						\
+	EFX_EXTRACT64((_oword).eo_u64[1], FIX_LINT(64), FIX_LINT(127),	\
+	    _low, _high))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword' - possible side-effects?
#6127: FILE: drivers/net/sfc/efx/base/efx_types.h:410:
+#define	EFX_EXTRACT_OWORD32(_oword, _low, _high)			\
+	(EFX_EXTRACT32((_oword).eo_u32[0], FIX_LINT(0), FIX_LINT(31),	\
+	    _low, _high) |						\
+	EFX_EXTRACT32((_oword).eo_u32[1], FIX_LINT(32), FIX_LINT(63),	\
+	    _low, _high) |						\
+	EFX_EXTRACT32((_oword).eo_u32[2], FIX_LINT(64), FIX_LINT(95),	\
+	    _low, _high) |						\
+	EFX_EXTRACT32((_oword).eo_u32[3], FIX_LINT(96), FIX_LINT(127),	\
+	    _low, _high))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_low' - possible side-effects?
#6127: FILE: drivers/net/sfc/efx/base/efx_types.h:410:
+#define	EFX_EXTRACT_OWORD32(_oword, _low, _high)			\
+	(EFX_EXTRACT32((_oword).eo_u32[0], FIX_LINT(0), FIX_LINT(31),	\
+	    _low, _high) |						\
+	EFX_EXTRACT32((_oword).eo_u32[1], FIX_LINT(32), FIX_LINT(63),	\
+	    _low, _high) |						\
+	EFX_EXTRACT32((_oword).eo_u32[2], FIX_LINT(64), FIX_LINT(95),	\
+	    _low, _high) |						\
+	EFX_EXTRACT32((_oword).eo_u32[3], FIX_LINT(96), FIX_LINT(127),	\
+	    _low, _high))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_high' - possible side-effects?
#6127: FILE: drivers/net/sfc/efx/base/efx_types.h:410:
+#define	EFX_EXTRACT_OWORD32(_oword, _low, _high)			\
+	(EFX_EXTRACT32((_oword).eo_u32[0], FIX_LINT(0), FIX_LINT(31),	\
+	    _low, _high) |						\
+	EFX_EXTRACT32((_oword).eo_u32[1], FIX_LINT(32), FIX_LINT(63),	\
+	    _low, _high) |						\
+	EFX_EXTRACT32((_oword).eo_u32[2], FIX_LINT(64), FIX_LINT(95),	\
+	    _low, _high) |						\
+	EFX_EXTRACT32((_oword).eo_u32[3], FIX_LINT(96), FIX_LINT(127),	\
+	    _low, _high))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_qword' - possible side-effects?
#6141: FILE: drivers/net/sfc/efx/base/efx_types.h:424:
+#define	EFX_EXTRACT_QWORD32(_qword, _low, _high)			\
+	(EFX_EXTRACT32((_qword).eq_u32[0], FIX_LINT(0), FIX_LINT(31),	\
+	    _low, _high) |						\
+	EFX_EXTRACT32((_qword).eq_u32[1], FIX_LINT(32), FIX_LINT(63),	\
+	    _low, _high))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_low' - possible side-effects?
#6141: FILE: drivers/net/sfc/efx/base/efx_types.h:424:
+#define	EFX_EXTRACT_QWORD32(_qword, _low, _high)			\
+	(EFX_EXTRACT32((_qword).eq_u32[0], FIX_LINT(0), FIX_LINT(31),	\
+	    _low, _high) |						\
+	EFX_EXTRACT32((_qword).eq_u32[1], FIX_LINT(32), FIX_LINT(63),	\
+	    _low, _high))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_high' - possible side-effects?
#6141: FILE: drivers/net/sfc/efx/base/efx_types.h:424:
+#define	EFX_EXTRACT_QWORD32(_qword, _low, _high)			\
+	(EFX_EXTRACT32((_qword).eq_u32[0], FIX_LINT(0), FIX_LINT(31),	\
+	    _low, _high) |						\
+	EFX_EXTRACT32((_qword).eq_u32[1], FIX_LINT(32), FIX_LINT(63),	\
+	    _low, _high))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#6160: FILE: drivers/net/sfc/efx/base/efx_types.h:443:
+#define	EFX_OWORD_FIELD64(_oword, _field)				\
+	((uint32_t)EFX_EXTRACT_OWORD64(_oword, EFX_LOW_BIT(_field),	\
+	    EFX_HIGH_BIT(_field)) & EFX_MASK32(_field))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#6164: FILE: drivers/net/sfc/efx/base/efx_types.h:447:
+#define	EFX_OWORD_FIELD32(_oword, _field)				\
+	(EFX_EXTRACT_OWORD32(_oword, EFX_LOW_BIT(_field),		\
+	    EFX_HIGH_BIT(_field)) & EFX_MASK32(_field))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#6168: FILE: drivers/net/sfc/efx/base/efx_types.h:451:
+#define	EFX_QWORD_FIELD64(_qword, _field)				\
+	((uint32_t)EFX_EXTRACT_QWORD64(_qword, EFX_LOW_BIT(_field),	\
+	    EFX_HIGH_BIT(_field)) & EFX_MASK32(_field))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#6172: FILE: drivers/net/sfc/efx/base/efx_types.h:455:
+#define	EFX_QWORD_FIELD32(_qword, _field)				\
+	(EFX_EXTRACT_QWORD32(_qword, EFX_LOW_BIT(_field),		\
+	    EFX_HIGH_BIT(_field)) & EFX_MASK32(_field))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#6176: FILE: drivers/net/sfc/efx/base/efx_types.h:459:
+#define	EFX_DWORD_FIELD(_dword, _field)					\
+	(EFX_EXTRACT_DWORD(_dword, EFX_LOW_BIT(_field),			\
+	    EFX_HIGH_BIT(_field)) & EFX_MASK32(_field))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#6180: FILE: drivers/net/sfc/efx/base/efx_types.h:463:
+#define	EFX_WORD_FIELD(_word, _field)					\
+	(EFX_EXTRACT_WORD(_word, EFX_LOW_BIT(_field),			\
+	    EFX_HIGH_BIT(_field)) & EFX_MASK16(_field))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#6184: FILE: drivers/net/sfc/efx/base/efx_types.h:467:
+#define	EFX_BYTE_FIELD(_byte, _field)					\
+	(EFX_EXTRACT_BYTE(_byte, EFX_LOW_BIT(_field),			\
+	    EFX_HIGH_BIT(_field)) & EFX_MASK8(_field))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword_a' - possible side-effects?
#6189: FILE: drivers/net/sfc/efx/base/efx_types.h:472:
+#define	EFX_OWORD_IS_EQUAL64(_oword_a, _oword_b)			\
+	((_oword_a).eo_u64[0] == (_oword_b).eo_u64[0] &&		\
+	    (_oword_a).eo_u64[1] == (_oword_b).eo_u64[1])

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword_b' - possible side-effects?
#6189: FILE: drivers/net/sfc/efx/base/efx_types.h:472:
+#define	EFX_OWORD_IS_EQUAL64(_oword_a, _oword_b)			\
+	((_oword_a).eo_u64[0] == (_oword_b).eo_u64[0] &&		\
+	    (_oword_a).eo_u64[1] == (_oword_b).eo_u64[1])

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword_a' - possible side-effects?
#6193: FILE: drivers/net/sfc/efx/base/efx_types.h:476:
+#define	EFX_OWORD_IS_EQUAL32(_oword_a, _oword_b)			\
+	((_oword_a).eo_u32[0] == (_oword_b).eo_u32[0] &&		\
+	    (_oword_a).eo_u32[1] == (_oword_b).eo_u32[1] &&		\
+	    (_oword_a).eo_u32[2] == (_oword_b).eo_u32[2] &&		\
+	    (_oword_a).eo_u32[3] == (_oword_b).eo_u32[3])

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword_b' - possible side-effects?
#6193: FILE: drivers/net/sfc/efx/base/efx_types.h:476:
+#define	EFX_OWORD_IS_EQUAL32(_oword_a, _oword_b)			\
+	((_oword_a).eo_u32[0] == (_oword_b).eo_u32[0] &&		\
+	    (_oword_a).eo_u32[1] == (_oword_b).eo_u32[1] &&		\
+	    (_oword_a).eo_u32[2] == (_oword_b).eo_u32[2] &&		\
+	    (_oword_a).eo_u32[3] == (_oword_b).eo_u32[3])

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_qword_a' - possible side-effects?
#6202: FILE: drivers/net/sfc/efx/base/efx_types.h:485:
+#define	EFX_QWORD_IS_EQUAL32(_qword_a, _qword_b)			\
+	((_qword_a).eq_u32[0] == (_qword_b).eq_u32[0] &&		\
+	    (_qword_a).eq_u32[1] == (_qword_b).eq_u32[1])

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_qword_b' - possible side-effects?
#6202: FILE: drivers/net/sfc/efx/base/efx_types.h:485:
+#define	EFX_QWORD_IS_EQUAL32(_qword_a, _qword_b)			\
+	((_qword_a).eq_u32[0] == (_qword_b).eq_u32[0] &&		\
+	    (_qword_a).eq_u32[1] == (_qword_b).eq_u32[1])

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword' - possible side-effects?
#6216: FILE: drivers/net/sfc/efx/base/efx_types.h:499:
+#define	EFX_OWORD_IS_ZERO64(_oword)					\
+	(((_oword).eo_u64[0] |						\
+	    (_oword).eo_u64[1]) == 0)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword' - possible side-effects?
#6220: FILE: drivers/net/sfc/efx/base/efx_types.h:503:
+#define	EFX_OWORD_IS_ZERO32(_oword)					\
+	(((_oword).eo_u32[0] |						\
+	    (_oword).eo_u32[1] |					\
+	    (_oword).eo_u32[2] |					\
+	    (_oword).eo_u32[3]) == 0)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_qword' - possible side-effects?
#6229: FILE: drivers/net/sfc/efx/base/efx_types.h:512:
+#define	EFX_QWORD_IS_ZERO32(_qword)					\
+	(((_qword).eq_u32[0] |						\
+	    (_qword).eq_u32[1]) == 0)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword' - possible side-effects?
#6243: FILE: drivers/net/sfc/efx/base/efx_types.h:526:
+#define	EFX_OWORD_IS_SET64(_oword)					\
+	(((_oword).eo_u64[0] &						\
+	    (_oword).eo_u64[1]) == ~((uint64_t)0))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword' - possible side-effects?
#6247: FILE: drivers/net/sfc/efx/base/efx_types.h:530:
+#define	EFX_OWORD_IS_SET32(_oword)					\
+	(((_oword).eo_u32[0] &						\
+	    (_oword).eo_u32[1] &					\
+	    (_oword).eo_u32[2] &					\
+	    (_oword).eo_u32[3]) == ~((uint32_t)0))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_qword' - possible side-effects?
#6256: FILE: drivers/net/sfc/efx/base/efx_types.h:539:
+#define	EFX_QWORD_IS_SET32(_qword)					\
+	(((_qword).eq_u32[0] &						\
+	    (_qword).eq_u32[1]) == ~((uint32_t)0))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_min' - possible side-effects?
#6276: FILE: drivers/net/sfc/efx/base/efx_types.h:559:
+#define	EFX_INSERT_NATIVE64(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		((_low > _min) ?					\
+			(((uint64_t)(_value)) << (_low - _min)) :	\
+			(((uint64_t)(_value)) >> (_min - _low))))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_min' may be better as '(_min)' to avoid precedence issues
#6276: FILE: drivers/net/sfc/efx/base/efx_types.h:559:
+#define	EFX_INSERT_NATIVE64(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		((_low > _min) ?					\
+			(((uint64_t)(_value)) << (_low - _min)) :	\
+			(((uint64_t)(_value)) >> (_min - _low))))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_max' may be better as '(_max)' to avoid precedence issues
#6276: FILE: drivers/net/sfc/efx/base/efx_types.h:559:
+#define	EFX_INSERT_NATIVE64(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		((_low > _min) ?					\
+			(((uint64_t)(_value)) << (_low - _min)) :	\
+			(((uint64_t)(_value)) >> (_min - _low))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_low' - possible side-effects?
#6276: FILE: drivers/net/sfc/efx/base/efx_types.h:559:
+#define	EFX_INSERT_NATIVE64(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		((_low > _min) ?					\
+			(((uint64_t)(_value)) << (_low - _min)) :	\
+			(((uint64_t)(_value)) >> (_min - _low))))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_low' may be better as '(_low)' to avoid precedence issues
#6276: FILE: drivers/net/sfc/efx/base/efx_types.h:559:
+#define	EFX_INSERT_NATIVE64(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		((_low > _min) ?					\
+			(((uint64_t)(_value)) << (_low - _min)) :	\
+			(((uint64_t)(_value)) >> (_min - _low))))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_high' may be better as '(_high)' to avoid precedence issues
#6276: FILE: drivers/net/sfc/efx/base/efx_types.h:559:
+#define	EFX_INSERT_NATIVE64(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		((_low > _min) ?					\
+			(((uint64_t)(_value)) << (_low - _min)) :	\
+			(((uint64_t)(_value)) >> (_min - _low))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value' - possible side-effects?
#6276: FILE: drivers/net/sfc/efx/base/efx_types.h:559:
+#define	EFX_INSERT_NATIVE64(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		((_low > _min) ?					\
+			(((uint64_t)(_value)) << (_low - _min)) :	\
+			(((uint64_t)(_value)) >> (_min - _low))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_min' - possible side-effects?
#6283: FILE: drivers/net/sfc/efx/base/efx_types.h:566:
+#define	EFX_INSERT_NATIVE32(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		((_low > _min) ?					\
+			(((uint32_t)(_value)) << (_low - _min)) :	\
+			(((uint32_t)(_value)) >> (_min - _low))))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_min' may be better as '(_min)' to avoid precedence issues
#6283: FILE: drivers/net/sfc/efx/base/efx_types.h:566:
+#define	EFX_INSERT_NATIVE32(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		((_low > _min) ?					\
+			(((uint32_t)(_value)) << (_low - _min)) :	\
+			(((uint32_t)(_value)) >> (_min - _low))))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_max' may be better as '(_max)' to avoid precedence issues
#6283: FILE: drivers/net/sfc/efx/base/efx_types.h:566:
+#define	EFX_INSERT_NATIVE32(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		((_low > _min) ?					\
+			(((uint32_t)(_value)) << (_low - _min)) :	\
+			(((uint32_t)(_value)) >> (_min - _low))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_low' - possible side-effects?
#6283: FILE: drivers/net/sfc/efx/base/efx_types.h:566:
+#define	EFX_INSERT_NATIVE32(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		((_low > _min) ?					\
+			(((uint32_t)(_value)) << (_low - _min)) :	\
+			(((uint32_t)(_value)) >> (_min - _low))))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_low' may be better as '(_low)' to avoid precedence issues
#6283: FILE: drivers/net/sfc/efx/base/efx_types.h:566:
+#define	EFX_INSERT_NATIVE32(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		((_low > _min) ?					\
+			(((uint32_t)(_value)) << (_low - _min)) :	\
+			(((uint32_t)(_value)) >> (_min - _low))))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_high' may be better as '(_high)' to avoid precedence issues
#6283: FILE: drivers/net/sfc/efx/base/efx_types.h:566:
+#define	EFX_INSERT_NATIVE32(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		((_low > _min) ?					\
+			(((uint32_t)(_value)) << (_low - _min)) :	\
+			(((uint32_t)(_value)) >> (_min - _low))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value' - possible side-effects?
#6283: FILE: drivers/net/sfc/efx/base/efx_types.h:566:
+#define	EFX_INSERT_NATIVE32(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		((_low > _min) ?					\
+			(((uint32_t)(_value)) << (_low - _min)) :	\
+			(((uint32_t)(_value)) >> (_min - _low))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_min' - possible side-effects?
#6290: FILE: drivers/net/sfc/efx/base/efx_types.h:573:
+#define	EFX_INSERT_NATIVE16(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		(uint16_t)((_low > _min) ?				\
+				((_value) << (_low - _min)) :		\
+				((_value) >> (_min - _low))))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_min' may be better as '(_min)' to avoid precedence issues
#6290: FILE: drivers/net/sfc/efx/base/efx_types.h:573:
+#define	EFX_INSERT_NATIVE16(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		(uint16_t)((_low > _min) ?				\
+				((_value) << (_low - _min)) :		\
+				((_value) >> (_min - _low))))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_max' may be better as '(_max)' to avoid precedence issues
#6290: FILE: drivers/net/sfc/efx/base/efx_types.h:573:
+#define	EFX_INSERT_NATIVE16(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		(uint16_t)((_low > _min) ?				\
+				((_value) << (_low - _min)) :		\
+				((_value) >> (_min - _low))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_low' - possible side-effects?
#6290: FILE: drivers/net/sfc/efx/base/efx_types.h:573:
+#define	EFX_INSERT_NATIVE16(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		(uint16_t)((_low > _min) ?				\
+				((_value) << (_low - _min)) :		\
+				((_value) >> (_min - _low))))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_low' may be better as '(_low)' to avoid precedence issues
#6290: FILE: drivers/net/sfc/efx/base/efx_types.h:573:
+#define	EFX_INSERT_NATIVE16(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		(uint16_t)((_low > _min) ?				\
+				((_value) << (_low - _min)) :		\
+				((_value) >> (_min - _low))))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_high' may be better as '(_high)' to avoid precedence issues
#6290: FILE: drivers/net/sfc/efx/base/efx_types.h:573:
+#define	EFX_INSERT_NATIVE16(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		(uint16_t)((_low > _min) ?				\
+				((_value) << (_low - _min)) :		\
+				((_value) >> (_min - _low))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value' - possible side-effects?
#6290: FILE: drivers/net/sfc/efx/base/efx_types.h:573:
+#define	EFX_INSERT_NATIVE16(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		(uint16_t)((_low > _min) ?				\
+				((_value) << (_low - _min)) :		\
+				((_value) >> (_min - _low))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_min' - possible side-effects?
#6297: FILE: drivers/net/sfc/efx/base/efx_types.h:580:
+#define	EFX_INSERT_NATIVE8(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		(uint8_t)((_low > _min) ?				\
+				((_value) << (_low - _min)) :	\
+				((_value) >> (_min - _low))))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_min' may be better as '(_min)' to avoid precedence issues
#6297: FILE: drivers/net/sfc/efx/base/efx_types.h:580:
+#define	EFX_INSERT_NATIVE8(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		(uint8_t)((_low > _min) ?				\
+				((_value) << (_low - _min)) :	\
+				((_value) >> (_min - _low))))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_max' may be better as '(_max)' to avoid precedence issues
#6297: FILE: drivers/net/sfc/efx/base/efx_types.h:580:
+#define	EFX_INSERT_NATIVE8(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		(uint8_t)((_low > _min) ?				\
+				((_value) << (_low - _min)) :	\
+				((_value) >> (_min - _low))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_low' - possible side-effects?
#6297: FILE: drivers/net/sfc/efx/base/efx_types.h:580:
+#define	EFX_INSERT_NATIVE8(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		(uint8_t)((_low > _min) ?				\
+				((_value) << (_low - _min)) :	\
+				((_value) >> (_min - _low))))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_low' may be better as '(_low)' to avoid precedence issues
#6297: FILE: drivers/net/sfc/efx/base/efx_types.h:580:
+#define	EFX_INSERT_NATIVE8(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		(uint8_t)((_low > _min) ?				\
+				((_value) << (_low - _min)) :	\
+				((_value) >> (_min - _low))))

CHECK:MACRO_ARG_PRECEDENCE: Macro argument '_high' may be better as '(_high)' to avoid precedence issues
#6297: FILE: drivers/net/sfc/efx/base/efx_types.h:580:
+#define	EFX_INSERT_NATIVE8(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		(uint8_t)((_low > _min) ?				\
+				((_value) << (_low - _min)) :	\
+				((_value) >> (_min - _low))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value' - possible side-effects?
#6297: FILE: drivers/net/sfc/efx/base/efx_types.h:580:
+#define	EFX_INSERT_NATIVE8(_min, _max, _low, _high, _value)		\
+	(((_low > _max) || (_high < _min)) ?				\
+		0U :							\
+		(uint8_t)((_low > _min) ?				\
+				((_value) << (_low - _min)) :	\
+				((_value) >> (_min - _low))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#6310: FILE: drivers/net/sfc/efx/base/efx_types.h:593:
+#define	EFX_INSERT_FIELD_NATIVE64(_min, _max, _field, _value)		\
+	EFX_INSERT_NATIVE64(_min, _max, EFX_LOW_BIT(_field),		\
+	    EFX_HIGH_BIT(_field), _value)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#6314: FILE: drivers/net/sfc/efx/base/efx_types.h:597:
+#define	EFX_INSERT_FIELD_NATIVE32(_min, _max, _field, _value)		\
+	EFX_INSERT_NATIVE32(_min, _max, EFX_LOW_BIT(_field),		\
+	    EFX_HIGH_BIT(_field), _value)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#6318: FILE: drivers/net/sfc/efx/base/efx_types.h:601:
+#define	EFX_INSERT_FIELD_NATIVE16(_min, _max, _field, _value)		\
+	EFX_INSERT_NATIVE16(_min, _max, EFX_LOW_BIT(_field),		\
+	    EFX_HIGH_BIT(_field), _value)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#6322: FILE: drivers/net/sfc/efx/base/efx_types.h:605:
+#define	EFX_INSERT_FIELD_NATIVE8(_min, _max, _field, _value)		\
+	EFX_INSERT_NATIVE8(_min, _max, EFX_LOW_BIT(_field),		\
+	    EFX_HIGH_BIT(_field), _value)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_min' - possible side-effects?
#6332: FILE: drivers/net/sfc/efx/base/efx_types.h:615:
+#define	EFX_INSERT_FIELDS64(_min, _max,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	__CPU_TO_LE_64(							\
+	    EFX_INSERT_FIELD_NATIVE64(_min, _max, _field1, _value1) |	\
+	    EFX_INSERT_FIELD_NATIVE64(_min, _max, _field2, _value2) |	\
+	    EFX_INSERT_FIELD_NATIVE64(_min, _max, _field3, _value3) |	\
+	    EFX_INSERT_FIELD_NATIVE64(_min, _max, _field4, _value4) |	\
+	    EFX_INSERT_FIELD_NATIVE64(_min, _max, _field5, _value5) |	\
+	    EFX_INSERT_FIELD_NATIVE64(_min, _max, _field6, _value6) |	\
+	    EFX_INSERT_FIELD_NATIVE64(_min, _max, _field7, _value7) |	\
+	    EFX_INSERT_FIELD_NATIVE64(_min, _max, _field8, _value8) |	\
+	    EFX_INSERT_FIELD_NATIVE64(_min, _max, _field9, _value9) |	\
+	    EFX_INSERT_FIELD_NATIVE64(_min, _max, _field10, _value10))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_max' - possible side-effects?
#6332: FILE: drivers/net/sfc/efx/base/efx_types.h:615:
+#define	EFX_INSERT_FIELDS64(_min, _max,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	__CPU_TO_LE_64(							\
+	    EFX_INSERT_FIELD_NATIVE64(_min, _max, _field1, _value1) |	\
+	    EFX_INSERT_FIELD_NATIVE64(_min, _max, _field2, _value2) |	\
+	    EFX_INSERT_FIELD_NATIVE64(_min, _max, _field3, _value3) |	\
+	    EFX_INSERT_FIELD_NATIVE64(_min, _max, _field4, _value4) |	\
+	    EFX_INSERT_FIELD_NATIVE64(_min, _max, _field5, _value5) |	\
+	    EFX_INSERT_FIELD_NATIVE64(_min, _max, _field6, _value6) |	\
+	    EFX_INSERT_FIELD_NATIVE64(_min, _max, _field7, _value7) |	\
+	    EFX_INSERT_FIELD_NATIVE64(_min, _max, _field8, _value8) |	\
+	    EFX_INSERT_FIELD_NATIVE64(_min, _max, _field9, _value9) |	\
+	    EFX_INSERT_FIELD_NATIVE64(_min, _max, _field10, _value10))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_min' - possible side-effects?
#6349: FILE: drivers/net/sfc/efx/base/efx_types.h:632:
+#define	EFX_INSERT_FIELDS32(_min, _max,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	__CPU_TO_LE_32(							\
+	    EFX_INSERT_FIELD_NATIVE32(_min, _max, _field1, _value1) |	\
+	    EFX_INSERT_FIELD_NATIVE32(_min, _max, _field2, _value2) |	\
+	    EFX_INSERT_FIELD_NATIVE32(_min, _max, _field3, _value3) |	\
+	    EFX_INSERT_FIELD_NATIVE32(_min, _max, _field4, _value4) |	\
+	    EFX_INSERT_FIELD_NATIVE32(_min, _max, _field5, _value5) |	\
+	    EFX_INSERT_FIELD_NATIVE32(_min, _max, _field6, _value6) |	\
+	    EFX_INSERT_FIELD_NATIVE32(_min, _max, _field7, _value7) |	\
+	    EFX_INSERT_FIELD_NATIVE32(_min, _max, _field8, _value8) |	\
+	    EFX_INSERT_FIELD_NATIVE32(_min, _max, _field9, _value9) |	\
+	    EFX_INSERT_FIELD_NATIVE32(_min, _max, _field10, _value10))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_max' - possible side-effects?
#6349: FILE: drivers/net/sfc/efx/base/efx_types.h:632:
+#define	EFX_INSERT_FIELDS32(_min, _max,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	__CPU_TO_LE_32(							\
+	    EFX_INSERT_FIELD_NATIVE32(_min, _max, _field1, _value1) |	\
+	    EFX_INSERT_FIELD_NATIVE32(_min, _max, _field2, _value2) |	\
+	    EFX_INSERT_FIELD_NATIVE32(_min, _max, _field3, _value3) |	\
+	    EFX_INSERT_FIELD_NATIVE32(_min, _max, _field4, _value4) |	\
+	    EFX_INSERT_FIELD_NATIVE32(_min, _max, _field5, _value5) |	\
+	    EFX_INSERT_FIELD_NATIVE32(_min, _max, _field6, _value6) |	\
+	    EFX_INSERT_FIELD_NATIVE32(_min, _max, _field7, _value7) |	\
+	    EFX_INSERT_FIELD_NATIVE32(_min, _max, _field8, _value8) |	\
+	    EFX_INSERT_FIELD_NATIVE32(_min, _max, _field9, _value9) |	\
+	    EFX_INSERT_FIELD_NATIVE32(_min, _max, _field10, _value10))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_min' - possible side-effects?
#6366: FILE: drivers/net/sfc/efx/base/efx_types.h:649:
+#define	EFX_INSERT_FIELDS16(_min, _max,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	__CPU_TO_LE_16(							\
+	    EFX_INSERT_FIELD_NATIVE16(_min, _max, _field1, _value1) |	\
+	    EFX_INSERT_FIELD_NATIVE16(_min, _max, _field2, _value2) |	\
+	    EFX_INSERT_FIELD_NATIVE16(_min, _max, _field3, _value3) |	\
+	    EFX_INSERT_FIELD_NATIVE16(_min, _max, _field4, _value4) |	\
+	    EFX_INSERT_FIELD_NATIVE16(_min, _max, _field5, _value5) |	\
+	    EFX_INSERT_FIELD_NATIVE16(_min, _max, _field6, _value6) |	\
+	    EFX_INSERT_FIELD_NATIVE16(_min, _max, _field7, _value7) |	\
+	    EFX_INSERT_FIELD_NATIVE16(_min, _max, _field8, _value8) |	\
+	    EFX_INSERT_FIELD_NATIVE16(_min, _max, _field9, _value9) |	\
+	    EFX_INSERT_FIELD_NATIVE16(_min, _max, _field10, _value10))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_max' - possible side-effects?
#6366: FILE: drivers/net/sfc/efx/base/efx_types.h:649:
+#define	EFX_INSERT_FIELDS16(_min, _max,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	__CPU_TO_LE_16(							\
+	    EFX_INSERT_FIELD_NATIVE16(_min, _max, _field1, _value1) |	\
+	    EFX_INSERT_FIELD_NATIVE16(_min, _max, _field2, _value2) |	\
+	    EFX_INSERT_FIELD_NATIVE16(_min, _max, _field3, _value3) |	\
+	    EFX_INSERT_FIELD_NATIVE16(_min, _max, _field4, _value4) |	\
+	    EFX_INSERT_FIELD_NATIVE16(_min, _max, _field5, _value5) |	\
+	    EFX_INSERT_FIELD_NATIVE16(_min, _max, _field6, _value6) |	\
+	    EFX_INSERT_FIELD_NATIVE16(_min, _max, _field7, _value7) |	\
+	    EFX_INSERT_FIELD_NATIVE16(_min, _max, _field8, _value8) |	\
+	    EFX_INSERT_FIELD_NATIVE16(_min, _max, _field9, _value9) |	\
+	    EFX_INSERT_FIELD_NATIVE16(_min, _max, _field10, _value10))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_min' - possible side-effects?
#6383: FILE: drivers/net/sfc/efx/base/efx_types.h:666:
+#define	EFX_INSERT_FIELDS8(_min, _max,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	__NATIVE_8(							\
+	    EFX_INSERT_FIELD_NATIVE8(_min, _max, _field1, _value1) |	\
+	    EFX_INSERT_FIELD_NATIVE8(_min, _max, _field2, _value2) |	\
+	    EFX_INSERT_FIELD_NATIVE8(_min, _max, _field3, _value3) |	\
+	    EFX_INSERT_FIELD_NATIVE8(_min, _max, _field4, _value4) |	\
+	    EFX_INSERT_FIELD_NATIVE8(_min, _max, _field5, _value5) |	\
+	    EFX_INSERT_FIELD_NATIVE8(_min, _max, _field6, _value6) |	\
+	    EFX_INSERT_FIELD_NATIVE8(_min, _max, _field7, _value7) |	\
+	    EFX_INSERT_FIELD_NATIVE8(_min, _max, _field8, _value8) |	\
+	    EFX_INSERT_FIELD_NATIVE8(_min, _max, _field9, _value9) |	\
+	    EFX_INSERT_FIELD_NATIVE8(_min, _max, _field10, _value10))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_max' - possible side-effects?
#6383: FILE: drivers/net/sfc/efx/base/efx_types.h:666:
+#define	EFX_INSERT_FIELDS8(_min, _max,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	__NATIVE_8(							\
+	    EFX_INSERT_FIELD_NATIVE8(_min, _max, _field1, _value1) |	\
+	    EFX_INSERT_FIELD_NATIVE8(_min, _max, _field2, _value2) |	\
+	    EFX_INSERT_FIELD_NATIVE8(_min, _max, _field3, _value3) |	\
+	    EFX_INSERT_FIELD_NATIVE8(_min, _max, _field4, _value4) |	\
+	    EFX_INSERT_FIELD_NATIVE8(_min, _max, _field5, _value5) |	\
+	    EFX_INSERT_FIELD_NATIVE8(_min, _max, _field6, _value6) |	\
+	    EFX_INSERT_FIELD_NATIVE8(_min, _max, _field7, _value7) |	\
+	    EFX_INSERT_FIELD_NATIVE8(_min, _max, _field8, _value8) |	\
+	    EFX_INSERT_FIELD_NATIVE8(_min, _max, _field9, _value9) |	\
+	    EFX_INSERT_FIELD_NATIVE8(_min, _max, _field10, _value10))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword' - possible side-effects?
#6400: FILE: drivers/net/sfc/efx/base/efx_types.h:683:
+#define	EFX_POPULATE_OWORD64(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] = EFX_INSERT_FIELDS64(0, 63,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[1] = EFX_INSERT_FIELDS64(64, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value1' - possible side-effects?
#6400: FILE: drivers/net/sfc/efx/base/efx_types.h:683:
+#define	EFX_POPULATE_OWORD64(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] = EFX_INSERT_FIELDS64(0, 63,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[1] = EFX_INSERT_FIELDS64(64, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field2' - possible side-effects?
#6400: FILE: drivers/net/sfc/efx/base/efx_types.h:683:
+#define	EFX_POPULATE_OWORD64(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] = EFX_INSERT_FIELDS64(0, 63,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[1] = EFX_INSERT_FIELDS64(64, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value2' - possible side-effects?
#6400: FILE: drivers/net/sfc/efx/base/efx_types.h:683:
+#define	EFX_POPULATE_OWORD64(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] = EFX_INSERT_FIELDS64(0, 63,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[1] = EFX_INSERT_FIELDS64(64, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field3' - possible side-effects?
#6400: FILE: drivers/net/sfc/efx/base/efx_types.h:683:
+#define	EFX_POPULATE_OWORD64(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] = EFX_INSERT_FIELDS64(0, 63,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[1] = EFX_INSERT_FIELDS64(64, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value3' - possible side-effects?
#6400: FILE: drivers/net/sfc/efx/base/efx_types.h:683:
+#define	EFX_POPULATE_OWORD64(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] = EFX_INSERT_FIELDS64(0, 63,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[1] = EFX_INSERT_FIELDS64(64, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value4' - possible side-effects?
#6400: FILE: drivers/net/sfc/efx/base/efx_types.h:683:
+#define	EFX_POPULATE_OWORD64(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] = EFX_INSERT_FIELDS64(0, 63,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[1] = EFX_INSERT_FIELDS64(64, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field5' - possible side-effects?
#6400: FILE: drivers/net/sfc/efx/base/efx_types.h:683:
+#define	EFX_POPULATE_OWORD64(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] = EFX_INSERT_FIELDS64(0, 63,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[1] = EFX_INSERT_FIELDS64(64, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value5' - possible side-effects?
#6400: FILE: drivers/net/sfc/efx/base/efx_types.h:683:
+#define	EFX_POPULATE_OWORD64(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] = EFX_INSERT_FIELDS64(0, 63,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[1] = EFX_INSERT_FIELDS64(64, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field6' - possible side-effects?
#6400: FILE: drivers/net/sfc/efx/base/efx_types.h:683:
+#define	EFX_POPULATE_OWORD64(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] = EFX_INSERT_FIELDS64(0, 63,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[1] = EFX_INSERT_FIELDS64(64, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value6' - possible side-effects?
#6400: FILE: drivers/net/sfc/efx/base/efx_types.h:683:
+#define	EFX_POPULATE_OWORD64(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] = EFX_INSERT_FIELDS64(0, 63,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[1] = EFX_INSERT_FIELDS64(64, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value7' - possible side-effects?
#6400: FILE: drivers/net/sfc/efx/base/efx_types.h:683:
+#define	EFX_POPULATE_OWORD64(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] = EFX_INSERT_FIELDS64(0, 63,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[1] = EFX_INSERT_FIELDS64(64, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field8' - possible side-effects?
#6400: FILE: drivers/net/sfc/efx/base/efx_types.h:683:
+#define	EFX_POPULATE_OWORD64(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] = EFX_INSERT_FIELDS64(0, 63,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[1] = EFX_INSERT_FIELDS64(64, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value8' - possible side-effects?
#6400: FILE: drivers/net/sfc/efx/base/efx_types.h:683:
+#define	EFX_POPULATE_OWORD64(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] = EFX_INSERT_FIELDS64(0, 63,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[1] = EFX_INSERT_FIELDS64(64, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field9' - possible side-effects?
#6400: FILE: drivers/net/sfc/efx/base/efx_types.h:683:
+#define	EFX_POPULATE_OWORD64(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] = EFX_INSERT_FIELDS64(0, 63,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[1] = EFX_INSERT_FIELDS64(64, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value9' - possible side-effects?
#6400: FILE: drivers/net/sfc/efx/base/efx_types.h:683:
+#define	EFX_POPULATE_OWORD64(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] = EFX_INSERT_FIELDS64(0, 63,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[1] = EFX_INSERT_FIELDS64(64, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value10' - possible side-effects?
#6400: FILE: drivers/net/sfc/efx/base/efx_types.h:683:
+#define	EFX_POPULATE_OWORD64(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] = EFX_INSERT_FIELDS64(0, 63,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[1] = EFX_INSERT_FIELDS64(64, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword' - possible side-effects?
#6423: FILE: drivers/net/sfc/efx/base/efx_types.h:706:
+#define	EFX_POPULATE_OWORD32(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[2] = EFX_INSERT_FIELDS32(64, 95,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[3] = EFX_INSERT_FIELDS32(96, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value1' - possible side-effects?
#6423: FILE: drivers/net/sfc/efx/base/efx_types.h:706:
+#define	EFX_POPULATE_OWORD32(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[2] = EFX_INSERT_FIELDS32(64, 95,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[3] = EFX_INSERT_FIELDS32(96, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field2' - possible side-effects?
#6423: FILE: drivers/net/sfc/efx/base/efx_types.h:706:
+#define	EFX_POPULATE_OWORD32(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[2] = EFX_INSERT_FIELDS32(64, 95,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[3] = EFX_INSERT_FIELDS32(96, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value2' - possible side-effects?
#6423: FILE: drivers/net/sfc/efx/base/efx_types.h:706:
+#define	EFX_POPULATE_OWORD32(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[2] = EFX_INSERT_FIELDS32(64, 95,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[3] = EFX_INSERT_FIELDS32(96, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field3' - possible side-effects?
#6423: FILE: drivers/net/sfc/efx/base/efx_types.h:706:
+#define	EFX_POPULATE_OWORD32(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[2] = EFX_INSERT_FIELDS32(64, 95,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[3] = EFX_INSERT_FIELDS32(96, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value3' - possible side-effects?
#6423: FILE: drivers/net/sfc/efx/base/efx_types.h:706:
+#define	EFX_POPULATE_OWORD32(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[2] = EFX_INSERT_FIELDS32(64, 95,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[3] = EFX_INSERT_FIELDS32(96, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value4' - possible side-effects?
#6423: FILE: drivers/net/sfc/efx/base/efx_types.h:706:
+#define	EFX_POPULATE_OWORD32(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[2] = EFX_INSERT_FIELDS32(64, 95,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[3] = EFX_INSERT_FIELDS32(96, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field5' - possible side-effects?
#6423: FILE: drivers/net/sfc/efx/base/efx_types.h:706:
+#define	EFX_POPULATE_OWORD32(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[2] = EFX_INSERT_FIELDS32(64, 95,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[3] = EFX_INSERT_FIELDS32(96, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value5' - possible side-effects?
#6423: FILE: drivers/net/sfc/efx/base/efx_types.h:706:
+#define	EFX_POPULATE_OWORD32(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[2] = EFX_INSERT_FIELDS32(64, 95,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[3] = EFX_INSERT_FIELDS32(96, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field6' - possible side-effects?
#6423: FILE: drivers/net/sfc/efx/base/efx_types.h:706:
+#define	EFX_POPULATE_OWORD32(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[2] = EFX_INSERT_FIELDS32(64, 95,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[3] = EFX_INSERT_FIELDS32(96, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value6' - possible side-effects?
#6423: FILE: drivers/net/sfc/efx/base/efx_types.h:706:
+#define	EFX_POPULATE_OWORD32(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[2] = EFX_INSERT_FIELDS32(64, 95,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[3] = EFX_INSERT_FIELDS32(96, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value7' - possible side-effects?
#6423: FILE: drivers/net/sfc/efx/base/efx_types.h:706:
+#define	EFX_POPULATE_OWORD32(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[2] = EFX_INSERT_FIELDS32(64, 95,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[3] = EFX_INSERT_FIELDS32(96, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field8' - possible side-effects?
#6423: FILE: drivers/net/sfc/efx/base/efx_types.h:706:
+#define	EFX_POPULATE_OWORD32(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[2] = EFX_INSERT_FIELDS32(64, 95,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[3] = EFX_INSERT_FIELDS32(96, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value8' - possible side-effects?
#6423: FILE: drivers/net/sfc/efx/base/efx_types.h:706:
+#define	EFX_POPULATE_OWORD32(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[2] = EFX_INSERT_FIELDS32(64, 95,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[3] = EFX_INSERT_FIELDS32(96, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field9' - possible side-effects?
#6423: FILE: drivers/net/sfc/efx/base/efx_types.h:706:
+#define	EFX_POPULATE_OWORD32(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[2] = EFX_INSERT_FIELDS32(64, 95,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[3] = EFX_INSERT_FIELDS32(96, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value9' - possible side-effects?
#6423: FILE: drivers/net/sfc/efx/base/efx_types.h:706:
+#define	EFX_POPULATE_OWORD32(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[2] = EFX_INSERT_FIELDS32(64, 95,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[3] = EFX_INSERT_FIELDS32(96, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value10' - possible side-effects?
#6423: FILE: drivers/net/sfc/efx/base/efx_types.h:706:
+#define	EFX_POPULATE_OWORD32(_oword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[2] = EFX_INSERT_FIELDS32(64, 95,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[3] = EFX_INSERT_FIELDS32(96, 127,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_qword' - possible side-effects?
#6476: FILE: drivers/net/sfc/efx/base/efx_types.h:759:
+#define	EFX_POPULATE_QWORD32(_qword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value1' - possible side-effects?
#6476: FILE: drivers/net/sfc/efx/base/efx_types.h:759:
+#define	EFX_POPULATE_QWORD32(_qword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field2' - possible side-effects?
#6476: FILE: drivers/net/sfc/efx/base/efx_types.h:759:
+#define	EFX_POPULATE_QWORD32(_qword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value2' - possible side-effects?
#6476: FILE: drivers/net/sfc/efx/base/efx_types.h:759:
+#define	EFX_POPULATE_QWORD32(_qword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field3' - possible side-effects?
#6476: FILE: drivers/net/sfc/efx/base/efx_types.h:759:
+#define	EFX_POPULATE_QWORD32(_qword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value3' - possible side-effects?
#6476: FILE: drivers/net/sfc/efx/base/efx_types.h:759:
+#define	EFX_POPULATE_QWORD32(_qword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value4' - possible side-effects?
#6476: FILE: drivers/net/sfc/efx/base/efx_types.h:759:
+#define	EFX_POPULATE_QWORD32(_qword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field5' - possible side-effects?
#6476: FILE: drivers/net/sfc/efx/base/efx_types.h:759:
+#define	EFX_POPULATE_QWORD32(_qword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value5' - possible side-effects?
#6476: FILE: drivers/net/sfc/efx/base/efx_types.h:759:
+#define	EFX_POPULATE_QWORD32(_qword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field6' - possible side-effects?
#6476: FILE: drivers/net/sfc/efx/base/efx_types.h:759:
+#define	EFX_POPULATE_QWORD32(_qword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value6' - possible side-effects?
#6476: FILE: drivers/net/sfc/efx/base/efx_types.h:759:
+#define	EFX_POPULATE_QWORD32(_qword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value7' - possible side-effects?
#6476: FILE: drivers/net/sfc/efx/base/efx_types.h:759:
+#define	EFX_POPULATE_QWORD32(_qword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field8' - possible side-effects?
#6476: FILE: drivers/net/sfc/efx/base/efx_types.h:759:
+#define	EFX_POPULATE_QWORD32(_qword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value8' - possible side-effects?
#6476: FILE: drivers/net/sfc/efx/base/efx_types.h:759:
+#define	EFX_POPULATE_QWORD32(_qword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field9' - possible side-effects?
#6476: FILE: drivers/net/sfc/efx/base/efx_types.h:759:
+#define	EFX_POPULATE_QWORD32(_qword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value9' - possible side-effects?
#6476: FILE: drivers/net/sfc/efx/base/efx_types.h:759:
+#define	EFX_POPULATE_QWORD32(_qword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value10' - possible side-effects?
#6476: FILE: drivers/net/sfc/efx/base/efx_types.h:759:
+#define	EFX_POPULATE_QWORD32(_qword,					\
+	    _field1, _value1, _field2, _value2, _field3, _value3,	\
+	    _field4, _value4, _field5, _value5,	_field6, _value6,	\
+	    _field7, _value7, _field8, _value8,	_field9, _value9,	\
+	    _field10, _value10)						\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] = EFX_INSERT_FIELDS32(0, 31,		\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[1] = EFX_INSERT_FIELDS32(32, 63,	\
+		    _field1, _value1, _field2, _value2,			\
+		    _field3, _value3, _field4, _value4,			\
+		    _field5, _value5, _field6, _value6,			\
+		    _field7, _value7, _field8, _value8,			\
+		    _field9, _value9, _field10, _value10);		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#6930: FILE: drivers/net/sfc/efx/base/efx_types.h:1213:
+#define	EFX_INPLACE_MASK64(_min, _max, _field)				\
+	EFX_INSERT_FIELD64(_min, _max, _field, EFX_MASK64(_field))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#6933: FILE: drivers/net/sfc/efx/base/efx_types.h:1216:
+#define	EFX_INPLACE_MASK32(_min, _max, _field)				\
+	EFX_INSERT_FIELD32(_min, _max, _field, EFX_MASK32(_field))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#6936: FILE: drivers/net/sfc/efx/base/efx_types.h:1219:
+#define	EFX_INPLACE_MASK16(_min, _max, _field)				\
+	EFX_INSERT_FIELD16(_min, _max, _field, EFX_MASK16(_field))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#6939: FILE: drivers/net/sfc/efx/base/efx_types.h:1222:
+#define	EFX_INPLACE_MASK8(_min, _max, _field)				\
+	EFX_INSERT_FIELD8(_min, _max, _field, EFX_MASK8(_field))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword' - possible side-effects?
#6942: FILE: drivers/net/sfc/efx/base/efx_types.h:1225:
+#define	EFX_SET_OWORD_FIELD64(_oword, _field, _value)			\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] = (((_oword).eo_u64[0] &		\
+		    ~EFX_INPLACE_MASK64(0, 63, _field)) |		\
+		    EFX_INSERT_FIELD64(0, 63, _field, _value));		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[1] = (((_oword).eo_u64[1] &		\
+		    ~EFX_INPLACE_MASK64(64, 127, _field)) |		\
+		    EFX_INSERT_FIELD64(64, 127, _field, _value));	\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#6942: FILE: drivers/net/sfc/efx/base/efx_types.h:1225:
+#define	EFX_SET_OWORD_FIELD64(_oword, _field, _value)			\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] = (((_oword).eo_u64[0] &		\
+		    ~EFX_INPLACE_MASK64(0, 63, _field)) |		\
+		    EFX_INSERT_FIELD64(0, 63, _field, _value));		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[1] = (((_oword).eo_u64[1] &		\
+		    ~EFX_INPLACE_MASK64(64, 127, _field)) |		\
+		    EFX_INSERT_FIELD64(64, 127, _field, _value));	\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value' - possible side-effects?
#6942: FILE: drivers/net/sfc/efx/base/efx_types.h:1225:
+#define	EFX_SET_OWORD_FIELD64(_oword, _field, _value)			\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] = (((_oword).eo_u64[0] &		\
+		    ~EFX_INPLACE_MASK64(0, 63, _field)) |		\
+		    EFX_INSERT_FIELD64(0, 63, _field, _value));		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[1] = (((_oword).eo_u64[1] &		\
+		    ~EFX_INPLACE_MASK64(64, 127, _field)) |		\
+		    EFX_INSERT_FIELD64(64, 127, _field, _value));	\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword' - possible side-effects?
#6955: FILE: drivers/net/sfc/efx/base/efx_types.h:1238:
+#define	EFX_SET_OWORD_FIELD32(_oword, _field, _value)			\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] = (((_oword).eo_u32[0] &		\
+		    ~EFX_INPLACE_MASK32(0, 31, _field)) |		\
+		    EFX_INSERT_FIELD32(0, 31, _field, _value));		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[1] = (((_oword).eo_u32[1] &		\
+		    ~EFX_INPLACE_MASK32(32, 63, _field)) |		\
+		    EFX_INSERT_FIELD32(32, 63, _field, _value));	\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[2] = (((_oword).eo_u32[2] &		\
+		    ~EFX_INPLACE_MASK32(64, 95, _field)) |		\
+		    EFX_INSERT_FIELD32(64, 95, _field, _value));	\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[3] = (((_oword).eo_u32[3] &		\
+		    ~EFX_INPLACE_MASK32(96, 127, _field)) |		\
+		    EFX_INSERT_FIELD32(96, 127, _field, _value));	\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#6955: FILE: drivers/net/sfc/efx/base/efx_types.h:1238:
+#define	EFX_SET_OWORD_FIELD32(_oword, _field, _value)			\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] = (((_oword).eo_u32[0] &		\
+		    ~EFX_INPLACE_MASK32(0, 31, _field)) |		\
+		    EFX_INSERT_FIELD32(0, 31, _field, _value));		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[1] = (((_oword).eo_u32[1] &		\
+		    ~EFX_INPLACE_MASK32(32, 63, _field)) |		\
+		    EFX_INSERT_FIELD32(32, 63, _field, _value));	\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[2] = (((_oword).eo_u32[2] &		\
+		    ~EFX_INPLACE_MASK32(64, 95, _field)) |		\
+		    EFX_INSERT_FIELD32(64, 95, _field, _value));	\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[3] = (((_oword).eo_u32[3] &		\
+		    ~EFX_INPLACE_MASK32(96, 127, _field)) |		\
+		    EFX_INSERT_FIELD32(96, 127, _field, _value));	\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value' - possible side-effects?
#6955: FILE: drivers/net/sfc/efx/base/efx_types.h:1238:
+#define	EFX_SET_OWORD_FIELD32(_oword, _field, _value)			\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] = (((_oword).eo_u32[0] &		\
+		    ~EFX_INPLACE_MASK32(0, 31, _field)) |		\
+		    EFX_INSERT_FIELD32(0, 31, _field, _value));		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[1] = (((_oword).eo_u32[1] &		\
+		    ~EFX_INPLACE_MASK32(32, 63, _field)) |		\
+		    EFX_INSERT_FIELD32(32, 63, _field, _value));	\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[2] = (((_oword).eo_u32[2] &		\
+		    ~EFX_INPLACE_MASK32(64, 95, _field)) |		\
+		    EFX_INSERT_FIELD32(64, 95, _field, _value));	\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[3] = (((_oword).eo_u32[3] &		\
+		    ~EFX_INPLACE_MASK32(96, 127, _field)) |		\
+		    EFX_INSERT_FIELD32(96, 127, _field, _value));	\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_qword' - possible side-effects?
#6976: FILE: drivers/net/sfc/efx/base/efx_types.h:1259:
+#define	EFX_SET_QWORD_FIELD64(_qword, _field, _value)			\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u64[0] = (((_qword).eq_u64[0] &		\
+		    ~EFX_INPLACE_MASK64(0, 63, _field)) |		\
+		    EFX_INSERT_FIELD64(0, 63, _field, _value));		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#6976: FILE: drivers/net/sfc/efx/base/efx_types.h:1259:
+#define	EFX_SET_QWORD_FIELD64(_qword, _field, _value)			\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u64[0] = (((_qword).eq_u64[0] &		\
+		    ~EFX_INPLACE_MASK64(0, 63, _field)) |		\
+		    EFX_INSERT_FIELD64(0, 63, _field, _value));		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_qword' - possible side-effects?
#6985: FILE: drivers/net/sfc/efx/base/efx_types.h:1268:
+#define	EFX_SET_QWORD_FIELD32(_qword, _field, _value)			\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] = (((_qword).eq_u32[0] &		\
+		    ~EFX_INPLACE_MASK32(0, 31, _field)) |		\
+		    EFX_INSERT_FIELD32(0, 31, _field, _value));		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[1] = (((_qword).eq_u32[1] &		\
+		    ~EFX_INPLACE_MASK32(32, 63, _field)) |		\
+		    EFX_INSERT_FIELD32(32, 63, _field, _value));	\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#6985: FILE: drivers/net/sfc/efx/base/efx_types.h:1268:
+#define	EFX_SET_QWORD_FIELD32(_qword, _field, _value)			\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] = (((_qword).eq_u32[0] &		\
+		    ~EFX_INPLACE_MASK32(0, 31, _field)) |		\
+		    EFX_INSERT_FIELD32(0, 31, _field, _value));		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[1] = (((_qword).eq_u32[1] &		\
+		    ~EFX_INPLACE_MASK32(32, 63, _field)) |		\
+		    EFX_INSERT_FIELD32(32, 63, _field, _value));	\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_value' - possible side-effects?
#6985: FILE: drivers/net/sfc/efx/base/efx_types.h:1268:
+#define	EFX_SET_QWORD_FIELD32(_qword, _field, _value)			\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] = (((_qword).eq_u32[0] &		\
+		    ~EFX_INPLACE_MASK32(0, 31, _field)) |		\
+		    EFX_INSERT_FIELD32(0, 31, _field, _value));		\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[1] = (((_qword).eq_u32[1] &		\
+		    ~EFX_INPLACE_MASK32(32, 63, _field)) |		\
+		    EFX_INSERT_FIELD32(32, 63, _field, _value));	\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_dword' - possible side-effects?
#6998: FILE: drivers/net/sfc/efx/base/efx_types.h:1281:
+#define	EFX_SET_DWORD_FIELD(_dword, _field, _value)			\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_dword).ed_u32[0] = (((_dword).ed_u32[0] &		\
+		    ~EFX_INPLACE_MASK32(0, 31, _field)) |		\
+		    EFX_INSERT_FIELD32(0, 31, _field, _value));		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#6998: FILE: drivers/net/sfc/efx/base/efx_types.h:1281:
+#define	EFX_SET_DWORD_FIELD(_dword, _field, _value)			\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_dword).ed_u32[0] = (((_dword).ed_u32[0] &		\
+		    ~EFX_INPLACE_MASK32(0, 31, _field)) |		\
+		    EFX_INSERT_FIELD32(0, 31, _field, _value));		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_word' - possible side-effects?
#7007: FILE: drivers/net/sfc/efx/base/efx_types.h:1290:
+#define	EFX_SET_WORD_FIELD(_word, _field, _value)			\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_word).ew_u16[0] = (((_word).ew_u16[0] &		\
+		    ~EFX_INPLACE_MASK16(0, 15, _field)) |		\
+		    EFX_INSERT_FIELD16(0, 15, _field, _value));		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#7007: FILE: drivers/net/sfc/efx/base/efx_types.h:1290:
+#define	EFX_SET_WORD_FIELD(_word, _field, _value)			\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_word).ew_u16[0] = (((_word).ew_u16[0] &		\
+		    ~EFX_INPLACE_MASK16(0, 15, _field)) |		\
+		    EFX_INSERT_FIELD16(0, 15, _field, _value));		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_byte' - possible side-effects?
#7016: FILE: drivers/net/sfc/efx/base/efx_types.h:1299:
+#define	EFX_SET_BYTE_FIELD(_byte, _field, _value)			\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_byte).eb_u8[0] = (((_byte).eb_u8[0] &			\
+		    ~EFX_INPLACE_MASK8(0, 7, _field)) |			\
+		    EFX_INSERT_FIELD8(0, 7, _field, _value));		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_field' - possible side-effects?
#7016: FILE: drivers/net/sfc/efx/base/efx_types.h:1299:
+#define	EFX_SET_BYTE_FIELD(_byte, _field, _value)			\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_byte).eb_u8[0] = (((_byte).eb_u8[0] &			\
+		    ~EFX_INPLACE_MASK8(0, 7, _field)) |			\
+		    EFX_INSERT_FIELD8(0, 7, _field, _value));		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_bit' - possible side-effects?
#7029: FILE: drivers/net/sfc/efx/base/efx_types.h:1312:
+#define	EFX_SHIFT64(_bit, _base)					\
+	(((_bit) >= (_base) && (_bit) < (_base) + 64) ?			\
+		((uint64_t)1 << ((_bit) - (_base))) :			\
+		0U)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_base' - possible side-effects?
#7029: FILE: drivers/net/sfc/efx/base/efx_types.h:1312:
+#define	EFX_SHIFT64(_bit, _base)					\
+	(((_bit) >= (_base) && (_bit) < (_base) + 64) ?			\
+		((uint64_t)1 << ((_bit) - (_base))) :			\
+		0U)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_bit' - possible side-effects?
#7034: FILE: drivers/net/sfc/efx/base/efx_types.h:1317:
+#define	EFX_SHIFT32(_bit, _base)					\
+	(((_bit) >= (_base) && (_bit) < (_base) + 32) ?			\
+		((uint32_t)1 << ((_bit) - (_base))) :			\
+		0U)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_base' - possible side-effects?
#7034: FILE: drivers/net/sfc/efx/base/efx_types.h:1317:
+#define	EFX_SHIFT32(_bit, _base)					\
+	(((_bit) >= (_base) && (_bit) < (_base) + 32) ?			\
+		((uint32_t)1 << ((_bit) - (_base))) :			\
+		0U)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_bit' - possible side-effects?
#7039: FILE: drivers/net/sfc/efx/base/efx_types.h:1322:
+#define	EFX_SHIFT16(_bit, _base)					\
+	(((_bit) >= (_base) && (_bit) < (_base) + 16) ?			\
+		(uint16_t)(1 << ((_bit) - (_base))) :			\
+		0U)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_base' - possible side-effects?
#7039: FILE: drivers/net/sfc/efx/base/efx_types.h:1322:
+#define	EFX_SHIFT16(_bit, _base)					\
+	(((_bit) >= (_base) && (_bit) < (_base) + 16) ?			\
+		(uint16_t)(1 << ((_bit) - (_base))) :			\
+		0U)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_bit' - possible side-effects?
#7044: FILE: drivers/net/sfc/efx/base/efx_types.h:1327:
+#define	EFX_SHIFT8(_bit, _base)						\
+	(((_bit) >= (_base) && (_bit) < (_base) + 8) ?			\
+		(uint8_t)(1 << ((_bit) - (_base))) :			\
+		0U)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_base' - possible side-effects?
#7044: FILE: drivers/net/sfc/efx/base/efx_types.h:1327:
+#define	EFX_SHIFT8(_bit, _base)						\
+	(((_bit) >= (_base) && (_bit) < (_base) + 8) ?			\
+		(uint8_t)(1 << ((_bit) - (_base))) :			\
+		0U)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword' - possible side-effects?
#7049: FILE: drivers/net/sfc/efx/base/efx_types.h:1332:
+#define	EFX_SET_OWORD_BIT64(_oword, _bit)				\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] |=					\
+		    __CPU_TO_LE_64(EFX_SHIFT64(_bit, FIX_LINT(0)));	\
+		(_oword).eo_u64[1] |=					\
+		    __CPU_TO_LE_64(EFX_SHIFT64(_bit, FIX_LINT(64)));	\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_bit' - possible side-effects?
#7049: FILE: drivers/net/sfc/efx/base/efx_types.h:1332:
+#define	EFX_SET_OWORD_BIT64(_oword, _bit)				\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] |=					\
+		    __CPU_TO_LE_64(EFX_SHIFT64(_bit, FIX_LINT(0)));	\
+		(_oword).eo_u64[1] |=					\
+		    __CPU_TO_LE_64(EFX_SHIFT64(_bit, FIX_LINT(64)));	\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword' - possible side-effects?
#7059: FILE: drivers/net/sfc/efx/base/efx_types.h:1342:
+#define	EFX_SET_OWORD_BIT32(_oword, _bit)				\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] |=					\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(0)));	\
+		(_oword).eo_u32[1] |=					\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(32)));	\
+		(_oword).eo_u32[2] |=					\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(64)));	\
+		(_oword).eo_u32[3] |=					\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(96)));	\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_bit' - possible side-effects?
#7059: FILE: drivers/net/sfc/efx/base/efx_types.h:1342:
+#define	EFX_SET_OWORD_BIT32(_oword, _bit)				\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] |=					\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(0)));	\
+		(_oword).eo_u32[1] |=					\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(32)));	\
+		(_oword).eo_u32[2] |=					\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(64)));	\
+		(_oword).eo_u32[3] |=					\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(96)));	\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword' - possible side-effects?
#7073: FILE: drivers/net/sfc/efx/base/efx_types.h:1356:
+#define	EFX_CLEAR_OWORD_BIT64(_oword, _bit)				\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] &=					\
+		    __CPU_TO_LE_64(~EFX_SHIFT64(_bit, FIX_LINT(0)));	\
+		(_oword).eo_u64[1] &=					\
+		    __CPU_TO_LE_64(~EFX_SHIFT64(_bit, FIX_LINT(64)));	\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_bit' - possible side-effects?
#7073: FILE: drivers/net/sfc/efx/base/efx_types.h:1356:
+#define	EFX_CLEAR_OWORD_BIT64(_oword, _bit)				\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u64[0] &=					\
+		    __CPU_TO_LE_64(~EFX_SHIFT64(_bit, FIX_LINT(0)));	\
+		(_oword).eo_u64[1] &=					\
+		    __CPU_TO_LE_64(~EFX_SHIFT64(_bit, FIX_LINT(64)));	\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword' - possible side-effects?
#7083: FILE: drivers/net/sfc/efx/base/efx_types.h:1366:
+#define	EFX_CLEAR_OWORD_BIT32(_oword, _bit)				\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] &=					\
+		    __CPU_TO_LE_32(~EFX_SHIFT32(_bit, FIX_LINT(0)));	\
+		(_oword).eo_u32[1] &=					\
+		    __CPU_TO_LE_32(~EFX_SHIFT32(_bit, FIX_LINT(32)));	\
+		(_oword).eo_u32[2] &=					\
+		    __CPU_TO_LE_32(~EFX_SHIFT32(_bit, FIX_LINT(64)));	\
+		(_oword).eo_u32[3] &=					\
+		    __CPU_TO_LE_32(~EFX_SHIFT32(_bit, FIX_LINT(96)));	\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_bit' - possible side-effects?
#7083: FILE: drivers/net/sfc/efx/base/efx_types.h:1366:
+#define	EFX_CLEAR_OWORD_BIT32(_oword, _bit)				\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_oword).eo_u32[0] &=					\
+		    __CPU_TO_LE_32(~EFX_SHIFT32(_bit, FIX_LINT(0)));	\
+		(_oword).eo_u32[1] &=					\
+		    __CPU_TO_LE_32(~EFX_SHIFT32(_bit, FIX_LINT(32)));	\
+		(_oword).eo_u32[2] &=					\
+		    __CPU_TO_LE_32(~EFX_SHIFT32(_bit, FIX_LINT(64)));	\
+		(_oword).eo_u32[3] &=					\
+		    __CPU_TO_LE_32(~EFX_SHIFT32(_bit, FIX_LINT(96)));	\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword' - possible side-effects?
#7097: FILE: drivers/net/sfc/efx/base/efx_types.h:1380:
+#define	EFX_TEST_OWORD_BIT64(_oword, _bit)				\
+	(((_oword).eo_u64[0] &						\
+		    __CPU_TO_LE_64(EFX_SHIFT64(_bit, FIX_LINT(0)))) ||	\
+	((_oword).eo_u64[1] &						\
+		    __CPU_TO_LE_64(EFX_SHIFT64(_bit, FIX_LINT(64)))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_bit' - possible side-effects?
#7097: FILE: drivers/net/sfc/efx/base/efx_types.h:1380:
+#define	EFX_TEST_OWORD_BIT64(_oword, _bit)				\
+	(((_oword).eo_u64[0] &						\
+		    __CPU_TO_LE_64(EFX_SHIFT64(_bit, FIX_LINT(0)))) ||	\
+	((_oword).eo_u64[1] &						\
+		    __CPU_TO_LE_64(EFX_SHIFT64(_bit, FIX_LINT(64)))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword' - possible side-effects?
#7103: FILE: drivers/net/sfc/efx/base/efx_types.h:1386:
+#define	EFX_TEST_OWORD_BIT32(_oword, _bit)				\
+	(((_oword).eo_u32[0] &						\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(0)))) ||	\
+	((_oword).eo_u32[1] &						\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(32)))) ||	\
+	((_oword).eo_u32[2] &						\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(64)))) ||	\
+	((_oword).eo_u32[3] &						\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(96)))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_bit' - possible side-effects?
#7103: FILE: drivers/net/sfc/efx/base/efx_types.h:1386:
+#define	EFX_TEST_OWORD_BIT32(_oword, _bit)				\
+	(((_oword).eo_u32[0] &						\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(0)))) ||	\
+	((_oword).eo_u32[1] &						\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(32)))) ||	\
+	((_oword).eo_u32[2] &						\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(64)))) ||	\
+	((_oword).eo_u32[3] &						\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(96)))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_qword' - possible side-effects?
#7122: FILE: drivers/net/sfc/efx/base/efx_types.h:1405:
+#define	EFX_SET_QWORD_BIT32(_qword, _bit)				\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] |=					\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(0)));	\
+		(_qword).eq_u32[1] |=					\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(32)));	\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_bit' - possible side-effects?
#7122: FILE: drivers/net/sfc/efx/base/efx_types.h:1405:
+#define	EFX_SET_QWORD_BIT32(_qword, _bit)				\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] |=					\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(0)));	\
+		(_qword).eq_u32[1] |=					\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(32)));	\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_qword' - possible side-effects?
#7140: FILE: drivers/net/sfc/efx/base/efx_types.h:1423:
+#define	EFX_CLEAR_QWORD_BIT32(_qword, _bit)				\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] &=					\
+		    __CPU_TO_LE_32(~EFX_SHIFT32(_bit, FIX_LINT(0)));	\
+		(_qword).eq_u32[1] &=					\
+		    __CPU_TO_LE_32(~EFX_SHIFT32(_bit, FIX_LINT(32)));	\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_bit' - possible side-effects?
#7140: FILE: drivers/net/sfc/efx/base/efx_types.h:1423:
+#define	EFX_CLEAR_QWORD_BIT32(_qword, _bit)				\
+	do {								\
+		_NOTE(CONSTANTCONDITION)				\
+		(_qword).eq_u32[0] &=					\
+		    __CPU_TO_LE_32(~EFX_SHIFT32(_bit, FIX_LINT(0)));	\
+		(_qword).eq_u32[1] &=					\
+		    __CPU_TO_LE_32(~EFX_SHIFT32(_bit, FIX_LINT(32)));	\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_qword' - possible side-effects?
#7154: FILE: drivers/net/sfc/efx/base/efx_types.h:1437:
+#define	EFX_TEST_QWORD_BIT32(_qword, _bit)				\
+	(((_qword).eq_u32[0] &						\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(0)))) ||	\
+	((_qword).eq_u32[1] &						\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(32)))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_bit' - possible side-effects?
#7154: FILE: drivers/net/sfc/efx/base/efx_types.h:1437:
+#define	EFX_TEST_QWORD_BIT32(_qword, _bit)				\
+	(((_qword).eq_u32[0] &						\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(0)))) ||	\
+	((_qword).eq_u32[1] &						\
+		    __CPU_TO_LE_32(EFX_SHIFT32(_bit, FIX_LINT(32)))))

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword1' - possible side-effects?
#7218: FILE: drivers/net/sfc/efx/base/efx_types.h:1501:
+#define	EFX_OR_OWORD64(_oword1, _oword2)				\
+	do {								\
+		(_oword1).eo_u64[0] |= (_oword2).eo_u64[0];		\
+		(_oword1).eo_u64[1] |= (_oword2).eo_u64[1];		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword2' - possible side-effects?
#7218: FILE: drivers/net/sfc/efx/base/efx_types.h:1501:
+#define	EFX_OR_OWORD64(_oword1, _oword2)				\
+	do {								\
+		(_oword1).eo_u64[0] |= (_oword2).eo_u64[0];		\
+		(_oword1).eo_u64[1] |= (_oword2).eo_u64[1];		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword1' - possible side-effects?
#7225: FILE: drivers/net/sfc/efx/base/efx_types.h:1508:
+#define	EFX_OR_OWORD32(_oword1, _oword2)				\
+	do {								\
+		(_oword1).eo_u32[0] |= (_oword2).eo_u32[0];		\
+		(_oword1).eo_u32[1] |= (_oword2).eo_u32[1];		\
+		(_oword1).eo_u32[2] |= (_oword2).eo_u32[2];		\
+		(_oword1).eo_u32[3] |= (_oword2).eo_u32[3];		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword2' - possible side-effects?
#7225: FILE: drivers/net/sfc/efx/base/efx_types.h:1508:
+#define	EFX_OR_OWORD32(_oword1, _oword2)				\
+	do {								\
+		(_oword1).eo_u32[0] |= (_oword2).eo_u32[0];		\
+		(_oword1).eo_u32[1] |= (_oword2).eo_u32[1];		\
+		(_oword1).eo_u32[2] |= (_oword2).eo_u32[2];		\
+		(_oword1).eo_u32[3] |= (_oword2).eo_u32[3];		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword1' - possible side-effects?
#7234: FILE: drivers/net/sfc/efx/base/efx_types.h:1517:
+#define	EFX_AND_OWORD64(_oword1, _oword2)				\
+	do {								\
+		(_oword1).eo_u64[0] &= (_oword2).eo_u64[0];		\
+		(_oword1).eo_u64[1] &= (_oword2).eo_u64[1];		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword2' - possible side-effects?
#7234: FILE: drivers/net/sfc/efx/base/efx_types.h:1517:
+#define	EFX_AND_OWORD64(_oword1, _oword2)				\
+	do {								\
+		(_oword1).eo_u64[0] &= (_oword2).eo_u64[0];		\
+		(_oword1).eo_u64[1] &= (_oword2).eo_u64[1];		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword1' - possible side-effects?
#7241: FILE: drivers/net/sfc/efx/base/efx_types.h:1524:
+#define	EFX_AND_OWORD32(_oword1, _oword2)				\
+	do {								\
+		(_oword1).eo_u32[0] &= (_oword2).eo_u32[0];		\
+		(_oword1).eo_u32[1] &= (_oword2).eo_u32[1];		\
+		(_oword1).eo_u32[2] &= (_oword2).eo_u32[2];		\
+		(_oword1).eo_u32[3] &= (_oword2).eo_u32[3];		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_oword2' - possible side-effects?
#7241: FILE: drivers/net/sfc/efx/base/efx_types.h:1524:
+#define	EFX_AND_OWORD32(_oword1, _oword2)				\
+	do {								\
+		(_oword1).eo_u32[0] &= (_oword2).eo_u32[0];		\
+		(_oword1).eo_u32[1] &= (_oword2).eo_u32[1];		\
+		(_oword1).eo_u32[2] &= (_oword2).eo_u32[2];		\
+		(_oword1).eo_u32[3] &= (_oword2).eo_u32[3];		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_qword1' - possible side-effects?
#7256: FILE: drivers/net/sfc/efx/base/efx_types.h:1539:
+#define	EFX_OR_QWORD32(_qword1, _qword2)				\
+	do {								\
+		(_qword1).eq_u32[0] |= (_qword2).eq_u32[0];		\
+		(_qword1).eq_u32[1] |= (_qword2).eq_u32[1];		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_qword2' - possible side-effects?
#7256: FILE: drivers/net/sfc/efx/base/efx_types.h:1539:
+#define	EFX_OR_QWORD32(_qword1, _qword2)				\
+	do {								\
+		(_qword1).eq_u32[0] |= (_qword2).eq_u32[0];		\
+		(_qword1).eq_u32[1] |= (_qword2).eq_u32[1];		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_qword1' - possible side-effects?
#7269: FILE: drivers/net/sfc/efx/base/efx_types.h:1552:
+#define	EFX_AND_QWORD32(_qword1, _qword2)				\
+	do {								\
+		(_qword1).eq_u32[0] &= (_qword2).eq_u32[0];		\
+		(_qword1).eq_u32[1] &= (_qword2).eq_u32[1];		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

CHECK:MACRO_ARG_REUSE: Macro argument reuse '_qword2' - possible side-effects?
#7269: FILE: drivers/net/sfc/efx/base/efx_types.h:1552:
+#define	EFX_AND_QWORD32(_qword1, _qword2)				\
+	do {								\
+		(_qword1).eq_u32[0] &= (_qword2).eq_u32[0];		\
+		(_qword1).eq_u32[1] &= (_qword2).eq_u32[1];		\
+	_NOTE(CONSTANTCONDITION)					\
+	} while (B_FALSE)

total: 145 errors, 100 warnings, 323 checks, 7141 lines checked


More information about the test-report mailing list