ide: I/O resources are released too early in ide_unregister()
Release I/O resources after releasing DMA. Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
This commit is contained in:
@@ -529,13 +529,6 @@ void ide_unregister(unsigned int index)
|
|||||||
free_irq(hwif->irq, hwgroup);
|
free_irq(hwif->irq, hwgroup);
|
||||||
|
|
||||||
spin_lock_irq(&ide_lock);
|
spin_lock_irq(&ide_lock);
|
||||||
/*
|
|
||||||
* Note that we only release the standard ports,
|
|
||||||
* and do not even try to handle any extra ports
|
|
||||||
* allocated for weird IDE interface chipsets.
|
|
||||||
*/
|
|
||||||
ide_hwif_release_regions(hwif);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Remove us from the hwgroup, and free
|
* Remove us from the hwgroup, and free
|
||||||
* the hwgroup if we were the only member
|
* the hwgroup if we were the only member
|
||||||
@@ -590,6 +583,13 @@ void ide_unregister(unsigned int index)
|
|||||||
hwif->extra_ports = 0;
|
hwif->extra_ports = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Note that we only release the standard ports,
|
||||||
|
* and do not even try to handle any extra ports
|
||||||
|
* allocated for weird IDE interface chipsets.
|
||||||
|
*/
|
||||||
|
ide_hwif_release_regions(hwif);
|
||||||
|
|
||||||
/* copy original settings */
|
/* copy original settings */
|
||||||
tmp_hwif = *hwif;
|
tmp_hwif = *hwif;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user