summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeff Layton <jlayton@kernel.org>2019-09-12 08:07:56 -0400
committerIlya Dryomov <idryomov@gmail.com>2019-09-16 06:06:25 -0400
commit3ee5a7015c8b7cb4de21f7345f8381946f2fce55 (patch)
tree7e590ad95097057c837e392fe1fd13786e6889d5
parentcf73d882cc51c1f245a890cccb79952a260302d3 (diff)
ceph: call ceph_mdsc_destroy from destroy_fs_client
They're always called in succession. Signed-off-by: Jeff Layton <jlayton@kernel.org> Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
-rw-r--r--fs/ceph/super.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/fs/ceph/super.c b/fs/ceph/super.c
index 03b63b1cd32c..7173679c8ed7 100644
--- a/fs/ceph/super.c
+++ b/fs/ceph/super.c
@@ -731,6 +731,7 @@ static void destroy_fs_client(struct ceph_fs_client *fsc)
731{ 731{
732 dout("destroy_fs_client %p\n", fsc); 732 dout("destroy_fs_client %p\n", fsc);
733 733
734 ceph_mdsc_destroy(fsc);
734 destroy_workqueue(fsc->inode_wq); 735 destroy_workqueue(fsc->inode_wq);
735 destroy_workqueue(fsc->cap_wq); 736 destroy_workqueue(fsc->cap_wq);
736 737
@@ -1105,7 +1106,6 @@ static struct dentry *ceph_mount(struct file_system_type *fs_type,
1105 } 1106 }
1106 1107
1107 if (ceph_sb_to_client(sb) != fsc) { 1108 if (ceph_sb_to_client(sb) != fsc) {
1108 ceph_mdsc_destroy(fsc);
1109 destroy_fs_client(fsc); 1109 destroy_fs_client(fsc);
1110 fsc = ceph_sb_to_client(sb); 1110 fsc = ceph_sb_to_client(sb);
1111 dout("get_sb got existing client %p\n", fsc); 1111 dout("get_sb got existing client %p\n", fsc);
@@ -1131,7 +1131,6 @@ out_splat:
1131 goto out_final; 1131 goto out_final;
1132 1132
1133out: 1133out:
1134 ceph_mdsc_destroy(fsc);
1135 destroy_fs_client(fsc); 1134 destroy_fs_client(fsc);
1136out_final: 1135out_final:
1137 dout("ceph_mount fail %ld\n", PTR_ERR(res)); 1136 dout("ceph_mount fail %ld\n", PTR_ERR(res));
@@ -1155,8 +1154,6 @@ static void ceph_kill_sb(struct super_block *s)
1155 1154
1156 ceph_fscache_unregister_fs(fsc); 1155 ceph_fscache_unregister_fs(fsc);
1157 1156
1158 ceph_mdsc_destroy(fsc);
1159
1160 destroy_fs_client(fsc); 1157 destroy_fs_client(fsc);
1161 free_anon_bdev(dev); 1158 free_anon_bdev(dev);
1162} 1159}