diff options
Diffstat (limited to 'drivers/block/cciss.c')
-rw-r--r-- | drivers/block/cciss.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c index b890f8b3c092..f162f96c36e6 100644 --- a/drivers/block/cciss.c +++ b/drivers/block/cciss.c | |||
@@ -1978,7 +1978,6 @@ static int rebuild_lun_table(ctlr_info_t *h, int first_time) | |||
1978 | h->drv[i].busy_configuring = 1; | 1978 | h->drv[i].busy_configuring = 1; |
1979 | spin_unlock_irqrestore(CCISS_LOCK(h->ctlr), flags); | 1979 | spin_unlock_irqrestore(CCISS_LOCK(h->ctlr), flags); |
1980 | return_code = deregister_disk(h, i, 1); | 1980 | return_code = deregister_disk(h, i, 1); |
1981 | cciss_destroy_ld_sysfs_entry(&h->drv[i]); | ||
1982 | h->drv[i].busy_configuring = 0; | 1981 | h->drv[i].busy_configuring = 0; |
1983 | } | 1982 | } |
1984 | } | 1983 | } |
@@ -2119,6 +2118,7 @@ static int deregister_disk(ctlr_info_t *h, int drv_index, | |||
2119 | * indicate that this element of the drive | 2118 | * indicate that this element of the drive |
2120 | * array is free. | 2119 | * array is free. |
2121 | */ | 2120 | */ |
2121 | cciss_destroy_ld_sysfs_entry(drv); | ||
2122 | 2122 | ||
2123 | if (clear_all) { | 2123 | if (clear_all) { |
2124 | /* check to see if it was the last disk */ | 2124 | /* check to see if it was the last disk */ |
@@ -4142,6 +4142,9 @@ static void __devexit cciss_remove_one(struct pci_dev *pdev) | |||
4142 | if (q) | 4142 | if (q) |
4143 | blk_cleanup_queue(q); | 4143 | blk_cleanup_queue(q); |
4144 | } | 4144 | } |
4145 | if (hba[i]->drv[j].raid_level != -1) | ||
4146 | cciss_destroy_ld_sysfs_entry(&hba[i]->drv[j]); | ||
4147 | |||
4145 | } | 4148 | } |
4146 | 4149 | ||
4147 | #ifdef CONFIG_CISS_SCSI_TAPE | 4150 | #ifdef CONFIG_CISS_SCSI_TAPE |