ceph: only unregister registered bdi
Signed-off-by: Sage Weil <sage@newdream.net>
diff --git a/fs/ceph/super.c b/fs/ceph/super.c
index b9cb8ce..cd81c84 100644
--- a/fs/ceph/super.c
+++ b/fs/ceph/super.c
@@ -942,7 +942,8 @@
dout("kill_sb %p\n", s);
ceph_mdsc_pre_umount(&client->mdsc);
kill_anon_super(s); /* will call put_super after sb is r/o */
- bdi_unregister(&client->backing_dev_info);
+ if (s->s_bdi == &client->backing_dev_info)
+ bdi_unregister(&client->backing_dev_info);
bdi_destroy(&client->backing_dev_info);
ceph_destroy_client(client);
}