[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <e405a055-6c7e-8570-3589-d8dc88f9bb26@linux.dev>
Date: Fri, 2 Jun 2023 17:27:49 -0700
From: Martin KaFai Lau <martin.lau@...ux.dev>
To: Rhys Rustad-Elliott <me@...sre.net>
Cc: Alexei Starovoitov <ast@...nel.org>,
Daniel Borkmann <daniel@...earbox.net>,
Andrii Nakryiko <andrii@...nel.org>,
Song Liu <song@...nel.org>, Yonghong Song <yhs@...com>,
John Fastabend <john.fastabend@...il.com>,
KP Singh <kpsingh@...nel.org>,
Stanislav Fomichev <sdf@...gle.com>,
Hao Luo <haoluo@...gle.com>, Jiri Olsa <jolsa@...nel.org>,
Mykola Lysenko <mykolal@...com>, Shuah Khan <shuah@...nel.org>,
linux-kernel@...r.kernel.org, bpf@...r.kernel.org,
linux-kselftest@...r.kernel.org
Subject: Re: [PATCH bpf v2 2/2] selftests/bpf: Add access_inner_map selftest
On 6/2/23 12:02 PM, Rhys Rustad-Elliott wrote:
> Add a selftest that accesses a BPF_MAP_TYPE_ARRAY (at a nonzero index)
> nested within a BPF_MAP_TYPE_HASH_OF_MAPS to flex a previously buggy
> case.
>
> Signed-off-by: Rhys Rustad-Elliott <me@...sre.net>
> ---
> .../bpf/prog_tests/inner_array_lookup.c | 31 +++++++++++++
> .../bpf/progs/test_inner_array_lookup.c | 45 +++++++++++++++++++
> 2 files changed, 76 insertions(+)
> create mode 100644 tools/testing/selftests/bpf/prog_tests/inner_array_lookup.c
> create mode 100644 tools/testing/selftests/bpf/progs/test_inner_array_lookup.c
>
> diff --git a/tools/testing/selftests/bpf/prog_tests/inner_array_lookup.c b/tools/testing/selftests/bpf/prog_tests/inner_array_lookup.c
> new file mode 100644
> index 000000000000..29d4d0067c60
> --- /dev/null
> +++ b/tools/testing/selftests/bpf/prog_tests/inner_array_lookup.c
> @@ -0,0 +1,31 @@
> +// SPDX-License-Identifier: GPL-2.0-only
> +
> +#include <test_progs.h>
> +
> +#include "test_inner_array_lookup.skel.h"
> +
> +void test_inner_array_lookup(void)
> +{
> + int map1_fd, err;
> + int key = 3;
> + int val = 1;
> + struct test_inner_array_lookup *skel;
> +
> + skel = test_inner_array_lookup__open_and_load();
> + if (!ASSERT_TRUE(skel != NULL, "open_load_skeleton"))
Changed to ASSERT_OK_PTR. Similar changes to the ASSERT_TRUE below.
> + return;
> +
> + err = test_inner_array_lookup__attach(skel);
> + if (!ASSERT_TRUE(err == 0, "skeleton_attach"))
> + goto cleanup;
> +
> + map1_fd = bpf_map__fd(skel->maps.inner_map1);
> + bpf_map_update_elem(map1_fd, &key, &val, 0);
> +
> + /* Probe should have set the element at index 3 to 2 */
> + bpf_map_lookup_elem(map1_fd, &key, &val);
> + ASSERT_TRUE(val == 2, "value_is_2");
> +
> +cleanup:
> + test_inner_array_lookup__destroy(skel);
> +}
> diff --git a/tools/testing/selftests/bpf/progs/test_inner_array_lookup.c b/tools/testing/selftests/bpf/progs/test_inner_array_lookup.c
> new file mode 100644
> index 000000000000..c2c8f2fa451d
> --- /dev/null
> +++ b/tools/testing/selftests/bpf/progs/test_inner_array_lookup.c
Removed 'test_' from the filename, already mentioned in v1.
Applied. Thanks for the fix.
Powered by blists - more mailing lists