Commit b8a20548 authored by Jerome Marchand's avatar Jerome Marchand Committed by Alexei Starovoitov
Browse files

selftests/bpf: Convert test_sysctl to prog_tests



Convert test_sysctl test to prog_tests with minimal change to the
tests themselves.

Signed-off-by: default avatarJerome Marchand <jmarchan@redhat.com>
Acked-by: default avatarYonghong Song <yonghong.song@linux.dev>
Link: https://lore.kernel.org/r/20250619140603.148942-3-jmarchan@redhat.com


Signed-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
parent 2eb76485
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -21,7 +21,6 @@ test_lirc_mode2_user
flow_dissector_load
test_tcpnotify_user
test_libbpf
test_sysctl
xdping
test_cpp
*.d
+2 −3
Original line number Diff line number Diff line
@@ -73,7 +73,7 @@ endif
# Order correspond to 'make run_tests' order
TEST_GEN_PROGS = test_verifier test_tag test_maps test_lru_map test_progs \
	test_sockmap \
	test_tcpnotify_user test_sysctl \
	test_tcpnotify_user \
	test_progs-no_alu32
TEST_INST_SUBDIRS := no_alu32

@@ -220,7 +220,7 @@ ifeq ($(VMLINUX_BTF),)
$(error Cannot find a vmlinux for VMLINUX_BTF at any of "$(VMLINUX_BTF_PATHS)")
endif

# Define simple and short `make test_progs`, `make test_sysctl`, etc targets
# Define simple and short `make test_progs`, `make test_maps`, etc targets
# to build individual tests.
# NOTE: Semicolon at the end is critical to override lib.mk's default static
# rule for binaries.
@@ -329,7 +329,6 @@ NETWORK_HELPERS := $(OUTPUT)/network_helpers.o
$(OUTPUT)/test_sockmap: $(CGROUP_HELPERS) $(TESTING_HELPERS)
$(OUTPUT)/test_tcpnotify_user: $(CGROUP_HELPERS) $(TESTING_HELPERS) $(TRACE_HELPERS)
$(OUTPUT)/test_sock_fields: $(CGROUP_HELPERS) $(TESTING_HELPERS)
$(OUTPUT)/test_sysctl: $(CGROUP_HELPERS) $(TESTING_HELPERS)
$(OUTPUT)/test_tag: $(TESTING_HELPERS)
$(OUTPUT)/test_lirc_mode2_user: $(TESTING_HELPERS)
$(OUTPUT)/xdping: $(TESTING_HELPERS)
+8 −29
Original line number Diff line number Diff line
// SPDX-License-Identifier: GPL-2.0
// Copyright (c) 2019 Facebook

#include <fcntl.h>
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>

#include <linux/filter.h>

#include <bpf/bpf.h>
#include <bpf/libbpf.h>

#include <bpf/bpf_endian.h>
#include "bpf_util.h"
#include "test_progs.h"
#include "cgroup_helpers.h"
#include "testing_helpers.h"

#define CG_PATH			"/foo"
#define MAX_INSNS		512
@@ -1608,26 +1594,19 @@ static int run_tests(int cgfd)
	return fails ? -1 : 0;
}

int main(int argc, char **argv)
void test_sysctl(void)
{
	int cgfd = -1;
	int err = 0;
	int cgfd;

	cgfd = cgroup_setup_and_join(CG_PATH);
	if (cgfd < 0)
		goto err;

	/* Use libbpf 1.0 API mode */
	libbpf_set_strict_mode(LIBBPF_STRICT_ALL);

	if (run_tests(cgfd))
		goto err;
	if (!ASSERT_OK_FD(cgfd < 0, "create_cgroup"))
		goto out;

	if (!ASSERT_OK(run_tests(cgfd), "run_tests"))
		goto out;
err:
	err = -1;

out:
	close(cgfd);
	cleanup_cgroup_environment();
	return err;
	return;
}