diff --git a/drivers/scsi/advansys.c b/drivers/scsi/advansys.c --- a/drivers/scsi/advansys.c +++ b/drivers/scsi/advansys.c @@ -4472,7 +4472,7 @@ advansys_detect(struct scsi_host_templat /* Find all PCI cards. */ while (pci_device_id_cnt < ASC_PCI_DEVICE_ID_CNT) { - if ((pci_devp = pci_find_device(ASC_PCI_VENDORID, + if ((pci_devp = pci_get_device(ASC_PCI_VENDORID, pci_device_id[pci_device_id_cnt], pci_devp)) == NULL) { pci_device_id_cnt++; @@ -5431,6 +5431,10 @@ advansys_detect(struct scsi_host_templat } } + for (pci_card_cnt = 0; pci_card_cnt < pci_card_cnt_max; pci_card_cnt++) + pci_dev_put(pci_devicep[pci_card_cnt]); + + ASC_DBG1(1, "advansys_detect: done: asc_board_count %d\n", asc_board_count); return asc_board_count; }