|
@@ -1978,7 +1978,6 @@ static int rebuild_lun_table(ctlr_info_t *h, int first_time)
|
|
h->drv[i].busy_configuring = 1;
|
|
h->drv[i].busy_configuring = 1;
|
|
spin_unlock_irqrestore(CCISS_LOCK(h->ctlr), flags);
|
|
spin_unlock_irqrestore(CCISS_LOCK(h->ctlr), flags);
|
|
return_code = deregister_disk(h, i, 1);
|
|
return_code = deregister_disk(h, i, 1);
|
|
- cciss_destroy_ld_sysfs_entry(&h->drv[i]);
|
|
|
|
h->drv[i].busy_configuring = 0;
|
|
h->drv[i].busy_configuring = 0;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -2119,6 +2118,7 @@ static int deregister_disk(ctlr_info_t *h, int drv_index,
|
|
* indicate that this element of the drive
|
|
* indicate that this element of the drive
|
|
* array is free.
|
|
* array is free.
|
|
*/
|
|
*/
|
|
|
|
+ cciss_destroy_ld_sysfs_entry(drv);
|
|
|
|
|
|
if (clear_all) {
|
|
if (clear_all) {
|
|
/* check to see if it was the last disk */
|
|
/* check to see if it was the last disk */
|
|
@@ -4142,6 +4142,9 @@ static void __devexit cciss_remove_one(struct pci_dev *pdev)
|
|
if (q)
|
|
if (q)
|
|
blk_cleanup_queue(q);
|
|
blk_cleanup_queue(q);
|
|
}
|
|
}
|
|
|
|
+ if (hba[i]->drv[j].raid_level != -1)
|
|
|
|
+ cciss_destroy_ld_sysfs_entry(&hba[i]->drv[j]);
|
|
|
|
+
|
|
}
|
|
}
|
|
|
|
|
|
#ifdef CONFIG_CISS_SCSI_TAPE
|
|
#ifdef CONFIG_CISS_SCSI_TAPE
|