~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/tools/testing/selftests/drivers/net/bonding/bond-break-lacpdu-tx.sh

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 #!/bin/sh
  2 # SPDX-License-Identifier: GPL-2.0
  3 
  4 # Regression Test:
  5 #   Verify LACPDUs get transmitted after setting the MAC address of
  6 #   the bond.
  7 #
  8 # https://bugzilla.redhat.com/show_bug.cgi?id=2020773
  9 #
 10 #       +---------+
 11 #       | fab-br0 |
 12 #       +---------+
 13 #            |
 14 #       +---------+
 15 #       |  fbond  |
 16 #       +---------+
 17 #        |       |
 18 #    +------+ +------+
 19 #    |veth1 | |veth2 |
 20 #    +------+ +------+
 21 #
 22 # We use veths instead of physical interfaces
 23 REQUIRE_MZ=no
 24 NUM_NETIFS=0
 25 lib_dir=$(dirname "$0")
 26 source "$lib_dir"/../../../net/forwarding/lib.sh
 27 
 28 set -e
 29 cleanup() {
 30         ip link del fab-br0 >/dev/null 2>&1 || :
 31         ip link del fbond  >/dev/null 2>&1 || :
 32         ip link del veth1-bond  >/dev/null 2>&1 || :
 33         ip link del veth2-bond  >/dev/null 2>&1 || :
 34 }
 35 
 36 trap cleanup 0 1 2
 37 cleanup
 38 
 39 # create the bridge
 40 ip link add fab-br0 address 52:54:00:3B:7C:A6 mtu 1500 type bridge \
 41         forward_delay 15
 42 
 43 # create the bond
 44 ip link add fbond type bond mode 4 miimon 200 xmit_hash_policy 1 \
 45         ad_actor_sys_prio 65535 lacp_rate fast
 46 
 47 # set bond address
 48 ip link set fbond address 52:54:00:3B:7C:A6
 49 ip link set fbond up
 50 
 51 # set again bond sysfs parameters
 52 ip link set fbond type bond ad_actor_sys_prio 65535
 53 
 54 # create veths
 55 ip link add name veth1-bond type veth peer name veth1-end
 56 ip link add name veth2-bond type veth peer name veth2-end
 57 
 58 # add ports
 59 ip link set fbond master fab-br0
 60 ip link set veth1-bond master fbond
 61 ip link set veth2-bond master fbond
 62 
 63 # bring up
 64 ip link set veth1-end up
 65 ip link set veth2-end up
 66 ip link set fab-br0 up
 67 ip link set fbond up
 68 ip addr add dev fab-br0 10.0.0.3
 69 
 70 rc=0
 71 tc qdisc add dev veth1-end clsact
 72 tc filter add dev veth1-end ingress protocol 0x8809 pref 1 handle 101 flower skip_hw action pass
 73 if slowwait_for_counter 15 2 \
 74         tc_rule_handle_stats_get "dev veth1-end ingress" 101 ".packets" "" &> /dev/null; then
 75         echo "PASS, captured 2"
 76 else
 77         echo "FAIL"
 78         rc=1
 79 fi
 80 exit $rc

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php