]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
Revert "selftests/bpf: Add netkit to tc_redirect selftest"
authorPei Xiao <xiaopei01@kylinos.cn>
Wed, 1 May 2024 01:31:45 +0000 (09:31 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 17 May 2024 10:02:39 +0000 (12:02 +0200)
This reverts commit 1ccc54df579701a2b6ec10bd2448ea3b65043c1a which is
upstream commit adfeae2d243d9e5b83d094af481d189156b11779

This commit depends on bpf netkit series which isn't on linux-6.6.y
branch yet. So it needs to be reverted. Otherwise, a build error
"netlink_helpers.h: No such file or directory" occurs.

Cc: stable@vger.kernel.org
Signed-off-by: Pei Xiao <xiaopei01@kylinos.cn>
Reported-by: Geliang Tang <geliang@kernel.org>
Tested-by: Geliang Tang <geliang@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
tools/testing/selftests/bpf/prog_tests/tc_redirect.c

index dbe06aeaa2b27f66cc89d0349259560c3587de76..af3c31f82a8ae2859e5b85c2f29af187351ff4f3 100644 (file)
@@ -24,7 +24,6 @@
 
 #include "test_progs.h"
 #include "network_helpers.h"
-#include "netlink_helpers.h"
 #include "test_tc_neigh_fib.skel.h"
 #include "test_tc_neigh.skel.h"
 #include "test_tc_peer.skel.h"
@@ -113,7 +112,6 @@ static void netns_setup_namespaces_nofail(const char *verb)
 
 enum dev_mode {
        MODE_VETH,
-       MODE_NETKIT,
 };
 
 struct netns_setup_result {
@@ -144,52 +142,11 @@ static int get_ifaddr(const char *name, char *ifaddr)
        return 0;
 }
 
-static int create_netkit(int mode, char *prim, char *peer)
-{
-       struct rtattr *linkinfo, *data, *peer_info;
-       struct rtnl_handle rth = { .fd = -1 };
-       const char *type = "netkit";
-       struct {
-               struct nlmsghdr n;
-               struct ifinfomsg i;
-               char buf[1024];
-       } req = {};
-       int err;
-
-       err = rtnl_open(&rth, 0);
-       if (!ASSERT_OK(err, "open_rtnetlink"))
-               return err;
-
-       memset(&req, 0, sizeof(req));
-       req.n.nlmsg_len = NLMSG_LENGTH(sizeof(struct ifinfomsg));
-       req.n.nlmsg_flags = NLM_F_REQUEST | NLM_F_CREATE | NLM_F_EXCL;
-       req.n.nlmsg_type = RTM_NEWLINK;
-       req.i.ifi_family = AF_UNSPEC;
-
-       addattr_l(&req.n, sizeof(req), IFLA_IFNAME, prim, strlen(prim));
-       linkinfo = addattr_nest(&req.n, sizeof(req), IFLA_LINKINFO);
-       addattr_l(&req.n, sizeof(req), IFLA_INFO_KIND, type, strlen(type));
-       data = addattr_nest(&req.n, sizeof(req), IFLA_INFO_DATA);
-       addattr32(&req.n, sizeof(req), IFLA_NETKIT_MODE, mode);
-       peer_info = addattr_nest(&req.n, sizeof(req), IFLA_NETKIT_PEER_INFO);
-       req.n.nlmsg_len += sizeof(struct ifinfomsg);
-       addattr_l(&req.n, sizeof(req), IFLA_IFNAME, peer, strlen(peer));
-       addattr_nest_end(&req.n, peer_info);
-       addattr_nest_end(&req.n, data);
-       addattr_nest_end(&req.n, linkinfo);
-
-       err = rtnl_talk(&rth, &req.n, NULL);
-       ASSERT_OK(err, "talk_rtnetlink");
-       rtnl_close(&rth);
-       return err;
-}
-
 static int netns_setup_links_and_routes(struct netns_setup_result *result)
 {
        struct nstoken *nstoken = NULL;
        char src_fwd_addr[IFADDR_STR_LEN+1] = {};
        char src_addr[IFADDR_STR_LEN + 1] = {};
-       int err;
 
        if (result->dev_mode == MODE_VETH) {
                SYS(fail, "ip link add src type veth peer name src_fwd");
@@ -197,13 +154,6 @@ static int netns_setup_links_and_routes(struct netns_setup_result *result)
 
                SYS(fail, "ip link set dst_fwd address " MAC_DST_FWD);
                SYS(fail, "ip link set dst address " MAC_DST);
-       } else if (result->dev_mode == MODE_NETKIT) {
-               err = create_netkit(NETKIT_L3, "src", "src_fwd");
-               if (!ASSERT_OK(err, "create_ifindex_src"))
-                       goto fail;
-               err = create_netkit(NETKIT_L3, "dst", "dst_fwd");
-               if (!ASSERT_OK(err, "create_ifindex_dst"))
-                       goto fail;
        }
 
        if (get_ifaddr("src_fwd", src_fwd_addr))
@@ -1266,9 +1216,7 @@ static void *test_tc_redirect_run_tests(void *arg)
        netns_setup_namespaces_nofail("delete");
 
        RUN_TEST(tc_redirect_peer, MODE_VETH);
-       RUN_TEST(tc_redirect_peer, MODE_NETKIT);
        RUN_TEST(tc_redirect_peer_l3, MODE_VETH);
-       RUN_TEST(tc_redirect_peer_l3, MODE_NETKIT);
        RUN_TEST(tc_redirect_neigh, MODE_VETH);
        RUN_TEST(tc_redirect_neigh_fib, MODE_VETH);
        RUN_TEST(tc_redirect_dtime, MODE_VETH);