aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/lpfc/lpfc_hbadisc.c
diff options
context:
space:
mode:
authorJames Smart <James.Smart@Emulex.Com>2006-12-02 13:34:16 -0500
committerJames Bottomley <jejb@mulgrave.il.steeleye.com>2006-12-03 10:29:18 -0500
commita4bc3379fbc368597024104727fdf14ced483c14 (patch)
treeed16c3eb403754d7fb9e8928ecc5a286f10a12d3 /drivers/scsi/lpfc/lpfc_hbadisc.c
parent2fb9bd8b9cbe9a8d70bf5f43a9ee6a4fa565ed5a (diff)
[SCSI] lpfc 8.1.11 : Fix lpfc_multi_ring_support
It was not accounted for in the fast/slow rings. Genericize the implementation and control it via sysfs Signed-off-by: James Smart <James.Smart@emulex.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_hbadisc.c')
-rw-r--r--drivers/scsi/lpfc/lpfc_hbadisc.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/scsi/lpfc/lpfc_hbadisc.c b/drivers/scsi/lpfc/lpfc_hbadisc.c
index 983faadec5f3..7c28184ad56d 100644
--- a/drivers/scsi/lpfc/lpfc_hbadisc.c
+++ b/drivers/scsi/lpfc/lpfc_hbadisc.c
@@ -525,7 +525,7 @@ lpfc_mbx_cmpl_clear_la(struct lpfc_hba * phba, LPFC_MBOXQ_t * pmb)
525 psli = &phba->sli; 525 psli = &phba->sli;
526 mb = &pmb->mb; 526 mb = &pmb->mb;
527 /* Since we don't do discovery right now, turn these off here */ 527 /* Since we don't do discovery right now, turn these off here */
528 psli->ring[psli->ip_ring].flag &= ~LPFC_STOP_IOCB_EVENT; 528 psli->ring[psli->extra_ring].flag &= ~LPFC_STOP_IOCB_EVENT;
529 psli->ring[psli->fcp_ring].flag &= ~LPFC_STOP_IOCB_EVENT; 529 psli->ring[psli->fcp_ring].flag &= ~LPFC_STOP_IOCB_EVENT;
530 psli->ring[psli->next_ring].flag &= ~LPFC_STOP_IOCB_EVENT; 530 psli->ring[psli->next_ring].flag &= ~LPFC_STOP_IOCB_EVENT;
531 531
@@ -641,7 +641,7 @@ out:
641 if (rc == MBX_NOT_FINISHED) { 641 if (rc == MBX_NOT_FINISHED) {
642 mempool_free(pmb, phba->mbox_mem_pool); 642 mempool_free(pmb, phba->mbox_mem_pool);
643 lpfc_disc_flush_list(phba); 643 lpfc_disc_flush_list(phba);
644 psli->ring[(psli->ip_ring)].flag &= ~LPFC_STOP_IOCB_EVENT; 644 psli->ring[(psli->extra_ring)].flag &= ~LPFC_STOP_IOCB_EVENT;
645 psli->ring[(psli->fcp_ring)].flag &= ~LPFC_STOP_IOCB_EVENT; 645 psli->ring[(psli->fcp_ring)].flag &= ~LPFC_STOP_IOCB_EVENT;
646 psli->ring[(psli->next_ring)].flag &= ~LPFC_STOP_IOCB_EVENT; 646 psli->ring[(psli->next_ring)].flag &= ~LPFC_STOP_IOCB_EVENT;
647 phba->hba_state = LPFC_HBA_READY; 647 phba->hba_state = LPFC_HBA_READY;
@@ -696,7 +696,7 @@ out:
696 == MBX_NOT_FINISHED) { 696 == MBX_NOT_FINISHED) {
697 mempool_free( pmb, phba->mbox_mem_pool); 697 mempool_free( pmb, phba->mbox_mem_pool);
698 lpfc_disc_flush_list(phba); 698 lpfc_disc_flush_list(phba);
699 psli->ring[(psli->ip_ring)].flag &= 699 psli->ring[(psli->extra_ring)].flag &=
700 ~LPFC_STOP_IOCB_EVENT; 700 ~LPFC_STOP_IOCB_EVENT;
701 psli->ring[(psli->fcp_ring)].flag &= 701 psli->ring[(psli->fcp_ring)].flag &=
702 ~LPFC_STOP_IOCB_EVENT; 702 ~LPFC_STOP_IOCB_EVENT;
@@ -1424,7 +1424,7 @@ lpfc_check_sli_ndlp(struct lpfc_hba * phba,
1424 if (iocb->context1 == (uint8_t *) ndlp) 1424 if (iocb->context1 == (uint8_t *) ndlp)
1425 return 1; 1425 return 1;
1426 } 1426 }
1427 } else if (pring->ringno == psli->ip_ring) { 1427 } else if (pring->ringno == psli->extra_ring) {
1428 1428
1429 } else if (pring->ringno == psli->fcp_ring) { 1429 } else if (pring->ringno == psli->fcp_ring) {
1430 /* Skip match check if waiting to relogin to FCP target */ 1430 /* Skip match check if waiting to relogin to FCP target */
@@ -1889,7 +1889,7 @@ lpfc_disc_start(struct lpfc_hba * phba)
1889 if (rc == MBX_NOT_FINISHED) { 1889 if (rc == MBX_NOT_FINISHED) {
1890 mempool_free( mbox, phba->mbox_mem_pool); 1890 mempool_free( mbox, phba->mbox_mem_pool);
1891 lpfc_disc_flush_list(phba); 1891 lpfc_disc_flush_list(phba);
1892 psli->ring[(psli->ip_ring)].flag &= 1892 psli->ring[(psli->extra_ring)].flag &=
1893 ~LPFC_STOP_IOCB_EVENT; 1893 ~LPFC_STOP_IOCB_EVENT;
1894 psli->ring[(psli->fcp_ring)].flag &= 1894 psli->ring[(psli->fcp_ring)].flag &=
1895 ~LPFC_STOP_IOCB_EVENT; 1895 ~LPFC_STOP_IOCB_EVENT;
@@ -2268,7 +2268,7 @@ lpfc_disc_timeout_handler(struct lpfc_hba *phba)
2268 2268
2269 if (clrlaerr) { 2269 if (clrlaerr) {
2270 lpfc_disc_flush_list(phba); 2270 lpfc_disc_flush_list(phba);
2271 psli->ring[(psli->ip_ring)].flag &= ~LPFC_STOP_IOCB_EVENT; 2271 psli->ring[(psli->extra_ring)].flag &= ~LPFC_STOP_IOCB_EVENT;
2272 psli->ring[(psli->fcp_ring)].flag &= ~LPFC_STOP_IOCB_EVENT; 2272 psli->ring[(psli->fcp_ring)].flag &= ~LPFC_STOP_IOCB_EVENT;
2273 psli->ring[(psli->next_ring)].flag &= ~LPFC_STOP_IOCB_EVENT; 2273 psli->ring[(psli->next_ring)].flag &= ~LPFC_STOP_IOCB_EVENT;
2274 phba->hba_state = LPFC_HBA_READY; 2274 phba->hba_state = LPFC_HBA_READY;