From: Eduard Zingerman Date: Sat, 1 Oct 2022 10:44:25 +0000 (+0300) Subject: selftests/bpf: Test btf dump for struct with padding only fields X-Git-Tag: v6.2-rc1~99^2~413^2~16 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=d503f1176b14f722a40ea5110312614982f9a80b;p=thirdparty%2Fkernel%2Flinux.git selftests/bpf: Test btf dump for struct with padding only fields Structures with zero regular fields but some padding constitute a special case in btf_dump.c:btf_dump_emit_struct_def with regards to newline before closing '}'. Signed-off-by: Eduard Zingerman Signed-off-by: Andrii Nakryiko Link: https://lore.kernel.org/bpf/20221001104425.415768-2-eddyz87@gmail.com --- diff --git a/tools/testing/selftests/bpf/progs/btf_dump_test_case_padding.c b/tools/testing/selftests/bpf/progs/btf_dump_test_case_padding.c index f2661c8d2d900..7cb522d22a664 100644 --- a/tools/testing/selftests/bpf/progs/btf_dump_test_case_padding.c +++ b/tools/testing/selftests/bpf/progs/btf_dump_test_case_padding.c @@ -102,12 +102,21 @@ struct zone { struct zone_padding __pad__; }; +/* ----- START-EXPECTED-OUTPUT ----- */ +struct padding_wo_named_members { + long: 64; + long: 64; +}; + +/* ------ END-EXPECTED-OUTPUT ------ */ + int f(struct { struct padded_implicitly _1; struct padded_explicitly _2; struct padded_a_lot _3; struct padded_cache_line _4; struct zone _5; + struct padding_wo_named_members _6; } *_) { return 0;