From e0e3271074e1ebd0b80a912a457ce03c971bcd66 Mon Sep 17 00:00:00 2001
From: Sage Weil <sage@newdream.net>
Date: Mon, 21 Dec 2009 21:04:26 -0800
Subject: [PATCH] ceph: only unregister registered bdi

Signed-off-by: Sage Weil <sage@newdream.net>
---
 fs/ceph/super.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/fs/ceph/super.c b/fs/ceph/super.c
index b9cb8cebcdc1..cd81c84e96fc 100644
--- a/fs/ceph/super.c
+++ b/fs/ceph/super.c
@@ -942,7 +942,8 @@ static void ceph_kill_sb(struct super_block *s)
 	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);
 }
-- 
2.34.1