* |WARNING| pw158198 [PATCH v1 5/8] vfio: cleanup and refactor
[not found] <9eac42bcb583725666e1269e93da7280591af28a.1761669439.git.anatoly.burakov@intel.com>
@ 2025-10-28 16:45 ` checkpatch
0 siblings, 0 replies; only message in thread
From: checkpatch @ 2025-10-28 16:45 UTC (permalink / raw)
To: test-report; +Cc: Anatoly Burakov
Test-Label: checkpatch
Test-Status: WARNING
http://dpdk.org/patch/158198
_coding style issues_
ERROR:COMPLEX_MACRO: Macros with complex values should be enclosed in parentheses
#3863: FILE: lib/eal/linux/eal_vfio.h:115:
+#define CONTAINER_FOREACH_ACTIVE(cfg) \
+ CONTAINER_FOREACH((cfg)) \
+ if (((cfg)->active))
BUT SEE:
do {} while (0) advice is over-stated in a few situations:
The more obvious case is macros, like MODULE_PARM_DESC, invoked at
file-scope, where C disallows code (it must be in functions). See
$exceptions if you have one to add by name.
More troublesome is declarative macros used at top of new scope,
like DECLARE_PER_CPU. These might just compile with a do-while-0
wrapper, but would be incorrect. Most of these are handled by
detecting struct,union,etc declaration primitives in $exceptions.
Theres also macros called inside an if (block), which "return" an
expression. These cannot do-while, and need a ({}) wrapper.
Enjoy this qualification while we work to improve our heuristics.
ERROR:COMPLEX_MACRO: Macros with complex values should be enclosed in parentheses
#3872: FILE: lib/eal/linux/eal_vfio.h:124:
+#define GROUP_FOREACH_ACTIVE(cfg, grp) \
+ GROUP_FOREACH((cfg), (grp)) \
+ if (((grp)->active))
BUT SEE:
do {} while (0) advice is over-stated in a few situations:
The more obvious case is macros, like MODULE_PARM_DESC, invoked at
file-scope, where C disallows code (it must be in functions). See
$exceptions if you have one to add by name.
More troublesome is declarative macros used at top of new scope,
like DECLARE_PER_CPU. These might just compile with a do-while-0
wrapper, but would be incorrect. Most of these are handled by
detecting struct,union,etc declaration primitives in $exceptions.
Theres also macros called inside an if (block), which "return" an
expression. These cannot do-while, and need a ({}) wrapper.
Enjoy this qualification while we work to improve our heuristics.
ERROR:COMPLEX_MACRO: Macros with complex values should be enclosed in parentheses
#3886: FILE: lib/eal/linux/eal_vfio.h:133:
+#define DEVICE_FOREACH_ACTIVE(cfg, dev) \
+ DEVICE_FOREACH((cfg), (dev)) \
+ if (((dev)->active))
BUT SEE:
do {} while (0) advice is over-stated in a few situations:
The more obvious case is macros, like MODULE_PARM_DESC, invoked at
file-scope, where C disallows code (it must be in functions). See
$exceptions if you have one to add by name.
More troublesome is declarative macros used at top of new scope,
like DECLARE_PER_CPU. These might just compile with a do-while-0
wrapper, but would be incorrect. Most of these are handled by
detecting struct,union,etc declaration primitives in $exceptions.
Theres also macros called inside an if (block), which "return" an
expression. These cannot do-while, and need a ({}) wrapper.
Enjoy this qualification while we work to improve our heuristics.
total: 3 errors, 0 warnings, 4775 lines checked
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2025-10-28 16:46 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <9eac42bcb583725666e1269e93da7280591af28a.1761669439.git.anatoly.burakov@intel.com>
2025-10-28 16:45 ` |WARNING| pw158198 [PATCH v1 5/8] vfio: cleanup and refactor checkpatch
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).