summary refs log tree commit diff
diff options
context:
space:
mode:
authorAllen Hubbe <Allen.Hubbe@dell.com>2016-12-27 17:57:04 -0500
committerJon Mason <jdmason@kudzu.us>2017-02-16 23:10:52 -0500
commitdd62245e73de9138333cb0e7a42c8bc1215c3ce6 (patch)
tree67c4fd16a0892c5043de198ceed6d4299a78011a
parent7089db84e356562f8ba737c29e472cc42d530dbc (diff)
downloadlinux-dd62245e73de9138333cb0e7a42c8bc1215c3ce6.tar.gz
NTB: ntb_transport: fix debugfs_remove_recursive
The call to debugfs_remove_recursive(qp->debugfs_dir) of the sub-level
directory must not be later than
debugfs_remove_recursive(nt_debugfs_dir) of the top-level directory.
Otherwise, the sub-level directory will not exist, and it would be
invalid (panic) to attempt to remove it.  This removes the top-level
directory last, after sub-level directories have been cleaned up.

Signed-off-by: Allen Hubbe <Allen.Hubbe@dell.com>
Fixes: e26a5843f ("NTB: Split ntb_hw_intel and ntb_transport drivers")
Signed-off-by: Jon Mason <jdmason@kudzu.us>
-rw-r--r--drivers/ntb/ntb_transport.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/ntb/ntb_transport.c b/drivers/ntb/ntb_transport.c
index f81aa4b18d9f..0e18adb51e4e 100644
--- a/drivers/ntb/ntb_transport.c
+++ b/drivers/ntb/ntb_transport.c
@@ -2273,9 +2273,8 @@ module_init(ntb_transport_init);
 
 static void __exit ntb_transport_exit(void)
 {
-	debugfs_remove_recursive(nt_debugfs_dir);
-
 	ntb_unregister_client(&ntb_transport_client);
 	bus_unregister(&ntb_transport_bus);
+	debugfs_remove_recursive(nt_debugfs_dir);
 }
 module_exit(ntb_transport_exit);