From fb730055c8c9fbed3097ead8a8628172053d9b53 Mon Sep 17 00:00:00 2001 From: Mike Christie Date: Tue, 29 Nov 2005 23:12:49 -0600 Subject: [PATCH] --- yaml --- r: 15619 b: refs/heads/master c: e6273993dbcb8d805dd868e2128c3503a3bb1964 h: refs/heads/master i: 15617: 28bb08db84972dd560cd52b39eed42beeb47e836 15615: c29820ba00dcbb4b61450c8113859ba45b22ea53 v: v3 --- [refs] | 2 +- trunk/drivers/scsi/iscsi_tcp.c | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index f985b4818a29..8b5388ddbf34 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 0d2f16559a9015c4daa8babfc443bf2b8740fbd9 +refs/heads/master: e6273993dbcb8d805dd868e2128c3503a3bb1964 diff --git a/trunk/drivers/scsi/iscsi_tcp.c b/trunk/drivers/scsi/iscsi_tcp.c index 0769e9482194..f12d605c7729 100644 --- a/trunk/drivers/scsi/iscsi_tcp.c +++ b/trunk/drivers/scsi/iscsi_tcp.c @@ -1237,8 +1237,9 @@ iscsi_tcp_state_change(struct sock *sk) conn = (struct iscsi_conn*)sk->sk_user_data; session = conn->session; - if (sk->sk_state == TCP_CLOSE_WAIT || - sk->sk_state == TCP_CLOSE) { + if ((sk->sk_state == TCP_CLOSE_WAIT || + sk->sk_state == TCP_CLOSE) && + !atomic_read(&sk->sk_rmem_alloc)) { debug_tcp("iscsi_tcp_state_change: TCP_CLOSE|TCP_CLOSE_WAIT\n"); iscsi_conn_failure(conn, ISCSI_ERR_CONN_FAILED); }