WARNING: please write a help paragraph that fully describes the config symbol with at least 4 lines #61: FILE: kernel/Kconfig.kexec:49: +config KEXEC_BPF + bool "Enable bpf-prog to parse the kexec image" + depends on KEXEC_FILE + depends on DEBUG_INFO_BTF && BPF_SYSCALL + help + This is a feature to run bpf section inside a kexec image file, which + parses the image properly and help kernel set up kexec boot protocol + WARNING: externs should be avoided in .c files #141: FILE: kernel/kexec_bpf_loader.c:52: +void kexec_image_parser_anchor(struct kexec_context *context, ERROR: inline keyword should sit between storage class and type #144: FILE: kernel/kexec_bpf_loader.c:55: +void noinline __used kexec_image_parser_anchor(struct kexec_context *context, WARNING: line length of 82 exceeds 80 columns #301: FILE: kernel/kexec_bpf_loader.c:212: + * Suffix must be exactly one digit in [1, KEXEC_ELF_BPF_MAX_IDX]. WARNING: line length of 82 exceeds 80 columns #308: FILE: kernel/kexec_bpf_loader.c:219: + pr_err("kexec: invalid BPF section index in: %s\n", name); WARNING: line length of 86 exceeds 80 columns #383: FILE: kernel/kexec_bpf_loader.c:294: + * process_bpf_parsers_container - recursively process an ELF container, which holds a WARNING: line length of 85 exceeds 80 columns #394: FILE: kernel/kexec_bpf_loader.c:305: + * 3. At each level, stop trying at the first attempt where context->parsed becomes CHECK: Alignment should match open parenthesis #400: FILE: kernel/kexec_bpf_loader.c:311: +static int process_bpf_parsers_container(const char *elf_buf, size_t elf_sz, + struct kexec_context *context, int depth) CHECK: Alignment should match open parenthesis #443: FILE: kernel/kexec_bpf_loader.c:354: + pr_info("kexec: arm_bpf_prog failed for %s (depth %d), trying next\n", + section_name, depth); CHECK: Blank lines aren't necessary after an open brace '{' #513: FILE: kernel/kexec_bpf_loader.c:424: + if (!validate_elf_bpf_sections(parser_start, parser_sz)) { + CHECK: Alignment should match open parenthesis #515: FILE: kernel/kexec_bpf_loader.c:426: + ret = kernel_read_file_from_fd(extended_fd, + 0, WARNING: line length of 86 exceeds 80 columns #525: FILE: kernel/kexec_bpf_loader.c:436: + ret = process_bpf_parsers_container(parser_start, parser_sz, &ctx, 0); WARNING: line length of 88 exceeds 80 columns #529: FILE: kernel/kexec_bpf_loader.c:440: + /* Envelop should hold valid kernel, initrd, cmdline sections */ CHECK: Blank lines aren't necessary before a close brace '}' #645: FILE: kernel/kexec_file.c:295: + } CHECK: extern prototypes should be avoided in .h files #668: FILE: kernel/kexec_internal.h:42: +extern int decompose_kexec_image(struct kimage *image, int extended_fd); total: 1 errors, 8 warnings, 6 checks, 589 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 368ed3e2cd3c ("kexec_file: Use bpf-prog to decompose image") 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.