diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2009-03-27 12:46:42 +0100 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2009-03-27 12:46:42 +0100 |
commit | 2230d90dd889e35da2728b6f6ebf25fb5a6499bd (patch) | |
tree | 857e571d9eda201e18eaa5dabf31ff795b5af4d2 /drivers/ide/ide-dma.c | |
parent | d364c7f50b3bb6dc77259974038567b821e2cf0a (diff) | |
download | linux-2230d90dd889e35da2728b6f6ebf25fb5a6499bd.tar.bz2 |
ide: sanitize ide_finish_cmd()
* Move ide_end_request() call out from ide_finish_cmd() to its users.
* Use ide_finish_cmd() in task_no_data_intr().
There should be no functional changes caused by this patch.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/ide-dma.c')
-rw-r--r-- | drivers/ide/ide-dma.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/ide/ide-dma.c b/drivers/ide/ide-dma.c index cba9fe585d87..820e5104ba47 100644 --- a/drivers/ide/ide-dma.c +++ b/drivers/ide/ide-dma.c @@ -98,7 +98,10 @@ ide_startstop_t ide_dma_intr(ide_drive_t *drive) if (!dma_stat) { struct ide_cmd *cmd = &hwif->cmd; - ide_finish_cmd(drive, cmd, stat); + if ((cmd->tf_flags & IDE_TFLAG_FS) == 0) + ide_finish_cmd(drive, cmd, stat); + else + ide_end_request(drive, 1, cmd->rq->nr_sectors); return ide_stopped; } printk(KERN_ERR "%s: %s: bad DMA status (0x%02x)\n", |