Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7cba97f1 authored by Bartlomiej Zolnierkiewicz's avatar Bartlomiej Zolnierkiewicz
Browse files

ide: I/O resources are released too early in ide_unregister()



Release I/O resources after releasing DMA.

Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
parent 537f06c5
Loading
Loading
Loading
Loading
+7 −7
Original line number Original line Diff line number Diff line
@@ -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;