From: Andrii Nakryiko <andriin@fb.com>
Date: Tue, 15 Oct 2019 23:00:50 -0700
Subject: selftests/bpf: Move test_queue_stack_map.h into progs/ where it
belongs
Patch-mainline: v5.5-rc1
Git-commit: 5ac93074b581984d67926d48b2c601b12b35a0f9
References: bsc#1177028
test_queue_stack_map.h is used only from BPF programs. Thus it should be
part of progs/ subdir. An added benefit of moving it there is that new
TEST_RUNNER_DEFINE_RULES macro-rule will properly capture dependency on
this header for all BPF objects and trigger re-build, if it changes.
Signed-off-by: Andrii Nakryiko <andriin@fb.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Link: https://lore.kernel.org/bpf/20191016060051.2024182-7-andriin@fb.com
Acked-by: Gary Lin <glin@suse.com>
---
tools/testing/selftests/bpf/Makefile | 3 ---
tools/testing/selftests/bpf/{ => progs}/test_queue_stack_map.h | 0
tools/testing/selftests/bpf/Makefile | 3
tools/testing/selftests/bpf/progs/test_queue_stack_map.h | 59 +++++++++++++++
tools/testing/selftests/bpf/test_queue_stack_map.h | 59 ---------------
3 files changed, 59 insertions(+), 62 deletions(-)
rename tools/testing/selftests/bpf/{ => progs}/test_queue_stack_map.h (100%)
--- a/tools/testing/selftests/bpf/Makefile
+++ b/tools/testing/selftests/bpf/Makefile
@@ -153,9 +153,6 @@ CLANG_CFLAGS = $(CLANG_SYS_INCLUDES) \
$(OUTPUT)/test_l4lb_noinline.o: BPF_CFLAGS += -fno-inline
$(OUTPUT)/test_xdp_noinline.o: BPF_CFLAGS += -fno-inline
-$(OUTPUT)/test_queue_map.o: test_queue_stack_map.h
-$(OUTPUT)/test_stack_map.o: test_queue_stack_map.h
-
$(OUTPUT)/flow_dissector_load.o: flow_dissector_load.h
# Build BPF object using Clang
--- /dev/null
+++ b/tools/testing/selftests/bpf/progs/test_queue_stack_map.h
@@ -0,0 +1,59 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+// Copyright (c) 2018 Politecnico di Torino
+#include <stddef.h>
+#include <string.h>
+#include <linux/bpf.h>
+#include <linux/if_ether.h>
+#include <linux/ip.h>
+#include <linux/pkt_cls.h>
+#include "bpf_helpers.h"
+
+int _version SEC("version") = 1;
+
+struct {
+ __uint(type, MAP_TYPE);
+ __uint(max_entries, 32);
+ __uint(map_flags, 0);
+ __uint(key_size, 0);
+ __uint(value_size, sizeof(__u32));
+} map_in SEC(".maps");
+
+struct {
+ __uint(type, MAP_TYPE);
+ __uint(max_entries, 32);
+ __uint(map_flags, 0);
+ __uint(key_size, 0);
+ __uint(value_size, sizeof(__u32));
+} map_out SEC(".maps");
+
+SEC("test")
+int _test(struct __sk_buff *skb)
+{
+ void *data_end = (void *)(long)skb->data_end;
+ void *data = (void *)(long)skb->data;
+ struct ethhdr *eth = (struct ethhdr *)(data);
+ __u32 value;
+ int err;
+
+ if (eth + 1 > data_end)
+ return TC_ACT_SHOT;
+
+ struct iphdr *iph = (struct iphdr *)(eth + 1);
+
+ if (iph + 1 > data_end)
+ return TC_ACT_SHOT;
+
+ err = bpf_map_pop_elem(&map_in, &value);
+ if (err)
+ return TC_ACT_SHOT;
+
+ iph->daddr = value;
+
+ err = bpf_map_push_elem(&map_out, &iph->saddr, 0);
+ if (err)
+ return TC_ACT_SHOT;
+
+ return TC_ACT_OK;
+}
+
+char _license[] SEC("license") = "GPL";
--- a/tools/testing/selftests/bpf/test_queue_stack_map.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0 */
-// Copyright (c) 2018 Politecnico di Torino
-#include <stddef.h>
-#include <string.h>
-#include <linux/bpf.h>
-#include <linux/if_ether.h>
-#include <linux/ip.h>
-#include <linux/pkt_cls.h>
-#include "bpf_helpers.h"
-
-int _version SEC("version") = 1;
-
-struct {
- __uint(type, MAP_TYPE);
- __uint(max_entries, 32);
- __uint(map_flags, 0);
- __uint(key_size, 0);
- __uint(value_size, sizeof(__u32));
-} map_in SEC(".maps");
-
-struct {
- __uint(type, MAP_TYPE);
- __uint(max_entries, 32);
- __uint(map_flags, 0);
- __uint(key_size, 0);
- __uint(value_size, sizeof(__u32));
-} map_out SEC(".maps");
-
-SEC("test")
-int _test(struct __sk_buff *skb)
-{
- void *data_end = (void *)(long)skb->data_end;
- void *data = (void *)(long)skb->data;
- struct ethhdr *eth = (struct ethhdr *)(data);
- __u32 value;
- int err;
-
- if (eth + 1 > data_end)
- return TC_ACT_SHOT;
-
- struct iphdr *iph = (struct iphdr *)(eth + 1);
-
- if (iph + 1 > data_end)
- return TC_ACT_SHOT;
-
- err = bpf_map_pop_elem(&map_in, &value);
- if (err)
- return TC_ACT_SHOT;
-
- iph->daddr = value;
-
- err = bpf_map_push_elem(&map_out, &iph->saddr, 0);
- if (err)
- return TC_ACT_SHOT;
-
- return TC_ACT_OK;
-}
-
-char _license[] SEC("license") = "GPL";