aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband
diff options
context:
space:
mode:
authorSteve Wise <swise@opengridcomputing.com>2010-05-20 17:57:27 -0400
committerRoland Dreier <rolandd@cisco.com>2010-05-25 00:07:59 -0400
commitfd388ce677e7de9180a7d46d12c5162f76af64ac (patch)
treee914bf9d12afe2d394cbb67e64e5c2c8b2cfed31 /drivers/infiniband
parenta0fe3cc5d36a5f5b4f60abfe1a4b1caf4a5cce5a (diff)
RDMA/cxgb4: Detach from the LLD after unregistering RDMA device
In the RDMA core unregister path, kernel users will be calling down into the T4 provider to release resources. So we cannot detach from the LLD until this process completes. Signed-off-by: Steve Wise <swise@opengridcomputing.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'drivers/infiniband')
-rw-r--r--drivers/infiniband/hw/cxgb4/device.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/infiniband/hw/cxgb4/device.c b/drivers/infiniband/hw/cxgb4/device.c
index be23b5eab13..c7e2484e721 100644
--- a/drivers/infiniband/hw/cxgb4/device.c
+++ b/drivers/infiniband/hw/cxgb4/device.c
@@ -504,14 +504,12 @@ static void __exit c4iw_exit_module(void)
504{ 504{
505 struct c4iw_dev *dev, *tmp; 505 struct c4iw_dev *dev, *tmp;
506 506
507 cxgb4_unregister_uld(CXGB4_ULD_RDMA);
508
509 mutex_lock(&dev_mutex); 507 mutex_lock(&dev_mutex);
510 list_for_each_entry_safe(dev, tmp, &dev_list, entry) { 508 list_for_each_entry_safe(dev, tmp, &dev_list, entry) {
511 c4iw_remove(dev); 509 c4iw_remove(dev);
512 } 510 }
513 mutex_unlock(&dev_mutex); 511 mutex_unlock(&dev_mutex);
514 512 cxgb4_unregister_uld(CXGB4_ULD_RDMA);
515 c4iw_cm_term(); 513 c4iw_cm_term();
516 debugfs_remove_recursive(c4iw_debugfs_root); 514 debugfs_remove_recursive(c4iw_debugfs_root);
517} 515}