Patch "sefltests: netdevsim: wait for devlink instance after netns removal" has been added to the 5.10-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    sefltests: netdevsim: wait for devlink instance after netns removal

to the 5.10-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     sefltests-netdevsim-wait-for-devlink-instance-after-.patch
and it can be found in the queue-5.10 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 5218935670e8f4b4a5004cd14680ed41d0aa486a
Author: Jiri Pirko <jiri@xxxxxxxxxx>
Date:   Mon Feb 20 14:23:36 2023 +0100

    sefltests: netdevsim: wait for devlink instance after netns removal
    
    [ Upstream commit f922c7b1c1c45740d329bf248936fdb78c0cff6e ]
    
    When devlink instance is put into network namespace and that network
    namespace gets deleted, devlink instance is moved back into init_ns.
    This is done as a part of cleanup_net() routine. Since cleanup_net()
    is called asynchronously from workqueue, there is no guarantee that
    the devlink instance move is done after "ip netns del" returns.
    
    So fix this race by making sure that the devlink instance is present
    before any other operation.
    
    Reported-by: Amir Tzin <amirtz@xxxxxxxxxx>
    Fixes: b74c37fd35a2 ("selftests: netdevsim: add tests for devlink reload with resources")
    Signed-off-by: Jiri Pirko <jiri@xxxxxxxxxx>
    Reviewed-by: Pavan Chebbi <pavan.chebbi@xxxxxxxxxxxx>
    Link: https://lore.kernel.org/r/20230220132336.198597-1-jiri@xxxxxxxxxxx
    Signed-off-by: Paolo Abeni <pabeni@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/tools/testing/selftests/drivers/net/netdevsim/devlink.sh b/tools/testing/selftests/drivers/net/netdevsim/devlink.sh
index 16d2de18591d3..2c81e01c30b31 100755
--- a/tools/testing/selftests/drivers/net/netdevsim/devlink.sh
+++ b/tools/testing/selftests/drivers/net/netdevsim/devlink.sh
@@ -16,6 +16,18 @@ SYSFS_NET_DIR=/sys/bus/netdevsim/devices/$DEV_NAME/net/
 DEBUGFS_DIR=/sys/kernel/debug/netdevsim/$DEV_NAME/
 DL_HANDLE=netdevsim/$DEV_NAME
 
+wait_for_devlink()
+{
+	"$@" | grep -q $DL_HANDLE
+}
+
+devlink_wait()
+{
+	local timeout=$1
+
+	busywait "$timeout" wait_for_devlink devlink dev
+}
+
 fw_flash_test()
 {
 	RET=0
@@ -255,6 +267,9 @@ netns_reload_test()
 	ip netns del testns2
 	ip netns del testns1
 
+	# Wait until netns async cleanup is done.
+	devlink_wait 2000
+
 	log_test "netns reload test"
 }
 
@@ -347,6 +362,9 @@ resource_test()
 	ip netns del testns2
 	ip netns del testns1
 
+	# Wait until netns async cleanup is done.
+	devlink_wait 2000
+
 	log_test "resource test"
 }
 



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux