selftests/bpf: fix btf_dedup testing code

btf_dedup testing code doesn't account for length of struct btf_header
when calculating the start of a string section. This patch fixes this
problem.

Fixes: 49b57e0d01 ("tools/bpf: remove btf__get_strings() superseded by raw data API")
Signed-off-by: Andrii Nakryiko <andriin@fb.com>
Acked-by: Song Liu <songliubraving@fb.com>
Acked-by: Yonghong Song <yhs@fb.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
This commit is contained in:
Andrii Nakryiko 2019-02-28 15:31:21 -08:00 committed by Daniel Borkmann
parent 3d8669e637
commit 8054d51f76
2 changed files with 3 additions and 2 deletions

View File

@ -14,6 +14,7 @@ feature
test_libbpf_open
test_sock
test_sock_addr
test_sock_fields
urandom_read
test_btf
test_sockmap

View File

@ -5936,9 +5936,9 @@ static int do_test_dedup(unsigned int test_num)
}
test_hdr = test_btf_data;
test_strs = test_btf_data + test_hdr->str_off;
test_strs = test_btf_data + sizeof(*test_hdr) + test_hdr->str_off;
expect_hdr = expect_btf_data;
expect_strs = expect_btf_data + expect_hdr->str_off;
expect_strs = expect_btf_data + sizeof(*test_hdr) + expect_hdr->str_off;
if (CHECK(test_hdr->str_len != expect_hdr->str_len,
"test_hdr->str_len:%u != expect_hdr->str_len:%u",
test_hdr->str_len, expect_hdr->str_len)) {