Message ID | 20230824135715.1131084-1-shaozhengchao@huawei.com |
---|---|
State | Superseded |
Headers | show |
Series | [net-next,v2] selftests: bonding: create directly devices in the target namespaces | expand |
On Thu, Aug 24, 2023 at 09:57:15PM +0800, Zhengchao Shao wrote: > If failed to set link1_1 to netns client, we should delete link1_1 in the > cleanup path. But if set link1_1 to netns client successfully, delete > link1_1 will report warning. So it will be safer creating directly the > devices in the target namespaces. > > Reported-by: Hangbin Liu <liuhangbin@gmail.com> > Closes: https://lore.kernel.org/all/ZNyJx1HtXaUzOkNA@Laptop-X1/ > Signed-off-by: Zhengchao Shao <shaozhengchao@huawei.com> > --- > v2: create directly devices in the target namespaces > --- > .../drivers/net/bonding/bond-arp-interval-causes-panic.sh | 8 +++----- > 1 file changed, 3 insertions(+), 5 deletions(-) > > diff --git a/tools/testing/selftests/drivers/net/bonding/bond-arp-interval-causes-panic.sh b/tools/testing/selftests/drivers/net/bonding/bond-arp-interval-causes-panic.sh > index 7b2d421f09cf..fe7c34f89fc7 100755 > --- a/tools/testing/selftests/drivers/net/bonding/bond-arp-interval-causes-panic.sh > +++ b/tools/testing/selftests/drivers/net/bonding/bond-arp-interval-causes-panic.sh > @@ -22,14 +22,12 @@ server_ip4=192.168.1.254 > echo 180 >/proc/sys/kernel/panic > > # build namespaces > -ip link add dev link1_1 type veth peer name link1_2 > - > ip netns add "server" > -ip link set dev link1_2 netns server up name eth0 > +ip netns add "client" > +ip link add dev eth0 netns client type veth peer name eth0 netns server When we already have an eth0 interface on init net, this cmd will failed # ip link add dev eth0 netns client type veth peer name eth0 netns server RTNETLINK answers: File exists You should create the eth0 in the namespace, e.g. # ip -n client link add eth0 type veth peer name eth0 netns server Thanks Hangbin
On 2023/8/25 10:36, Hangbin Liu wrote: > On Thu, Aug 24, 2023 at 09:57:15PM +0800, Zhengchao Shao wrote: >> If failed to set link1_1 to netns client, we should delete link1_1 in the >> cleanup path. But if set link1_1 to netns client successfully, delete >> link1_1 will report warning. So it will be safer creating directly the >> devices in the target namespaces. >> >> Reported-by: Hangbin Liu <liuhangbin@gmail.com> >> Closes: https://lore.kernel.org/all/ZNyJx1HtXaUzOkNA@Laptop-X1/ >> Signed-off-by: Zhengchao Shao <shaozhengchao@huawei.com> >> --- >> v2: create directly devices in the target namespaces >> --- >> .../drivers/net/bonding/bond-arp-interval-causes-panic.sh | 8 +++----- >> 1 file changed, 3 insertions(+), 5 deletions(-) >> >> diff --git a/tools/testing/selftests/drivers/net/bonding/bond-arp-interval-causes-panic.sh b/tools/testing/selftests/drivers/net/bonding/bond-arp-interval-causes-panic.sh >> index 7b2d421f09cf..fe7c34f89fc7 100755 >> --- a/tools/testing/selftests/drivers/net/bonding/bond-arp-interval-causes-panic.sh >> +++ b/tools/testing/selftests/drivers/net/bonding/bond-arp-interval-causes-panic.sh >> @@ -22,14 +22,12 @@ server_ip4=192.168.1.254 >> echo 180 >/proc/sys/kernel/panic >> >> # build namespaces >> -ip link add dev link1_1 type veth peer name link1_2 >> - >> ip netns add "server" >> -ip link set dev link1_2 netns server up name eth0 >> +ip netns add "client" >> +ip link add dev eth0 netns client type veth peer name eth0 netns server > > When we already have an eth0 interface on init net, this cmd will failed > > # ip link add dev eth0 netns client type veth peer name eth0 netns server > RTNETLINK answers: File exists > > You should create the eth0 in the namespace, e.g. > > # ip -n client link add eth0 type veth peer name eth0 netns server > > Thanks > Hangbin Hi Hangbin: Thank you for your testing. I will modify in v3 Zhengchao Shao
diff --git a/tools/testing/selftests/drivers/net/bonding/bond-arp-interval-causes-panic.sh b/tools/testing/selftests/drivers/net/bonding/bond-arp-interval-causes-panic.sh index 7b2d421f09cf..fe7c34f89fc7 100755 --- a/tools/testing/selftests/drivers/net/bonding/bond-arp-interval-causes-panic.sh +++ b/tools/testing/selftests/drivers/net/bonding/bond-arp-interval-causes-panic.sh @@ -22,14 +22,12 @@ server_ip4=192.168.1.254 echo 180 >/proc/sys/kernel/panic # build namespaces -ip link add dev link1_1 type veth peer name link1_2 - ip netns add "server" -ip link set dev link1_2 netns server up name eth0 +ip netns add "client" +ip link add dev eth0 netns client type veth peer name eth0 netns server +ip netns exec server ip link set dev eth0 up ip netns exec server ip addr add ${server_ip4}/24 dev eth0 -ip netns add "client" -ip link set dev link1_1 netns client down name eth0 ip netns exec client ip link add dev bond0 down type bond mode 1 \ miimon 100 all_slaves_active 1 ip netns exec client ip link set dev eth0 down master bond0
If failed to set link1_1 to netns client, we should delete link1_1 in the cleanup path. But if set link1_1 to netns client successfully, delete link1_1 will report warning. So it will be safer creating directly the devices in the target namespaces. Reported-by: Hangbin Liu <liuhangbin@gmail.com> Closes: https://lore.kernel.org/all/ZNyJx1HtXaUzOkNA@Laptop-X1/ Signed-off-by: Zhengchao Shao <shaozhengchao@huawei.com> --- v2: create directly devices in the target namespaces --- .../drivers/net/bonding/bond-arp-interval-causes-panic.sh | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-)