1*63066b7aSAlexei Starovoitov // SPDX-License-Identifier: GPL-2.0 2*63066b7aSAlexei Starovoitov /* Copyright (c) 2025 Meta Platforms, Inc. and affiliates. */ 3*63066b7aSAlexei Starovoitov #include <test_progs.h> 4*63066b7aSAlexei Starovoitov #include "arena_strsearch.skel.h" 5*63066b7aSAlexei Starovoitov 6*63066b7aSAlexei Starovoitov static void test_arena_str(void) 7*63066b7aSAlexei Starovoitov { 8*63066b7aSAlexei Starovoitov LIBBPF_OPTS(bpf_test_run_opts, opts); 9*63066b7aSAlexei Starovoitov struct arena_strsearch *skel; 10*63066b7aSAlexei Starovoitov int ret; 11*63066b7aSAlexei Starovoitov 12*63066b7aSAlexei Starovoitov skel = arena_strsearch__open_and_load(); 13*63066b7aSAlexei Starovoitov if (!ASSERT_OK_PTR(skel, "arena_strsearch__open_and_load")) 14*63066b7aSAlexei Starovoitov return; 15*63066b7aSAlexei Starovoitov 16*63066b7aSAlexei Starovoitov ret = bpf_prog_test_run_opts(bpf_program__fd(skel->progs.arena_strsearch), &opts); 17*63066b7aSAlexei Starovoitov ASSERT_OK(ret, "ret_add"); 18*63066b7aSAlexei Starovoitov ASSERT_OK(opts.retval, "retval"); 19*63066b7aSAlexei Starovoitov if (skel->bss->skip) { 20*63066b7aSAlexei Starovoitov printf("%s:SKIP:compiler doesn't support arena_cast\n", __func__); 21*63066b7aSAlexei Starovoitov test__skip(); 22*63066b7aSAlexei Starovoitov } 23*63066b7aSAlexei Starovoitov arena_strsearch__destroy(skel); 24*63066b7aSAlexei Starovoitov } 25*63066b7aSAlexei Starovoitov 26*63066b7aSAlexei Starovoitov void test_arena_strsearch(void) 27*63066b7aSAlexei Starovoitov { 28*63066b7aSAlexei Starovoitov if (test__start_subtest("arena_strsearch")) 29*63066b7aSAlexei Starovoitov test_arena_str(); 30*63066b7aSAlexei Starovoitov } 31