diff options
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_ct.c')
-rw-r--r-- | drivers/scsi/lpfc/lpfc_ct.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/scsi/lpfc/lpfc_ct.c b/drivers/scsi/lpfc/lpfc_ct.c index 7f427f9c4688..98b94c0eb597 100644 --- a/drivers/scsi/lpfc/lpfc_ct.c +++ b/drivers/scsi/lpfc/lpfc_ct.c | |||
@@ -260,8 +260,10 @@ lpfc_gen_req(struct lpfc_hba *phba, struct lpfc_dmabuf *bmp, | |||
260 | icmd->un.genreq64.w5.hcsw.Rctl = FC_UNSOL_CTL; | 260 | icmd->un.genreq64.w5.hcsw.Rctl = FC_UNSOL_CTL; |
261 | icmd->un.genreq64.w5.hcsw.Type = FC_COMMON_TRANSPORT_ULP; | 261 | icmd->un.genreq64.w5.hcsw.Type = FC_COMMON_TRANSPORT_ULP; |
262 | 262 | ||
263 | if (!tmo) | 263 | if (!tmo) { |
264 | tmo = (2 * phba->fc_ratov) + 1; | 264 | /* FC spec states we need 3 * ratov for CT requests */ |
265 | tmo = (3 * phba->fc_ratov); | ||
266 | } | ||
265 | icmd->ulpTimeout = tmo; | 267 | icmd->ulpTimeout = tmo; |
266 | icmd->ulpBdeCount = 1; | 268 | icmd->ulpBdeCount = 1; |
267 | icmd->ulpLe = 1; | 269 | icmd->ulpLe = 1; |
@@ -449,6 +451,11 @@ lpfc_cmpl_ct_cmd_gid_ft(struct lpfc_hba * phba, struct lpfc_iocbq * cmdiocb, | |||
449 | CTrsp = (struct lpfc_sli_ct_request *) outp->virt; | 451 | CTrsp = (struct lpfc_sli_ct_request *) outp->virt; |
450 | if (CTrsp->CommandResponse.bits.CmdRsp == | 452 | if (CTrsp->CommandResponse.bits.CmdRsp == |
451 | be16_to_cpu(SLI_CT_RESPONSE_FS_ACC)) { | 453 | be16_to_cpu(SLI_CT_RESPONSE_FS_ACC)) { |
454 | lpfc_printf_log(phba, KERN_INFO, LOG_DISCOVERY, | ||
455 | "%d:0239 NameServer Rsp " | ||
456 | "Data: x%x\n", | ||
457 | phba->brd_no, | ||
458 | phba->fc_flag); | ||
452 | lpfc_ns_rsp(phba, outp, | 459 | lpfc_ns_rsp(phba, outp, |
453 | (uint32_t) (irsp->un.genreq64.bdl.bdeSize)); | 460 | (uint32_t) (irsp->un.genreq64.bdl.bdeSize)); |
454 | } else if (CTrsp->CommandResponse.bits.CmdRsp == | 461 | } else if (CTrsp->CommandResponse.bits.CmdRsp == |