Server IP : 13.213.54.232 / Your IP : 216.73.216.72 Web Server : Apache/2.4.52 (Ubuntu) System : Linux ip-172-31-17-110 6.8.0-1029-aws #31~22.04.1-Ubuntu SMP Thu Apr 24 21:16:18 UTC 2025 x86_64 User : www-data ( 33) PHP Version : 7.1.33-67+ubuntu22.04.1+deb.sury.org+1 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /lib/modules/6.8.0-1031-aws/build/tools/testing/selftests/drivers/net/mlxsw/ |
Upload File : |
#!/bin/bash # SPDX-License-Identifier: GPL-2.0 ROUTER_NUM_NETIFS=4 : ${TIMEOUT:=20000} # ms router_h1_create() { simple_if_init $h1 192.0.1.1/24 } router_h1_destroy() { simple_if_fini $h1 192.0.1.1/24 } router_h2_create() { simple_if_init $h2 192.0.2.1/24 tc qdisc add dev $h2 handle ffff: ingress } router_h2_destroy() { tc qdisc del dev $h2 handle ffff: ingress simple_if_fini $h2 192.0.2.1/24 } router_create() { ip link set dev $rp1 up ip link set dev $rp2 up ip address add 192.0.1.2/24 dev $rp1 ip address add 192.0.2.2/24 dev $rp2 } router_destroy() { ip address del 192.0.2.2/24 dev $rp2 ip address del 192.0.1.2/24 dev $rp1 ip link set dev $rp2 down ip link set dev $rp1 down } router_setup_prepare() { h1=${NETIFS[p1]} rp1=${NETIFS[p2]} rp2=${NETIFS[p3]} h2=${NETIFS[p4]} h1mac=$(mac_get $h1) rp1mac=$(mac_get $rp1) vrf_prepare router_h1_create router_h2_create router_create } wait_for_routes() { local t0=$1; shift local route_count=$1; shift local t1=$(ip route | grep 'offload' | grep -v 'offload_failed' | wc -l) local delta=$((t1 - t0)) echo $delta [[ $delta -ge $route_count ]] } router_routes_create() { local route_count=$1 local count=0 ROUTE_FILE="$(mktemp)" for i in {0..255} do for j in {0..255} do for k in {0..255} do if [[ $count -eq $route_count ]]; then break 3 fi echo route add 193.${i}.${j}.${k}/32 dev $rp2 \ >> $ROUTE_FILE ((count++)) done done done ip -b $ROUTE_FILE &> /dev/null } router_routes_destroy() { if [[ -v ROUTE_FILE ]]; then rm -f $ROUTE_FILE fi } router_test() { local route_count=$1 local should_fail=$2 local delta RET=0 local t0=$(ip route | grep -o 'offload' | wc -l) router_routes_create $route_count delta=$(busywait "$TIMEOUT" wait_for_routes $t0 $route_count) check_err_fail $should_fail $? "Offload routes: Expected $route_count, got $delta." if [[ $RET -ne 0 ]] || [[ $should_fail -eq 1 ]]; then return fi router_routes_destroy } router_cleanup() { pre_cleanup router_routes_destroy router_destroy router_h2_destroy router_h1_destroy vrf_cleanup }