WARNING: Possible repeated word: 'libarena' #72: FILE: tools/testing/selftests/bpf/Makefile:763: + +$(MAKE) -C libarena libarena.skel.h $(LIBARENA_MAKE_ARGS) WARNING: Improper SPDX comment style for 'tools/testing/selftests/bpf/libarena/include/libarena/common.h', please use '/*' instead #164: FILE: tools/testing/selftests/bpf/libarena/include/libarena/common.h:1: +// SPDX-License-Identifier: LGPL-2.1 OR BSD-2-Clause WARNING: Missing or malformed SPDX-License-Identifier tag in line 1 #164: FILE: tools/testing/selftests/bpf/libarena/include/libarena/common.h:1: +// SPDX-License-Identifier: LGPL-2.1 OR BSD-2-Clause WARNING: __always_unused or __maybe_unused is preferred over __attribute__((__unused__)) #185: FILE: tools/testing/selftests/bpf/libarena/include/libarena/common.h:22: +#define __maybe_unused __attribute__((__unused__)) ERROR: Macros with complex values should be enclosed in parentheses #188: FILE: tools/testing/selftests/bpf/libarena/include/libarena/common.h:25: +#define private(name) SEC(".data." #name) __hidden __attribute__((aligned(8))) 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. WARNING: Prefer __aligned(8) over __attribute__((aligned(8))) #188: FILE: tools/testing/selftests/bpf/libarena/include/libarena/common.h:25: +#define private(name) SEC(".data." #name) __hidden __attribute__((aligned(8))) WARNING: Use of volatile is usually wrong: see Documentation/process/volatile-considered-harmful.rst #209: FILE: tools/testing/selftests/bpf/libarena/include/libarena/common.h:46: +extern const volatile u32 zero; WARNING: Improper SPDX comment style for 'tools/testing/selftests/bpf/libarena/include/libarena/userspace.h', please use '/*' instead #249: FILE: tools/testing/selftests/bpf/libarena/include/libarena/userspace.h:1: +// SPDX-License-Identifier: LGPL-2.1 OR BSD-2-Clause WARNING: Missing or malformed SPDX-License-Identifier tag in line 1 #249: FILE: tools/testing/selftests/bpf/libarena/include/libarena/userspace.h:1: +// SPDX-License-Identifier: LGPL-2.1 OR BSD-2-Clause WARNING: line length of 81 exceeds 80 columns #278: FILE: tools/testing/selftests/bpf/libarena/include/libarena/userspace.h:30: +static inline int libarena_run_prog_args(int prog_fd, void *args, size_t argsize) WARNING: Use of volatile is usually wrong: see Documentation/process/volatile-considered-harmful.rst #358: FILE: tools/testing/selftests/bpf/libarena/src/common.bpf.c:5: +const volatile u32 zero = 0; total: 1 errors, 10 warnings, 0 checks, 324 lines checked NOTE: For some of the reported defects, checkpatch may be able to mechanically convert to the typical style using --fix or --fix-inplace. Commit 00da74127e67 ("selftests/bpf: Add basic libarena scaffolding") has style problems, please review. NOTE: Ignored message types: ALLOC_SIZEOF_STRUCT BAD_REPORTED_BY_LINK CAMELCASE COMMIT_LOG_LONG_LINE FILE_PATH_CHANGES GIT_COMMIT_ID MACRO_ARG_REUSE NO_AUTHOR_SIGN_OFF NOTE: If any of the errors are false positives, please report them to the maintainer, see CHECKPATCH in MAINTAINERS.