diff options
author | Jeffrey Huang <huangjw@broadcom.com> | 2012-02-08 17:33:56 (GMT) |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-02-09 19:03:50 (GMT) |
commit | 0cb1f4b96092b9d91d4e50d5c77b424745cd1102 (patch) | |
tree | ce4bc01329bdb14726bdae6b1ac1f3d3085824ca /drivers/net/ethernet/broadcom/cnic.c | |
parent | a584b7ae4ef01425f6827657abdc3e4db49b3578 (diff) | |
download | linux-0cb1f4b96092b9d91d4e50d5c77b424745cd1102.tar.xz |
cnic: set error flag when iSCSI connection fails
to speed up error recovery due to SPQ failures. The error flag will
expedite the recovery process by skipping the timeouts.
Signed-off-by: Jeffrey Huang <huangjw@broadcom.com>
Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/broadcom/cnic.c')
-rw-r--r-- | drivers/net/ethernet/broadcom/cnic.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/ethernet/broadcom/cnic.c b/drivers/net/ethernet/broadcom/cnic.c index 7381460..e236560 100644 --- a/drivers/net/ethernet/broadcom/cnic.c +++ b/drivers/net/ethernet/broadcom/cnic.c @@ -3927,6 +3927,8 @@ static void cnic_cm_process_kcqe(struct cnic_dev *dev, struct kcqe *kcqe) case L4_KCQE_OPCODE_VALUE_CONNECT_COMPLETE: if (l4kcqe->status == 0) set_bit(SK_F_OFFLD_COMPLETE, &csk->flags); + else if (l4kcqe->status == L4_KCQE_COMPLETION_STATUS_NIC_ERROR) + set_bit(SK_F_HW_ERR, &csk->flags); smp_mb__before_clear_bit(); clear_bit(SK_F_OFFLD_SCHED, &csk->flags); |