Commit 90a1deda authored by Ilya Leoshkevich's avatar Ilya Leoshkevich Committed by Alexei Starovoitov
Browse files

selftests/bpf: Fix test_ksyms on non-SMP kernels



On non-SMP kernels __per_cpu_start is not 0, so look it up in kallsyms.

Signed-off-by: default avatarIlya Leoshkevich <iii@linux.ibm.com>
Signed-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
Acked-by: default avatarAndrii Nakryiko <andriin@fb.com>
Link: https://lore.kernel.org/bpf/20200910171336.3161995-1-iii@linux.ibm.com
parent d66423fb
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -32,6 +32,7 @@ static __u64 kallsyms_find(const char *sym)

void test_ksyms(void)
{
	__u64 per_cpu_start_addr = kallsyms_find("__per_cpu_start");
	__u64 link_fops_addr = kallsyms_find("bpf_link_fops");
	const char *btf_path = "/sys/kernel/btf/vmlinux";
	struct test_ksyms *skel;
@@ -63,8 +64,9 @@ void test_ksyms(void)
	      "got %llu, exp %llu\n", data->out__bpf_link_fops1, (__u64)0);
	CHECK(data->out__btf_size != btf_size, "btf_size",
	      "got %llu, exp %llu\n", data->out__btf_size, btf_size);
	CHECK(data->out__per_cpu_start != 0, "__per_cpu_start",
	      "got %llu, exp %llu\n", data->out__per_cpu_start, (__u64)0);
	CHECK(data->out__per_cpu_start != per_cpu_start_addr, "__per_cpu_start",
	      "got %llu, exp %llu\n", data->out__per_cpu_start,
	      per_cpu_start_addr);

cleanup:
	test_ksyms__destroy(skel);