diff options
author | Sage Weil <sage@newdream.net> | 2009-11-18 14:22:36 -0500 |
---|---|---|
committer | Sage Weil <sage@newdream.net> | 2009-11-18 14:29:42 -0500 |
commit | 42ce56e50d948fc7c1c8c3a749ee5a21a7e134f6 (patch) | |
tree | d9c65553d783b2dd0fff7489be15e314fa78203f /fs/ceph/osd_client.c | |
parent | 11ea8eda064aa4dc6e44a6dade1891b69ebd5255 (diff) |
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.c | 4 |
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) | |||
350 | { | 350 | { |
351 | dout("put_osd %p %d -> %d\n", osd, atomic_read(&osd->o_ref), | 351 | dout("put_osd %p %d -> %d\n", osd, atomic_read(&osd->o_ref), |
352 | atomic_read(&osd->o_ref) - 1); | 352 | atomic_read(&osd->o_ref) - 1); |
353 | if (atomic_dec_and_test(&osd->o_ref)) { | 353 | if (atomic_dec_and_test(&osd->o_ref)) |
354 | ceph_con_shutdown(&osd->o_con); | ||
355 | kfree(osd); | 354 | kfree(osd); |
356 | } | ||
357 | } | 355 | } |
358 | 356 | ||
359 | /* | 357 | /* |