Skip to content

Commit

Permalink
selftests: rtnetlink: Test bridge enslavement with different parent IDs
Browse files Browse the repository at this point in the history
Test that an upper device of netdevs with different parent IDs can be
enslaved to a bridge.

The test fails without previous commit.

Signed-off-by: Ido Schimmel <idosch@nvidia.com>
Reviewed-by: Jiri Pirko <jiri@nvidia.com>
Reviewed-by: Nikolay Aleksandrov <nikolay@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
idosch authored and davem330 committed Sep 10, 2020
1 parent e1b9efe commit 6374a56
Showing 1 changed file with 47 additions and 0 deletions.
47 changes: 47 additions & 0 deletions tools/testing/selftests/net/rtnetlink.sh
Original file line number Diff line number Diff line change
Expand Up @@ -1175,6 +1175,51 @@ kci_test_neigh_get()
echo "PASS: neigh get"
}

kci_test_bridge_parent_id()
{
local ret=0
sysfsnet=/sys/bus/netdevsim/devices/netdevsim
probed=false

if [ ! -w /sys/bus/netdevsim/new_device ] ; then
modprobe -q netdevsim
check_err $?
if [ $ret -ne 0 ]; then
echo "SKIP: bridge_parent_id can't load netdevsim"
return $ksft_skip
fi
probed=true
fi

echo "10 1" > /sys/bus/netdevsim/new_device
while [ ! -d ${sysfsnet}10 ] ; do :; done
echo "20 1" > /sys/bus/netdevsim/new_device
while [ ! -d ${sysfsnet}20 ] ; do :; done
udevadm settle
dev10=`ls ${sysfsnet}10/net/`
dev20=`ls ${sysfsnet}20/net/`

ip link add name test-bond0 type bond mode 802.3ad
ip link set dev $dev10 master test-bond0
ip link set dev $dev20 master test-bond0
ip link add name test-br0 type bridge
ip link set dev test-bond0 master test-br0
check_err $?

# clean up any leftovers
ip link del dev test-br0
ip link del dev test-bond0
echo 20 > /sys/bus/netdevsim/del_device
echo 10 > /sys/bus/netdevsim/del_device
$probed && rmmod netdevsim

if [ $ret -ne 0 ]; then
echo "FAIL: bridge_parent_id"
return 1
fi
echo "PASS: bridge_parent_id"
}

kci_test_rtnl()
{
local ret=0
Expand Down Expand Up @@ -1224,6 +1269,8 @@ kci_test_rtnl()
check_err $?
kci_test_neigh_get
check_err $?
kci_test_bridge_parent_id
check_err $?

kci_del_dummy
return $ret
Expand Down

0 comments on commit 6374a56

Please sign in to comment.