WARNING: line length of 92 exceeds 80 columns #66: FILE: net/bpf/test_run.c:573: +noinline int bpf_fentry_test11_pptr_nullable(struct bpf_fentry_test_pptr_t **pptr__nullable) WARNING: Use of volatile is usually wrong: see Documentation/process/volatile-considered-harmful.rst #89: FILE: net/bpf/test_run.c:596: +noinline void ***bpf_fentry_test14_ppptr(void **volatile *const ppptr) WARNING: line length of 83 exceeds 80 columns #187: FILE: net/bpf/test_run.c:794: + /* valid kernel pointer, valid pointer after dereference */ WARNING: line length of 82 exceeds 80 columns #191: FILE: net/bpf/test_run.c:798: + /* valid kernel pointer, user pointer after dereference */ WARNING: Missing a blank line after declarations #231: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:13: + int err, prog_fd; + LIBBPF_OPTS(bpf_test_run_opts, topts); WARNING: line length of 83 exceeds 80 columns #234: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:16: + if (!ASSERT_OK_PTR(skel, "fentry_fexit_pptr_nullable_test__open_and_load")) WARNING: line length of 87 exceeds 80 columns #249: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:31: + ASSERT_EQ(skel->bss->fentry_ptr_field_value1, 1979, "fentry_ptr_field_value1"); WARNING: line length of 87 exceeds 80 columns #250: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:32: + ASSERT_EQ(skel->bss->fentry_ptr_field_value2, 2026, "fentry_ptr_field_value2"); WARNING: line length of 85 exceeds 80 columns #254: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:36: + ASSERT_EQ(skel->bss->fexit_ptr_field_value1, 1979, "fexit_ptr_field_value1"); WARNING: line length of 85 exceeds 80 columns #255: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:37: + ASSERT_EQ(skel->bss->fexit_ptr_field_value2, 2026, "fexit_ptr_field_value2"); WARNING: Missing a blank line after declarations #266: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:48: + int err, prog_fd, i; + LIBBPF_OPTS(bpf_test_run_opts, topts); CHECK: Alignment should match open parenthesis #295: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:77: + ASSERT_TRUE(skel->bss->telemetry[i].id == 0 || + skel->bss->telemetry[i].id == 1, "id"); WARNING: line length of 93 exceeds 80 columns #298: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:80: + ASSERT_EQ(skel->bss->telemetry[i].fentry_called, 1, "fentry_called"); WARNING: line length of 93 exceeds 80 columns #299: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:81: + ASSERT_EQ(skel->bss->telemetry[i].fentry_ptr, (u64)29, "fentry_ptr"); WARNING: line length of 86 exceeds 80 columns #301: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:83: + /* Verify fexit captured correct values and return address. */ WARNING: line length of 91 exceeds 80 columns #302: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:84: + ASSERT_EQ(skel->bss->telemetry[i].fexit_called, 1, "fexit_called"); WARNING: line length of 83 exceeds 80 columns #304: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:86: + skel->bss->telemetry[i].fentry_pptr, "fexit_pptr"); CHECK: Alignment should match open parenthesis #304: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:86: + ASSERT_EQ(skel->bss->telemetry[i].fexit_pptr, + skel->bss->telemetry[i].fentry_pptr, "fexit_pptr"); WARNING: line length of 91 exceeds 80 columns #305: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:87: + ASSERT_EQ(skel->bss->telemetry[i].fexit_ptr, (u64)29, "fexit_ptr"); WARNING: line length of 87 exceeds 80 columns #307: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:89: + skel->bss->telemetry[i].fentry_pptr, "fexit_ret_pptr"); CHECK: Alignment should match open parenthesis #307: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:89: + ASSERT_EQ(skel->bss->telemetry[i].fexit_ret_pptr, + skel->bss->telemetry[i].fentry_pptr, "fexit_ret_pptr"); WARNING: line length of 99 exceeds 80 columns #308: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:90: + ASSERT_EQ(skel->bss->telemetry[i].fexit_ret_ptr, (u64)29, "fexit_ret_ptr"); WARNING: line length of 93 exceeds 80 columns #311: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:93: + ASSERT_EQ(skel->bss->telemetry[i].fentry_called, 1, "fentry_called"); WARNING: line length of 90 exceeds 80 columns #312: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:94: + ASSERT_EQ(skel->bss->telemetry[i].fentry_pptr, 17, "fentry_pptr"); WARNING: line length of 83 exceeds 80 columns #315: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:97: + * Verify fexit captured correct values and return address, WARNING: line length of 82 exceeds 80 columns #316: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:98: + * fentry_ptr value depends on kernel address space layout WARNING: line length of 91 exceeds 80 columns #319: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:101: + ASSERT_EQ(skel->bss->telemetry[i].fexit_called, 1, "fexit_called"); WARNING: line length of 88 exceeds 80 columns #320: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:102: + ASSERT_EQ(skel->bss->telemetry[i].fexit_pptr, 17, "fexit_pptr"); WARNING: line length of 81 exceeds 80 columns #322: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:104: + skel->bss->telemetry[i].fentry_ptr, "fexit_ptr"); CHECK: Alignment should match open parenthesis #322: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:104: + ASSERT_EQ(skel->bss->telemetry[i].fexit_ptr, + skel->bss->telemetry[i].fentry_ptr, "fexit_ptr"); WARNING: line length of 96 exceeds 80 columns #323: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:105: + ASSERT_EQ(skel->bss->telemetry[i].fexit_ret_pptr, 17, "fexit_ret_pptr"); WARNING: line length of 85 exceeds 80 columns #325: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:107: + skel->bss->telemetry[i].fentry_ptr, "fexit_ret_ptr"); CHECK: Alignment should match open parenthesis #325: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:107: + ASSERT_EQ(skel->bss->telemetry[i].fexit_ret_ptr, + skel->bss->telemetry[i].fentry_ptr, "fexit_ret_ptr"); WARNING: Missing a blank line after declarations #337: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:119: + int err, prog_fd, i; + LIBBPF_OPTS(bpf_test_run_opts, topts); WARNING: line length of 85 exceeds 80 columns #361: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:143: + ASSERT_EQ(skel->bss->telemetry[i].fentry_called, 1, "fentry_called"); WARNING: line length of 83 exceeds 80 columns #362: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:144: + ASSERT_EQ(skel->bss->telemetry[i].fexit_called, 1, "fexit_called"); WARNING: line length of 98 exceeds 80 columns #363: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:145: + ASSERT_EQ(skel->bss->telemetry[i].fentry_pptr, skel->bss->telemetry[i].fexit_pptr, CHECK: Alignment should match open parenthesis #364: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:146: + ASSERT_EQ(skel->bss->telemetry[i].fentry_pptr, skel->bss->telemetry[i].fexit_pptr, + "fentry_pptr == fexit_pptr"); WARNING: line length of 96 exceeds 80 columns #365: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:147: + ASSERT_EQ(skel->bss->telemetry[i].fexit_ptr, skel->bss->telemetry[i].fentry_ptr, CHECK: Alignment should match open parenthesis #366: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:148: + ASSERT_EQ(skel->bss->telemetry[i].fexit_ptr, skel->bss->telemetry[i].fentry_ptr, + "fexit_ptr"); WARNING: line length of 96 exceeds 80 columns #368: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:150: + skel->bss->telemetry[i].fexit_pptr_addr_valid, "fexit_pptr_addr_valid"); CHECK: Alignment should match open parenthesis #368: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:150: + ASSERT_EQ(skel->bss->telemetry[i].fentry_pptr_addr_valid, + skel->bss->telemetry[i].fexit_pptr_addr_valid, "fexit_pptr_addr_valid"); WARNING: line length of 107 exceeds 80 columns #370: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:152: + /* Should be set to 0 by kernel address boundary checks or an exception handler. */ WARNING: line length of 87 exceeds 80 columns #371: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:153: + ASSERT_EQ(skel->bss->telemetry[i].fentry_ptr, 0, "fentry_ptr"); WARNING: line length of 85 exceeds 80 columns #372: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:154: + ASSERT_EQ(skel->bss->telemetry[i].fexit_ptr, 0, "fexit_ptr"); WARNING: Missing a blank line after declarations #383: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:165: + int err, prog_fd; + LIBBPF_OPTS(bpf_test_run_opts, topts); WARNING: line length of 82 exceeds 80 columns #408: FILE: tools/testing/selftests/bpf/prog_tests/fentry_fexit_multi_level_ptr.c:190: + ASSERT_EQ(skel->bss->fexit_retval, (u64)ERR_PTR(-ENOMEM), "fexit_retval"); WARNING: do not add new typedefs #469: FILE: tools/testing/selftests/bpf/progs/fentry_fexit_pptr_nullable_test.c:19: +typedef struct bpf_fentry_test_pptr_t *bpf_fentry_test_pptr_p; CHECK: Alignment should match open parenthesis #481: FILE: tools/testing/selftests/bpf/progs/fentry_fexit_pptr_nullable_test.c:31: +int BPF_PROG(test_fentry_pptr_nullable, + struct bpf_fentry_test_pptr_t **pptr__nullable) CHECK: Alignment should match open parenthesis #489: FILE: tools/testing/selftests/bpf/progs/fentry_fexit_pptr_nullable_test.c:39: + bpf_probe_read_kernel(&fentry_ptr_field_value1, + sizeof(fentry_ptr_field_value1), &ptr->value1); CHECK: Alignment should match open parenthesis #491: FILE: tools/testing/selftests/bpf/progs/fentry_fexit_pptr_nullable_test.c:41: + bpf_probe_read_kernel(&fentry_ptr_field_value2, + sizeof(fentry_ptr_field_value2), &ptr->value2); CHECK: Alignment should match open parenthesis #497: FILE: tools/testing/selftests/bpf/progs/fentry_fexit_pptr_nullable_test.c:47: +int BPF_PROG(test_fexit_pptr_nullable, + struct bpf_fentry_test_pptr_t **pptr__nullable, int ret) WARNING: Use of volatile is usually wrong: see Documentation/process/volatile-considered-harmful.rst #540: FILE: tools/testing/selftests/bpf/progs/fentry_fexit_pptr_test.c:24: +volatile unsigned int current_index = 0; WARNING: line length of 83 exceeds 80 columns #579: FILE: tools/testing/selftests/bpf/progs/fentry_fexit_pptr_test.c:63: + telemetry[i].fexit_ret_ptr = ret ? (__u64)*bpf_core_cast(ret, __u32_p) : 0; WARNING: do not add new typedefs #604: FILE: tools/testing/selftests/bpf/progs/fentry_fexit_void_ppptr_test.c:15: +typedef void **volatile *const ppvpc_t; WARNING: Use of volatile is usually wrong: see Documentation/process/volatile-considered-harmful.rst #604: FILE: tools/testing/selftests/bpf/progs/fentry_fexit_void_ppptr_test.c:15: +typedef void **volatile *const ppvpc_t; WARNING: do not add new typedefs #610: FILE: tools/testing/selftests/bpf/progs/fentry_fexit_void_ppptr_test.c:21: +typedef void **void_pp; WARNING: line length of 84 exceeds 80 columns #616: FILE: tools/testing/selftests/bpf/progs/fentry_fexit_void_ppptr_test.c:27: + /* Invalid memory access is fixed by boundary checks or exception handler */ WARNING: Use of volatile is usually wrong: see Documentation/process/volatile-considered-harmful.rst #656: FILE: tools/testing/selftests/bpf/progs/fentry_fexit_void_pptr_test.c:23: +volatile unsigned int current_index = 0; WARNING: do not add new typedefs #662: FILE: tools/testing/selftests/bpf/progs/fentry_fexit_void_pptr_test.c:29: +typedef void *void_p; WARNING: Avoid line continuations in quoted strings #729: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:19: + asm volatile (" \ WARNING: Avoid unnecessary line continuations #733: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:23: +" ::: __clobber_all); \ WARNING: Avoid line continuations in quoted strings #733: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:23: +" ::: __clobber_all); \ WARNING: Avoid line continuations in quoted strings #742: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:32: + asm volatile (" \ WARNING: Avoid unnecessary line continuations #746: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:36: +" ::: __clobber_all); \ WARNING: Avoid line continuations in quoted strings #746: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:36: +" ::: __clobber_all); \ WARNING: Argument 'size' is not used in function-like macro #749: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:39: +#define INVALID_LOAD_OFFSET(section, name, size, offset, ctx_offset) \ +SEC(section) \ +__description(section " - ctx offset " #ctx_offset ", invalid load at offset " #offset " with scalar") \ +__failure __msg("R2 invalid mem access 'scalar'") \ +__naked void name##_load_at_##offset##_with_scalar(void) \ +{ \ + asm volatile (" \ WARNING: line length of 104 exceeds 80 columns #751: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:41: +__description(section " - ctx offset " #ctx_offset ", invalid load at offset " #offset " with scalar") \ WARNING: Avoid line continuations in quoted strings #755: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:45: + asm volatile (" \ WARNING: Avoid unnecessary line continuations #760: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:50: +" ::: __clobber_all); \ WARNING: Avoid line continuations in quoted strings #760: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:50: +" ::: __clobber_all); \ WARNING: Argument 'size' is not used in function-like macro #766: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:56: +#define INVALID_LOAD_NEG_OFFSET(section, name, size, offset, ctx_offset) \ +SEC(section) \ +__description(section " - ctx offset " #ctx_offset ", invalid load at negative offset " #offset " with scalar") \ +__failure __msg("R2 invalid mem access 'scalar'") \ +__naked void name##_load_at_neg_##offset##_with_scalar(void) \ +{ \ + asm volatile (" \ WARNING: line length of 113 exceeds 80 columns #768: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:58: +__description(section " - ctx offset " #ctx_offset ", invalid load at negative offset " #offset " with scalar") \ WARNING: Avoid line continuations in quoted strings #772: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:62: + asm volatile (" \ WARNING: Avoid unnecessary line continuations #777: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:67: +" ::: __clobber_all); \ WARNING: Avoid line continuations in quoted strings #777: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:67: +" ::: __clobber_all); \ WARNING: line length of 115 exceeds 80 columns #782: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:72: +__description(section " - ctx offset " #ctx_offset ", invalid store " #size " at offset " #offset " with scalar") \ WARNING: Avoid line continuations in quoted strings #786: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:76: + asm volatile (" \ WARNING: Avoid unnecessary line continuations #791: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:81: +" ::: __clobber_all); \ WARNING: Avoid line continuations in quoted strings #791: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:81: +" ::: __clobber_all); \ WARNING: line length of 124 exceeds 80 columns #799: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:89: +__description(section " - ctx offset " #ctx_offset ", invalid store " #size " at negative offset " #offset " with scalar") \ WARNING: Avoid line continuations in quoted strings #803: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:93: + asm volatile (" \ WARNING: Avoid unnecessary line continuations #808: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:98: +" ::: __clobber_all); \ WARNING: Avoid line continuations in quoted strings #808: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:98: +" ::: __clobber_all); \ WARNING: line length of 87 exceeds 80 columns #812: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:102: +VALID_CTX_ACCESS("fentry/bpf_fentry_test11_pptr_nullable", bpf_fentry_pptr_nullable, 0) WARNING: line length of 85 exceeds 80 columns #813: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:103: +VALID_CTX_ACCESS("fexit/bpf_fentry_test11_pptr_nullable", bpf_fexit_pptr_nullable, 0) WARNING: line length of 87 exceeds 80 columns #814: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:104: +INVALID_LOAD("fentry/bpf_fentry_test11_pptr_nullable", bpf_fentry_pptr_nullable, 64, 0) WARNING: line length of 99 exceeds 80 columns #815: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:105: +INVALID_LOAD_OFFSET("fentry/bpf_fentry_test11_pptr_nullable", bpf_fentry_pptr_nullable, 64, 128, 0) WARNING: line length of 103 exceeds 80 columns #816: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:106: +INVALID_LOAD_NEG_OFFSET("fentry/bpf_fentry_test11_pptr_nullable", bpf_fentry_pptr_nullable, 64, 128, 0) WARNING: line length of 87 exceeds 80 columns #817: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:107: +INVALID_STORE("fentry/bpf_fentry_test11_pptr_nullable", bpf_fentry_pptr_nullable, 8, 0) WARNING: line length of 88 exceeds 80 columns #818: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:108: +INVALID_STORE("fentry/bpf_fentry_test11_pptr_nullable", bpf_fentry_pptr_nullable, 16, 0) WARNING: line length of 88 exceeds 80 columns #819: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:109: +INVALID_STORE("fentry/bpf_fentry_test11_pptr_nullable", bpf_fentry_pptr_nullable, 32, 0) WARNING: line length of 88 exceeds 80 columns #820: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:110: +INVALID_STORE("fentry/bpf_fentry_test11_pptr_nullable", bpf_fentry_pptr_nullable, 64, 0) WARNING: line length of 100 exceeds 80 columns #821: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:111: +INVALID_STORE_OFFSET("fentry/bpf_fentry_test11_pptr_nullable", bpf_fentry_pptr_nullable, 64, 128, 0) WARNING: line length of 104 exceeds 80 columns #822: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:112: +INVALID_STORE_NEG_OFFSET("fentry/bpf_fentry_test11_pptr_nullable", bpf_fentry_pptr_nullable, 64, 128, 0) WARNING: line length of 87 exceeds 80 columns #828: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:118: +INVALID_LOAD_OFFSET("fentry/bpf_fentry_test12_pptr", bpf_fentry_test12_pptr, 64, 64, 8) WARNING: line length of 91 exceeds 80 columns #829: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:119: +INVALID_LOAD_NEG_OFFSET("fentry/bpf_fentry_test12_pptr", bpf_fentry_test12_pptr, 64, 64, 8) WARNING: line length of 89 exceeds 80 columns #831: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:121: +INVALID_STORE_OFFSET("fentry/bpf_fentry_test12_pptr", bpf_fentry_test12_pptr, 64, 128, 8) WARNING: line length of 93 exceeds 80 columns #832: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:122: +INVALID_STORE_NEG_OFFSET("fentry/bpf_fentry_test12_pptr", bpf_fentry_test12_pptr, 64, 128, 8) WARNING: line length of 88 exceeds 80 columns #842: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:132: +__description("lsm/sb_eat_lsm_opts double pointer parameter trusted - valid ctx access") WARNING: Avoid line continuations in quoted strings #846: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:136: + asm volatile (" \ WARNING: line length of 96 exceeds 80 columns #855: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:145: +__description("lsm/sb_eat_lsm_opts double pointer parameter trusted - invalid load with scalar") WARNING: Avoid line continuations in quoted strings #859: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:149: + asm volatile (" \ WARNING: line length of 97 exceeds 80 columns #869: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:159: +__description("lsm/sb_eat_lsm_opts double pointer parameter trusted - invalid store with scalar") WARNING: Avoid line continuations in quoted strings #873: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:163: + asm volatile (" \ CHECK: Alignment should match open parenthesis #888: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:178: +int BPF_PROG(ctx_double_ptr_nullable_var_access_bpf_helpers, + struct bpf_fentry_test_pptr_t **pptr__nullable) WARNING: line length of 87 exceeds 80 columns #890: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:180: + /* Check compatibility with BPF helpers; NULL checks should not be required. */ WARNING: line length of 84 exceeds 80 columns #912: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:202: +__description("fexit/double pointer return value - valid dereference of return val") CHECK: Alignment should match open parenthesis #915: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:205: +int BPF_PROG(ctx_double_ptr_return_access, __u32 id, + __u32 **pptr, __u32 **ret) WARNING: Missing a blank line after declarations #919: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:209: + struct __u32_wrap *pu32; + ppu32 = bpf_core_cast(ret, __u32_p); CHECK: Alignment should match open parenthesis #929: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:219: +int BPF_PROG(ctx_double_ptr_return_access_bpf_helpers, __u32 id, + __u32 **pptr, __u32 **ret) WARNING: line length of 100 exceeds 80 columns #940: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:230: +__description("fentry/double pointer parameter - bpf helpers with nullable var, direct ctx pointer") CHECK: Alignment should match open parenthesis #943: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:233: +int BPF_PROG(ctx_double_ptr_nullable_var_access_bpf_helpers_ctx, + struct bpf_fentry_test_pptr_t **pptr__nullable) WARNING: line length of 97 exceeds 80 columns #956: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:246: +__description("fexit/double pointer parameter - bpf helpers with return val, direct ctx pointer") CHECK: Alignment should match open parenthesis #959: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:249: +int BPF_PROG(ctx_double_ptr_return_access_bpf_helpers_ctx, __u32 id, + __u32 **pptr, __u32 **ret) WARNING: do not add new typedefs #978: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:268: +typedef struct bpf_fentry_test_pptr_t *bpf_fentry_test_pptr_p; WARNING: line length of 96 exceeds 80 columns #981: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:271: +__description("fentry/double pointer parameter - dereference followed by valid load of field 1") CHECK: Alignment should match open parenthesis #984: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:274: +int BPF_PROG(ctx_double_ptr_deref_with_field_1_load, + struct bpf_fentry_test_pptr_t **pptr__nullable) WARNING: line length of 96 exceeds 80 columns #996: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:286: +__description("fentry/double pointer parameter - dereference followed by valid load of field 2") CHECK: Alignment should match open parenthesis #999: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:289: +int BPF_PROG(ctx_double_ptr_deref_with_field_2_load, + struct bpf_fentry_test_pptr_t **pptr__nullable) WARNING: line length of 108 exceeds 80 columns #1011: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:301: +__description("fentry/double pointer parameter - dereference followed by invalid out-of-bounds offset load") CHECK: Alignment should match open parenthesis #1014: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:304: +int BPF_PROG(ctx_double_ptr_deref_with_load_by_positive_out_of_bound_offset, + struct bpf_fentry_test_pptr_t **pptr__nullable) WARNING: Avoid line continuations in quoted strings #1023: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:313: + asm volatile (" \ WARNING: line length of 108 exceeds 80 columns #1034: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:324: +__description("fentry/double pointer parameter - dereference followed by invalid out-of-bounds offset load") WARNING: line length of 85 exceeds 80 columns #1035: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:325: +__failure __msg("R2 is ptr_bpf_fentry_test_pptr_t invalid negative access: off=-128") CHECK: Alignment should match open parenthesis #1037: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:327: +int BPF_PROG(ctx_double_ptr_deref_with_load_by_negative_out_of_bound_offset, + struct bpf_fentry_test_pptr_t **pptr__nullable) WARNING: Avoid line continuations in quoted strings #1046: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:336: + asm volatile (" \ WARNING: line length of 99 exceeds 80 columns #1057: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:347: +__description("fentry/double pointer parameter - dereference followed by invalid store to field 1") CHECK: Alignment should match open parenthesis #1060: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:350: +int BPF_PROG(ctx_double_ptr_deref_with_field_1_modification, + struct bpf_fentry_test_pptr_t **pptr__nullable) WARNING: Avoid line continuations in quoted strings #1068: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:358: + asm volatile (" \ WARNING: line length of 99 exceeds 80 columns #1079: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:369: +__description("fentry/double pointer parameter - dereference followed by invalid store to field 2") CHECK: Alignment should match open parenthesis #1082: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:372: +int BPF_PROG(ctx_double_ptr_deref_with_field_2_modification, + struct bpf_fentry_test_pptr_t **pptr__nullable) WARNING: Avoid line continuations in quoted strings #1090: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:380: + asm volatile (" \ WARNING: line length of 132 exceeds 80 columns #1101: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:391: +__description("fentry/double pointer parameter - dereference followed by invalid store to positive offset beyond struct boundaries") CHECK: Alignment should match open parenthesis #1104: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:394: +int BPF_PROG(ctx_double_ptr_deref_with_store_by_positive_invalid_offset, + struct bpf_fentry_test_pptr_t **pptr__nullable) WARNING: Avoid line continuations in quoted strings #1112: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:402: + asm volatile (" \ WARNING: line length of 132 exceeds 80 columns #1124: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:414: +__description("fentry/double pointer parameter - dereference followed by invalid store to negative offset beyond struct boundaries") WARNING: line length of 85 exceeds 80 columns #1125: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:415: +__failure __msg("R3 is ptr_bpf_fentry_test_pptr_t invalid negative access: off=-128") CHECK: Alignment should match open parenthesis #1127: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:417: +int BPF_PROG(ctx_double_ptr_deref_with_store_by_negative_invalid_offset, + struct bpf_fentry_test_pptr_t **pptr__nullable) WARNING: Avoid line continuations in quoted strings #1135: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:425: + asm volatile (" \ WARNING: line length of 84 exceeds 80 columns #1151: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:441: +INVALID_LOAD_OFFSET("fentry/bpf_fentry_test15_penum32", bpf_fentry_penum32, 8, 1, 0) WARNING: line length of 85 exceeds 80 columns #1155: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:445: +INVALID_STORE_OFFSET("fentry/bpf_fentry_test15_penum32", bpf_fentry_penum32, 8, 1, 0) WARNING: line length of 89 exceeds 80 columns #1156: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:446: +INVALID_STORE_NEG_OFFSET("fentry/bpf_fentry_test15_penum32", bpf_fentry_penum32, 8, 1, 0) CHECK: Alignment should match open parenthesis #1182: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:472: +INVALID_CTX_ACCESS("fentry/bpf_fentry_test19_pfloat", bpf_fentry_float, + "fentry/pointer to float - invalid ctx access", CHECK: Alignment should match open parenthesis #1187: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:477: +INVALID_CTX_ACCESS("fentry/bpf_fentry_test20_ppfloat", bpf_fentry_pfloat, + "fentry/double pointer to float - invalid ctx access", WARNING: line length of 83 exceeds 80 columns #1202: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:492: +INVALID_STORE_OFFSET("fentry/bpf_fentry_test22_ppchar", bpf_fentry_ppchar, 8, 1, 0) CHECK: Alignment should match open parenthesis #1209: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:499: +INVALID_CTX_ACCESS("fentry/bpf_fentry_test23_ret_ppchar", bpf_fentry_ret_ppchar, + "fentry/bpf_fentry_test23_ret_ppchar - invalid ctx access for nonexisting prameter", WARNING: line length of 88 exceeds 80 columns #1213: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:503: +INVALID_LOAD_OFFSET("fexit/bpf_fentry_test23_ret_ppchar", bpf_fexit_ret_ppchar, 8, 1, 0) WARNING: line length of 92 exceeds 80 columns #1214: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:504: +INVALID_LOAD_NEG_OFFSET("fexit/bpf_fentry_test23_ret_ppchar", bpf_fexit_ret_ppchar, 8, 1, 0) WARNING: line length of 89 exceeds 80 columns #1216: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:506: +INVALID_STORE_OFFSET("fexit/bpf_fentry_test23_ret_ppchar", bpf_fexit_ret_ppchar, 8, 1, 0) WARNING: line length of 93 exceeds 80 columns #1217: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:507: +INVALID_STORE_NEG_OFFSET("fexit/bpf_fentry_test23_ret_ppchar", bpf_fexit_ret_ppchar, 8, 1, 0) WARNING: line length of 84 exceeds 80 columns #1219: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:509: +/* Double pointer to struct file as return value, double pointer to void as input */ CHECK: Alignment should match open parenthesis #1222: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:512: +INVALID_CTX_ACCESS("fentry/bpf_fentry_test24_ret_ppfile", bpf_fenty_ret_ppfile, + "fentry/bpf_fentry_test24_ret_ppfile - invalid ctx access for nonexisting prameter", WARNING: line length of 88 exceeds 80 columns #1227: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:517: +INVALID_LOAD_OFFSET("fexit/bpf_fentry_test24_ret_ppfile", bpf_fexit_ret_ppfile, 8, 1, 8) WARNING: line length of 92 exceeds 80 columns #1228: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:518: +INVALID_LOAD_NEG_OFFSET("fexit/bpf_fentry_test24_ret_ppfile", bpf_fexit_ret_ppfile, 8, 1, 8) WARNING: line length of 89 exceeds 80 columns #1230: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:520: +INVALID_STORE_OFFSET("fexit/bpf_fentry_test24_ret_ppfile", bpf_fexit_ret_ppfile, 8, 1, 8) WARNING: line length of 93 exceeds 80 columns #1231: FILE: tools/testing/selftests/bpf/progs/verifier_ctx_ptr_param.c:521: +INVALID_STORE_NEG_OFFSET("fexit/bpf_fentry_test24_ret_ppfile", bpf_fexit_ret_ppfile, 8, 1, 8) total: 0 errors, 128 warnings, 29 checks, 1141 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 32bc119512dc ("selftests/bpf: Add trampolines single and multi-level pointer params test coverage") 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. total: 0 errors, 128 warnings, 29 checks, 1141 lines checked