ide: ide_unregister() locking bugfix
Holding ide_lock for ide_release_dma_engine() call is unnecessary and triggers WARN_ON(irqs_disabled()) in dma_free_coherent(). Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
This commit is contained in:
parent
bd8a59e297
commit
2b54ed9467
1 changed files with 2 additions and 2 deletions
|
@ -352,15 +352,15 @@ void ide_unregister(ide_hwif_t *hwif)
|
|||
blk_unregister_region(MKDEV(hwif->major, 0), MAX_DRIVES<<PARTN_BITS);
|
||||
kfree(hwif->sg_table);
|
||||
unregister_blkdev(hwif->major, hwif->name);
|
||||
spin_lock_irq(&ide_lock);
|
||||
|
||||
if (hwif->dma_base)
|
||||
ide_release_dma_engine(hwif);
|
||||
|
||||
spin_lock_irq(&ide_lock);
|
||||
/* restore hwif data to pristine status */
|
||||
ide_init_port_data(hwif, hwif->index);
|
||||
|
||||
spin_unlock_irq(&ide_lock);
|
||||
|
||||
mutex_unlock(&ide_cfg_mtx);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue