diff options
author | Martin K. Petersen <martin.petersen@oracle.com> | 2018-12-12 20:26:56 -0500 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2018-12-12 20:26:56 -0500 |
commit | 2d1036aea463e34d03b402e6a918ec89a742b2bb (patch) | |
tree | 7ddd8a9f95b5845da2e462447d64f899a2e94d76 /drivers/scsi/lpfc | |
parent | de55b786b8a673933f87d68c1b4a7337229d766b (diff) |
Revert "scsi: lpfc: ls_rjt erroneus FLOGIs"
This reverts commit 287aba2592870fa5b76134b28173b77f1f7a4492.
We killed the bad firmware and this mod is no longer necessary.
Signed-off-by: James Smart <james.smart@broadcom.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/lpfc')
-rw-r--r-- | drivers/scsi/lpfc/lpfc_els.c | 20 | ||||
-rw-r--r-- | drivers/scsi/lpfc/lpfc_hw.h | 1 |
2 files changed, 0 insertions, 21 deletions
diff --git a/drivers/scsi/lpfc/lpfc_els.c b/drivers/scsi/lpfc/lpfc_els.c index 103ee7049633..27e0f10cefed 100644 --- a/drivers/scsi/lpfc/lpfc_els.c +++ b/drivers/scsi/lpfc/lpfc_els.c | |||
@@ -8091,10 +8091,8 @@ lpfc_els_unsol_buffer(struct lpfc_hba *phba, struct lpfc_sli_ring *pring, | |||
8091 | struct ls_rjt stat; | 8091 | struct ls_rjt stat; |
8092 | uint32_t *payload; | 8092 | uint32_t *payload; |
8093 | uint32_t cmd, did, newnode; | 8093 | uint32_t cmd, did, newnode; |
8094 | uint32_t vid, flag; | ||
8095 | uint8_t rjt_exp, rjt_err = 0, init_link = 0; | 8094 | uint8_t rjt_exp, rjt_err = 0, init_link = 0; |
8096 | IOCB_t *icmd = &elsiocb->iocb; | 8095 | IOCB_t *icmd = &elsiocb->iocb; |
8097 | struct serv_parm *sp; | ||
8098 | LPFC_MBOXQ_t *mbox; | 8096 | LPFC_MBOXQ_t *mbox; |
8099 | 8097 | ||
8100 | if (!vport || !(elsiocb->context2)) | 8098 | if (!vport || !(elsiocb->context2)) |
@@ -8245,22 +8243,6 @@ lpfc_els_unsol_buffer(struct lpfc_hba *phba, struct lpfc_sli_ring *pring, | |||
8245 | did, vport->port_state, ndlp->nlp_flag); | 8243 | did, vport->port_state, ndlp->nlp_flag); |
8246 | 8244 | ||
8247 | phba->fc_stat.elsRcvFLOGI++; | 8245 | phba->fc_stat.elsRcvFLOGI++; |
8248 | sp = (struct serv_parm *) | ||
8249 | ((uint8_t *)payload + sizeof(uint32_t)); | ||
8250 | |||
8251 | /* Check to see if this is firmware generated */ | ||
8252 | if (sp->cmn.valid_vendor_ver_level) { | ||
8253 | vid = be32_to_cpu(sp->un.vv.vid); | ||
8254 | flag = be32_to_cpu(sp->un.vv.flags); | ||
8255 | if (vid == LPFC_VV_BRCD_ID) { | ||
8256 | /* Drop this FLOGI */ | ||
8257 | lpfc_printf_vlog( | ||
8258 | vport, KERN_INFO, LOG_ELS, | ||
8259 | "3316 Dropping rcv FLOGI: " | ||
8260 | "flag x%x\n", flag); | ||
8261 | goto lsrjt; | ||
8262 | } | ||
8263 | } | ||
8264 | 8246 | ||
8265 | /* If the driver believes fabric discovery is done and is ready, | 8247 | /* If the driver believes fabric discovery is done and is ready, |
8266 | * bounce the link. There is some descrepancy. | 8248 | * bounce the link. There is some descrepancy. |
@@ -8508,8 +8490,6 @@ lsrjt: | |||
8508 | * link and start over. | 8490 | * link and start over. |
8509 | */ | 8491 | */ |
8510 | if (init_link) { | 8492 | if (init_link) { |
8511 | lpfc_printf_vlog(vport, KERN_ERR, LOG_ELS, | ||
8512 | "3318 Resetting Link, multiple rcv FLOGIs\n"); | ||
8513 | mbox = mempool_alloc(phba->mbox_mem_pool, GFP_KERNEL); | 8493 | mbox = mempool_alloc(phba->mbox_mem_pool, GFP_KERNEL); |
8514 | if (!mbox) | 8494 | if (!mbox) |
8515 | return; | 8495 | return; |
diff --git a/drivers/scsi/lpfc/lpfc_hw.h b/drivers/scsi/lpfc/lpfc_hw.h index eb49c720e042..ec1227018913 100644 --- a/drivers/scsi/lpfc/lpfc_hw.h +++ b/drivers/scsi/lpfc/lpfc_hw.h | |||
@@ -525,7 +525,6 @@ struct serv_parm { /* Structure is in Big Endian format */ | |||
525 | struct { | 525 | struct { |
526 | uint32_t vid; | 526 | uint32_t vid; |
527 | #define LPFC_VV_EMLX_ID 0x454d4c58 /* EMLX */ | 527 | #define LPFC_VV_EMLX_ID 0x454d4c58 /* EMLX */ |
528 | #define LPFC_VV_BRCD_ID 0x42524344 /* BRCD */ | ||
529 | uint32_t flags; | 528 | uint32_t flags; |
530 | #define LPFC_VV_SUPPRESS_RSP 1 | 529 | #define LPFC_VV_SUPPRESS_RSP 1 |
531 | } vv; | 530 | } vv; |