diff options
author | Bhanu Prakash Gollapudi <bprakash@broadcom.com> | 2013-01-11 08:59:38 +0100 |
---|---|---|
committer | James Bottomley <JBottomley@Parallels.com> | 2013-01-30 00:47:05 +0100 |
commit | 50b7186f64d525c1054d996f83e16c200f0b321c (patch) | |
tree | e875d44bfca0230460c9a7d208f70629a235cdfc | |
parent | [SCSI] bnx2fc: Remove potential NULL dereference (diff) | |
download | linux-50b7186f64d525c1054d996f83e16c200f0b321c.tar.xz linux-50b7186f64d525c1054d996f83e16c200f0b321c.zip |
[SCSI] bnx2fc: support software fcoe target
Software FCoE target always advertises RETRY bit even when there are no
tape LUNs behind the target. This causes the driver to enable FW support
for sequence level error recovery and perform REC/SRR. This patch
arrests the behavior by not enabling SLER feature for this target.
Signed-off-by: Bhanu Prakash Gollapudi <bprakash@broadcom.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
-rw-r--r-- | drivers/scsi/bnx2fc/bnx2fc_tgt.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/scsi/bnx2fc/bnx2fc_tgt.c b/drivers/scsi/bnx2fc/bnx2fc_tgt.c index b9d0d9cb17f9..eba2328f60e7 100644 --- a/drivers/scsi/bnx2fc/bnx2fc_tgt.c +++ b/drivers/scsi/bnx2fc/bnx2fc_tgt.c @@ -381,7 +381,9 @@ static int bnx2fc_init_tgt(struct bnx2fc_rport *tgt, tgt->rq_cons_idx = 0; atomic_set(&tgt->num_active_ios, 0); - if (rdata->flags & FC_RP_FLAGS_RETRY) { + if (rdata->flags & FC_RP_FLAGS_RETRY && + rdata->ids.roles & FC_RPORT_ROLE_FCP_TARGET && + !(rdata->ids.roles & FC_RPORT_ROLE_FCP_INITIATOR)) { tgt->dev_type = TYPE_TAPE; tgt->io_timeout = 0; /* use default ULP timeout */ } else { |