From: Ursula Braun <ubraun@linux.ibm.com>
Date: Sat, 16 Nov 2019 17:47:31 +0100
Subject: net/smc: use rcu_barrier() on module unload
Git-commit: 4ead9c96d528e1b9937382321910a2bf35fc1a86
Patch-mainline: v5.5-rc1
References: jsc#SLE-7395
Add rcu_barrier() to make sure no RCU readers or callbacks are
pending when the module is unloaded.
Signed-off-by: Ursula Braun <ubraun@linux.ibm.com>
Signed-off-by: Karsten Graul <kgraul@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Acked-by: Petr Tesarik <ptesarik@suse.com>
---
net/smc/af_smc.c | 2 ++
1 file changed, 2 insertions(+)
--- a/net/smc/af_smc.c
+++ b/net/smc/af_smc.c
@@ -25,6 +25,7 @@
#include <linux/in.h>
#include <linux/sched/signal.h>
#include <linux/if_vlan.h>
+#include <linux/rcupdate_wait.h>
#include <net/sock.h>
#include <net/tcp.h>
@@ -2112,6 +2113,7 @@ static void __exit smc_exit(void)
proto_unregister(&smc_proto);
smc_pnet_exit();
unregister_pernet_subsys(&smc_net_ops);
+ rcu_barrier();
}
module_init(smc_init);