selftests/bpf: Add selftest for pointer-to-array-of-struct BTF dump
authorJean-Philippe Brucker <jean-philippe@linaro.org>
Fri, 19 Mar 2021 11:25:55 +0000 (12:25 +0100)
committerAndrii Nakryiko <andrii@kernel.org>
Fri, 19 Mar 2021 21:14:44 +0000 (14:14 -0700)
commitf118aac651d87c1811d2abd940f73c45c16b29d7
tree84185c1e0dc413e343ecfa48e0b8b5b237069707
parent901ee1d750f29a335423eeb9463c3ca461ca18c2
selftests/bpf: Add selftest for pointer-to-array-of-struct BTF dump

Bpftool used to issue forward declarations for a struct used as part of
a pointer to array, which is invalid. Add a test to check that the
struct is fully defined in this case:

@@ -134,9 +134,9 @@
  };
 };

-struct struct_in_array {};
+struct struct_in_array;

-struct struct_in_array_typed {};
+struct struct_in_array_typed;

 typedef struct struct_in_array_typed struct_in_array_t[2];

@@ -189,3 +189,7 @@
  struct struct_with_embedded_stuff _14;
 };

+struct struct_in_array {};
+
+struct struct_in_array_typed {};
+
...
#13/1 btf_dump: syntax:FAIL

Suggested-by: Andrii Nakryiko <andrii.nakryiko@gmail.com>
Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20210319112554.794552-3-jean-philippe@linaro.org
tools/testing/selftests/bpf/progs/btf_dump_test_case_syntax.c