summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/lpfc
diff options
context:
space:
mode:
authorMartin K. Petersen <martin.petersen@oracle.com>2018-12-12 20:26:56 -0500
committerMartin K. Petersen <martin.petersen@oracle.com>2018-12-12 20:26:56 -0500
commit2d1036aea463e34d03b402e6a918ec89a742b2bb (patch)
tree7ddd8a9f95b5845da2e462447d64f899a2e94d76 /drivers/scsi/lpfc
parentde55b786b8a673933f87d68c1b4a7337229d766b (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.c20
-rw-r--r--drivers/scsi/lpfc/lpfc_hw.h1
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;