ceff135b9d
[ Upstream commit 0afe0a998c40085a6342e1aeb4c510cccba46caf ]
Currently, lwt_len_hist's map lwt_len_hist_map is uses pinning, and the
map isn't cleared on test end. This leds to reuse of that map for
each test, which prevents the results of the test from being accurate.
This commit fixes the problem by removing of pinned map from bpffs.
Also, this commit add the executable permission to shell script
files.
Fixes: f74599f7c5
("bpf: Add tests and samples for LWT-BPF")
Signed-off-by: Daniel T. Lee <danieltimlee@gmail.com>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20201124090310.24374-7-danieltimlee@gmail.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
41 lines
1.0 KiB
Bash
Executable File
41 lines
1.0 KiB
Bash
Executable File
#!/bin/bash
|
|
# SPDX-License-Identifier: GPL-2.0
|
|
|
|
NS1=lwt_ns1
|
|
VETH0=tst_lwt1a
|
|
VETH1=tst_lwt1b
|
|
|
|
TRACE_ROOT=/sys/kernel/debug/tracing
|
|
|
|
function cleanup {
|
|
# To reset saved histogram, remove pinned map
|
|
rm /sys/fs/bpf/tc/globals/lwt_len_hist_map
|
|
ip route del 192.168.253.2/32 dev $VETH0 2> /dev/null
|
|
ip link del $VETH0 2> /dev/null
|
|
ip link del $VETH1 2> /dev/null
|
|
ip netns exec $NS1 killall netserver
|
|
ip netns delete $NS1 2> /dev/null
|
|
}
|
|
|
|
cleanup
|
|
|
|
ip netns add $NS1
|
|
ip link add $VETH0 type veth peer name $VETH1
|
|
ip link set dev $VETH0 up
|
|
ip addr add 192.168.253.1/24 dev $VETH0
|
|
ip link set $VETH1 netns $NS1
|
|
ip netns exec $NS1 ip link set dev $VETH1 up
|
|
ip netns exec $NS1 ip addr add 192.168.253.2/24 dev $VETH1
|
|
ip netns exec $NS1 netserver
|
|
|
|
echo 1 > ${TRACE_ROOT}/tracing_on
|
|
cp /dev/null ${TRACE_ROOT}/trace
|
|
ip route add 192.168.253.2/32 encap bpf out obj lwt_len_hist_kern.o section len_hist dev $VETH0
|
|
netperf -H 192.168.253.2 -t TCP_STREAM
|
|
cat ${TRACE_ROOT}/trace | grep -v '^#'
|
|
./lwt_len_hist
|
|
cleanup
|
|
echo 0 > ${TRACE_ROOT}/tracing_on
|
|
|
|
exit 0
|