diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-01-26 20:13:10 +0100 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-01-26 20:13:10 +0100 |
commit | 49c746ee6cc791202172483277a249c12ba437d8 (patch) | |
tree | db6e95d642c571712e9806396b23279ecb992b21 /drivers/ide/ide-io.c | |
parent | ide: fix ->io_32bit race in ide_taskfile_ioctl() (diff) | |
download | linux-49c746ee6cc791202172483277a249c12ba437d8.tar.xz linux-49c746ee6cc791202172483277a249c12ba437d8.zip |
ide: clear HOB bit for REQ_TYPE_ATA_CMD requests in ide_end_drive_cmd()
ide_dump_status() may set HOB bit before ide_end_drive_cmd() is called.
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/ide-io.c')
-rw-r--r-- | drivers/ide/ide-io.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/ide/ide-io.c b/drivers/ide/ide-io.c index 5b213dcaa5e6..f01b103e55f0 100644 --- a/drivers/ide/ide-io.c +++ b/drivers/ide/ide-io.c @@ -370,6 +370,8 @@ void ide_end_drive_cmd (ide_drive_t *drive, u8 stat, u8 err) if (args) { args[0] = stat; args[1] = err; + /* be sure we're looking at the low order bits */ + hwif->OUTB(drive->ctl & ~0x80, IDE_CONTROL_REG); args[2] = hwif->INB(IDE_NSECTOR_REG); } } else if (rq->cmd_type == REQ_TYPE_ATA_TASKFILE) { |