From: Albert Lee Date: Tue, 14 Mar 2006 03:19:04 +0000 (+0800) Subject: [PATCH] libata-dev: add flush task to ata_exec_internal() X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=41ade50c4eff9477e6aef6b15e84673c6758ec0d;p=openwrt%2Fstaging%2Fblogic.git [PATCH] libata-dev: add flush task to ata_exec_internal() Add ata_port_flush_task() to ata_exec_internal(). Signed-off-by: Albert Lee Signed-off-by: Jeff Garzik --- diff --git a/drivers/scsi/libata-core.c b/drivers/scsi/libata-core.c index 714b42bad935..a28569d0081d 100644 --- a/drivers/scsi/libata-core.c +++ b/drivers/scsi/libata-core.c @@ -962,6 +962,8 @@ ata_exec_internal(struct ata_port *ap, struct ata_device *dev, spin_unlock_irqrestore(&ap->host_set->lock, flags); if (!wait_for_completion_timeout(&wait, ATA_TMOUT_INTERNAL)) { + ata_port_flush_task(ap); + spin_lock_irqsave(&ap->host_set->lock, flags); /* We're racing with irq here. If we lose, the