xref: /linux/tools/testing/selftests/net/bench/test_bench_page_pool.sh (revision 8be4d31cb8aaeea27bde4b7ddb26e28a89062ebf)
1*cccfe098SJesper Dangaard Brouer#!/bin/bash
2*cccfe098SJesper Dangaard Brouer# SPDX-License-Identifier: GPL-2.0
3*cccfe098SJesper Dangaard Brouer#
4*cccfe098SJesper Dangaard Brouer
5*cccfe098SJesper Dangaard Brouerset -e
6*cccfe098SJesper Dangaard Brouer
7*cccfe098SJesper Dangaard BrouerDRIVER="./page_pool/bench_page_pool.ko"
8*cccfe098SJesper Dangaard Brouerresult=""
9*cccfe098SJesper Dangaard Brouer
10*cccfe098SJesper Dangaard Brouerfunction run_test()
11*cccfe098SJesper Dangaard Brouer{
12*cccfe098SJesper Dangaard Brouer	rmmod "bench_page_pool.ko" || true
13*cccfe098SJesper Dangaard Brouer	insmod $DRIVER > /dev/null 2>&1
14*cccfe098SJesper Dangaard Brouer	result=$(dmesg | tail -10)
15*cccfe098SJesper Dangaard Brouer	echo "$result"
16*cccfe098SJesper Dangaard Brouer
17*cccfe098SJesper Dangaard Brouer	echo
18*cccfe098SJesper Dangaard Brouer	echo "Fast path results:"
19*cccfe098SJesper Dangaard Brouer	echo "${result}" | grep -o -E "no-softirq-page_pool01 Per elem: ([0-9]+) cycles\(tsc\) ([0-9]+\.[0-9]+) ns"
20*cccfe098SJesper Dangaard Brouer
21*cccfe098SJesper Dangaard Brouer	echo
22*cccfe098SJesper Dangaard Brouer	echo "ptr_ring results:"
23*cccfe098SJesper Dangaard Brouer	echo "${result}" | grep -o -E "no-softirq-page_pool02 Per elem: ([0-9]+) cycles\(tsc\) ([0-9]+\.[0-9]+) ns"
24*cccfe098SJesper Dangaard Brouer
25*cccfe098SJesper Dangaard Brouer	echo
26*cccfe098SJesper Dangaard Brouer	echo "slow path results:"
27*cccfe098SJesper Dangaard Brouer	echo "${result}" | grep -o -E "no-softirq-page_pool03 Per elem: ([0-9]+) cycles\(tsc\) ([0-9]+\.[0-9]+) ns"
28*cccfe098SJesper Dangaard Brouer}
29*cccfe098SJesper Dangaard Brouer
30*cccfe098SJesper Dangaard Brouerrun_test
31*cccfe098SJesper Dangaard Brouer
32*cccfe098SJesper Dangaard Brouerexit 0
33