summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorTom Tucker <tom@opengridcomputing.com>2008-05-28 20:57:05 +0200
committerTom Tucker <tom@opengridcomputing.com>2008-07-02 22:02:00 +0200
commit902a94e0889be1f9fcefc0e1b602b06136e01812 (patch)
tree68212c3fbc1103e2174e3a2b79c0ade1bba6f251 /net
parentsvcrdma: Limit ORD based on client's advertised IRD (diff)
downloadlinux-902a94e0889be1f9fcefc0e1b602b06136e01812.tar.xz
linux-902a94e0889be1f9fcefc0e1b602b06136e01812.zip
svcrdma: Add flush_scheduled_work to module exit function
Make certain all transports pending free are flushed from the wq before unloading the module. Signed-off-by: Tom Tucker <tom@opengridcomputing.com>
Diffstat (limited to 'net')
-rw-r--r--net/sunrpc/xprtrdma/svc_rdma.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/sunrpc/xprtrdma/svc_rdma.c b/net/sunrpc/xprtrdma/svc_rdma.c
index 171f2053e90c..527acfd38284 100644
--- a/net/sunrpc/xprtrdma/svc_rdma.c
+++ b/net/sunrpc/xprtrdma/svc_rdma.c
@@ -239,6 +239,7 @@ static ctl_table svcrdma_root_table[] = {
void svc_rdma_cleanup(void)
{
dprintk("SVCRDMA Module Removed, deregister RPC RDMA transport\n");
+ flush_scheduled_work();
if (svcrdma_table_header) {
unregister_sysctl_table(svcrdma_table_header);
svcrdma_table_header = NULL;