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>
This commit is contained in:
Jeff Layton 2019-09-12 08:07:56 -04:00 committed by Ilya Dryomov
parent cf73d882cc
commit 3ee5a7015c
1 changed files with 1 additions and 4 deletions

View File

@ -731,6 +731,7 @@ static void destroy_fs_client(struct ceph_fs_client *fsc)
{ {
dout("destroy_fs_client %p\n", fsc); dout("destroy_fs_client %p\n", fsc);
ceph_mdsc_destroy(fsc);
destroy_workqueue(fsc->inode_wq); destroy_workqueue(fsc->inode_wq);
destroy_workqueue(fsc->cap_wq); destroy_workqueue(fsc->cap_wq);
@ -1105,7 +1106,6 @@ static struct dentry *ceph_mount(struct file_system_type *fs_type,
} }
if (ceph_sb_to_client(sb) != fsc) { if (ceph_sb_to_client(sb) != fsc) {
ceph_mdsc_destroy(fsc);
destroy_fs_client(fsc); destroy_fs_client(fsc);
fsc = ceph_sb_to_client(sb); fsc = ceph_sb_to_client(sb);
dout("get_sb got existing client %p\n", fsc); dout("get_sb got existing client %p\n", fsc);
@ -1131,7 +1131,6 @@ out_splat:
goto out_final; goto out_final;
out: out:
ceph_mdsc_destroy(fsc);
destroy_fs_client(fsc); destroy_fs_client(fsc);
out_final: out_final:
dout("ceph_mount fail %ld\n", PTR_ERR(res)); dout("ceph_mount fail %ld\n", PTR_ERR(res));
@ -1155,8 +1154,6 @@ static void ceph_kill_sb(struct super_block *s)
ceph_fscache_unregister_fs(fsc); ceph_fscache_unregister_fs(fsc);
ceph_mdsc_destroy(fsc);
destroy_fs_client(fsc); destroy_fs_client(fsc);
free_anon_bdev(dev); free_anon_bdev(dev);
} }