summaryrefslogtreecommitdiffstats
path: root/fs/ceph/osd_client.c
diff options
context:
space:
mode:
authorSage Weil <sage@newdream.net>2009-11-18 11:22:36 -0800
committerSage Weil <sage@newdream.net>2009-11-18 11:29:42 -0800
commit42ce56e50d948fc7c1c8c3a749ee5a21a7e134f6 (patch)
treed9c65553d783b2dd0fff7489be15e314fa78203f /fs/ceph/osd_client.c
parent11ea8eda064aa4dc6e44a6dade1891b69ebd5255 (diff)
downloadblackbird-op-linux-42ce56e50d948fc7c1c8c3a749ee5a21a7e134f6.tar.gz
blackbird-op-linux-42ce56e50d948fc7c1c8c3a749ee5a21a7e134f6.zip
ceph: remove bad calls to ceph_con_shutdown
We want to ceph_con_close when we're done with the connection, before the ref count reaches 0. Once it does, do not call ceph_con_shutdown, as that takes the con mutex and may sleep, and besides that is unnecessary. Signed-off-by: Sage Weil <sage@newdream.net>
Diffstat (limited to 'fs/ceph/osd_client.c')
-rw-r--r--fs/ceph/osd_client.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/fs/ceph/osd_client.c b/fs/ceph/osd_client.c
index 7db14ba6261c..bcb9fe693076 100644
--- a/fs/ceph/osd_client.c
+++ b/fs/ceph/osd_client.c
@@ -350,10 +350,8 @@ static void put_osd(struct ceph_osd *osd)
{
dout("put_osd %p %d -> %d\n", osd, atomic_read(&osd->o_ref),
atomic_read(&osd->o_ref) - 1);
- if (atomic_dec_and_test(&osd->o_ref)) {
- ceph_con_shutdown(&osd->o_con);
+ if (atomic_dec_and_test(&osd->o_ref))
kfree(osd);
- }
}
/*
OpenPOWER on IntegriCloud