[PATCH 130/270] libceph: drop gratuitous socket close calls in con_work
Herton Ronaldo Krzesinski
herton.krzesinski at canonical.com
Mon Nov 26 16:57:00 UTC 2012
3.5.7u1 -stable review patch. If anyone has any objections, please let me know.
------------------
From: Sage Weil <sage at inktank.com>
commit 2e8cb10063820af7ed7638e3fd9013eee21266e7 upstream.
If the state is CLOSED or OPENING, we shouldn't have a socket.
Signed-off-by: Sage Weil <sage at inktank.com>
Signed-off-by: Herton Ronaldo Krzesinski <herton.krzesinski at canonical.com>
---
net/ceph/messenger.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/net/ceph/messenger.c b/net/ceph/messenger.c
index 20e60a8..32ab7cd 100644
--- a/net/ceph/messenger.c
+++ b/net/ceph/messenger.c
@@ -2284,15 +2284,15 @@ restart:
dout("con_work %p STANDBY\n", con);
goto done;
}
- if (test_bit(CLOSED, &con->state)) { /* e.g. if we are replaced */
- dout("con_work CLOSED\n");
- con_close_socket(con);
+ if (test_bit(CLOSED, &con->state)) {
+ dout("con_work %p CLOSED\n", con);
+ BUG_ON(con->sock);
goto done;
}
if (test_and_clear_bit(OPENING, &con->state)) {
/* reopen w/ new peer */
dout("con_work OPENING\n");
- con_close_socket(con);
+ BUG_ON(con->sock);
}
ret = try_read(con);
--
1.7.9.5
More information about the kernel-team
mailing list