From 4fae8085b9464fe47cf477d44be6300cb658e34e Mon Sep 17 00:00:00 2001 From: Eddie Wai Date: Wed, 5 Dec 2012 10:10:15 +0000 Subject: [PATCH] --- yaml --- r: 341888 b: refs/heads/master c: 0d650ec75a0d2525dbc98f1a04ed0b2a4bf5d3ac h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/net/ethernet/broadcom/cnic.c | 13 +++++++++++-- trunk/drivers/net/ethernet/broadcom/cnic_if.h | 4 ++-- 3 files changed, 14 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index 085a345d6d9e..182e93e14a1b 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: caa9e931fe40c9ffad4d951555675417ab074ea5 +refs/heads/master: 0d650ec75a0d2525dbc98f1a04ed0b2a4bf5d3ac diff --git a/trunk/drivers/net/ethernet/broadcom/cnic.c b/trunk/drivers/net/ethernet/broadcom/cnic.c index 5437e2aa97b5..091c60a9897c 100644 --- a/trunk/drivers/net/ethernet/broadcom/cnic.c +++ b/trunk/drivers/net/ethernet/broadcom/cnic.c @@ -3853,12 +3853,17 @@ static int cnic_cm_abort(struct cnic_sock *csk) return cnic_cm_abort_req(csk); /* Getting here means that we haven't started connect, or - * connect was not successful. + * connect was not successful, or it has been reset by the target. */ cp->close_conn(csk, opcode); - if (csk->state != opcode) + if (csk->state != opcode) { + /* Wait for remote reset sequence to complete */ + while (test_bit(SK_F_PG_OFFLD_COMPLETE, &csk->flags)) + msleep(1); + return -EALREADY; + } return 0; } @@ -3872,6 +3877,10 @@ static int cnic_cm_close(struct cnic_sock *csk) csk->state = L4_KCQE_OPCODE_VALUE_CLOSE_COMP; return cnic_cm_close_req(csk); } else { + /* Wait for remote reset sequence to complete */ + while (test_bit(SK_F_PG_OFFLD_COMPLETE, &csk->flags)) + msleep(1); + return -EALREADY; } return 0; diff --git a/trunk/drivers/net/ethernet/broadcom/cnic_if.h b/trunk/drivers/net/ethernet/broadcom/cnic_if.h index 865095aad1f6..502e11ef6373 100644 --- a/trunk/drivers/net/ethernet/broadcom/cnic_if.h +++ b/trunk/drivers/net/ethernet/broadcom/cnic_if.h @@ -14,8 +14,8 @@ #include "bnx2x/bnx2x_mfw_req.h" -#define CNIC_MODULE_VERSION "2.5.14" -#define CNIC_MODULE_RELDATE "Sep 30, 2012" +#define CNIC_MODULE_VERSION "2.5.15" +#define CNIC_MODULE_RELDATE "Dec 04, 2012" #define CNIC_ULP_RDMA 0 #define CNIC_ULP_ISCSI 1