brintos

brintos / linux-shallow public Read only

0
0
Text · 1.5 KiB · 2740322 Raw
59 lines · bash
1#!/bin/sh2 3BPF_FILE="test_xdp_meta.bpf.o"4# Kselftest framework requirement - SKIP code is 4.5readonly KSFT_SKIP=46readonly NS1="ns1-$(mktemp -u XXXXXX)"7readonly NS2="ns2-$(mktemp -u XXXXXX)"8 9cleanup()10{11	if [ "$?" = "0" ]; then12		echo "selftests: test_xdp_meta [PASS]";13	else14		echo "selftests: test_xdp_meta [FAILED]";15	fi16 17	set +e18	ip link del veth1 2> /dev/null19	ip netns del ${NS1} 2> /dev/null20	ip netns del ${NS2} 2> /dev/null21}22 23ip link set dev lo xdp off 2>/dev/null > /dev/null24if [ $? -ne 0 ];then25	echo "selftests: [SKIP] Could not run test without the ip xdp support"26	exit $KSFT_SKIP27fi28set -e29 30ip netns add ${NS1}31ip netns add ${NS2}32 33trap cleanup 0 2 3 6 934 35ip link add veth1 type veth peer name veth236 37ip link set veth1 netns ${NS1}38ip link set veth2 netns ${NS2}39 40ip netns exec ${NS1} ip addr add 10.1.1.11/24 dev veth141ip netns exec ${NS2} ip addr add 10.1.1.22/24 dev veth242 43ip netns exec ${NS1} tc qdisc add dev veth1 clsact44ip netns exec ${NS2} tc qdisc add dev veth2 clsact45 46ip netns exec ${NS1} tc filter add dev veth1 ingress bpf da obj ${BPF_FILE} sec t47ip netns exec ${NS2} tc filter add dev veth2 ingress bpf da obj ${BPF_FILE} sec t48 49ip netns exec ${NS1} ip link set dev veth1 xdp obj ${BPF_FILE} sec x50ip netns exec ${NS2} ip link set dev veth2 xdp obj ${BPF_FILE} sec x51 52ip netns exec ${NS1} ip link set dev veth1 up53ip netns exec ${NS2} ip link set dev veth2 up54 55ip netns exec ${NS1} ping -c 1 10.1.1.2256ip netns exec ${NS2} ping -c 1 10.1.1.1157 58exit 059