diff options
author | James Smart <James.Smart@Emulex.Com> | 2006-08-01 07:34:00 -0400 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.il.steeleye.com> | 2006-08-06 12:28:41 -0400 |
commit | 8f6d98d2e05c38cb08fbda5e38e5f87d361c3cac (patch) | |
tree | a1a35b9134643610667451c2c3ea9a7a4ac1508b /drivers/scsi/lpfc/lpfc_init.c | |
parent | 1c067a42413c4f39c907443b8f5979cd4d82f0ff (diff) |
[SCSI] lpfc 8.1.7 : Short bug fixes
Short bug fixes:
- Fix iocbq list corruption due to missing list_del's in ct handling
- Missing unlock in lpfc_sli_next_iotag()
- Fix initialization of can_queue value
- Differentiate sysfs mailbox errors with different codes.
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_init.c')
-rw-r--r-- | drivers/scsi/lpfc/lpfc_init.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/drivers/scsi/lpfc/lpfc_init.c b/drivers/scsi/lpfc/lpfc_init.c index ef47b824cbed..16dc8c82b5ce 100644 --- a/drivers/scsi/lpfc/lpfc_init.c +++ b/drivers/scsi/lpfc/lpfc_init.c | |||
@@ -1616,7 +1616,11 @@ lpfc_pci_probe_one(struct pci_dev *pdev, const struct pci_device_id *pid) | |||
1616 | goto out_free_iocbq; | 1616 | goto out_free_iocbq; |
1617 | } | 1617 | } |
1618 | 1618 | ||
1619 | /* We can rely on a queue depth attribute only after SLI HBA setup */ | 1619 | /* |
1620 | * Set initial can_queue value since 0 is no longer supported and | ||
1621 | * scsi_add_host will fail. This will be adjusted later based on the | ||
1622 | * max xri value determined in hba setup. | ||
1623 | */ | ||
1620 | host->can_queue = phba->cfg_hba_queue_depth - 10; | 1624 | host->can_queue = phba->cfg_hba_queue_depth - 10; |
1621 | 1625 | ||
1622 | /* Tell the midlayer we support 16 byte commands */ | 1626 | /* Tell the midlayer we support 16 byte commands */ |
@@ -1656,6 +1660,12 @@ lpfc_pci_probe_one(struct pci_dev *pdev, const struct pci_device_id *pid) | |||
1656 | goto out_free_irq; | 1660 | goto out_free_irq; |
1657 | } | 1661 | } |
1658 | 1662 | ||
1663 | /* | ||
1664 | * hba setup may have changed the hba_queue_depth so we need to adjust | ||
1665 | * the value of can_queue. | ||
1666 | */ | ||
1667 | host->can_queue = phba->cfg_hba_queue_depth - 10; | ||
1668 | |||
1659 | lpfc_discovery_wait(phba); | 1669 | lpfc_discovery_wait(phba); |
1660 | 1670 | ||
1661 | if (phba->cfg_poll & DISABLE_FCP_RING_INT) { | 1671 | if (phba->cfg_poll & DISABLE_FCP_RING_INT) { |