1 #!/bin/sh 2 # SPDX-License-Identifier: GPL-2.0 3 # 4 # cause kernel oops in bond_rr_gen_slave_id 5 DEBUG=${DEBUG:-0} 6 7 set -e 8 test ${DEBUG} -ne 0 && set -x 9 10 finish() 11 { 12 ip netns delete server || true 13 ip netns delete client || true 14 } 15 16 trap finish EXIT 17 18 client_ip4=192.168.1.198 19 server_ip4=192.168.1.254 20 21 # setup kernel so it reboots after causing the panic 22 echo 180 >/proc/sys/kernel/panic 23 24 # build namespaces 25 ip netns add "server" 26 ip netns add "client" 27 ip -n client link add eth0 type veth peer name eth0 netns server 28 ip netns exec server ip link set dev eth0 up 29 ip netns exec server ip addr add ${server_ip4}/24 dev eth0 30 31 ip netns exec client ip link add dev bond0 down type bond mode 1 \ 32 miimon 100 all_slaves_active 1 33 ip netns exec client ip link set dev eth0 master bond0 34 ip netns exec client ip link set dev bond0 up 35 ip netns exec client ip addr add ${client_ip4}/24 dev bond0 36 ip netns exec client ping -c 5 $server_ip4 >/dev/null 37 38 ip netns exec client ip link set dev eth0 nomaster 39 ip netns exec client ip link set dev bond0 down 40 ip netns exec client ip link set dev bond0 type bond mode 0 \ 41 arp_interval 1000 arp_ip_target "+${server_ip4}" 42 ip netns exec client ip link set dev eth0 master bond0 43 ip netns exec client ip link set dev bond0 up 44 ip netns exec client ping -c 5 $server_ip4 >/dev/null 45 46 exit 0
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.