41 lines · bash
1#!/bin/bash2# SPDX-License-Identifier: GPL-2.03 4NS1=lwt_ns15VETH0=tst_lwt1a6VETH1=tst_lwt1b7BPF_PROG=lwt_len_hist.bpf.o8TRACE_ROOT=/sys/kernel/tracing9 10function cleanup {11 # To reset saved histogram, remove pinned map12 rm /sys/fs/bpf/tc/globals/lwt_len_hist_map13 ip route del 192.168.253.2/32 dev $VETH0 2> /dev/null14 ip link del $VETH0 2> /dev/null15 ip link del $VETH1 2> /dev/null16 ip netns exec $NS1 killall netserver17 ip netns delete $NS1 2> /dev/null18}19 20cleanup21 22ip netns add $NS123ip link add $VETH0 type veth peer name $VETH124ip link set dev $VETH0 up25ip addr add 192.168.253.1/24 dev $VETH026ip link set $VETH1 netns $NS127ip netns exec $NS1 ip link set dev $VETH1 up28ip netns exec $NS1 ip addr add 192.168.253.2/24 dev $VETH129ip netns exec $NS1 netserver30 31echo 1 > ${TRACE_ROOT}/tracing_on32cp /dev/null ${TRACE_ROOT}/trace33ip route add 192.168.253.2/32 encap bpf out obj $BPF_PROG section len_hist dev $VETH034netperf -H 192.168.253.2 -t TCP_STREAM35cat ${TRACE_ROOT}/trace | grep -v '^#'36./lwt_len_hist37cleanup38echo 0 > ${TRACE_ROOT}/tracing_on39 40exit 041