diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2009-03-27 12:46:43 +0100 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2009-03-27 12:46:43 +0100 |
commit | 6902a5331256e1b9f4cef95a1e3622252113b260 (patch) | |
tree | f33ef1a732425e1862fcf0bbd0e909f82d247a8a /drivers/ide/ide-taskfile.c | |
parent | 37245aabfa0c628ba884cd88fe5cd633b426a1b2 (diff) | |
download | op-kernel-dev-6902a5331256e1b9f4cef95a1e3622252113b260.zip op-kernel-dev-6902a5331256e1b9f4cef95a1e3622252113b260.tar.gz |
ide: pass error value to ide_complete_rq()
Set rq->errors at ide_complete_rq() call sites and then pass
error value to ide_complete_rq().
[ Some rq->errors assignments look really wrong but this patch
leaves them alone to not introduce too many changes at once. ]
There should be no functional changes caused by this patch.
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/ide-taskfile.c')
-rw-r--r-- | drivers/ide/ide-taskfile.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/ide/ide-taskfile.c b/drivers/ide/ide-taskfile.c index f99a6aa..e9d008e 100644 --- a/drivers/ide/ide-taskfile.c +++ b/drivers/ide/ide-taskfile.c @@ -289,10 +289,12 @@ static void ide_error_cmd(ide_drive_t *drive, struct ide_cmd *cmd) void ide_finish_cmd(ide_drive_t *drive, struct ide_cmd *cmd, u8 stat) { + struct request *rq = drive->hwif->rq; u8 err = ide_read_error(drive); ide_complete_cmd(drive, cmd, stat, err); - ide_complete_rq(drive, err); + rq->errors = err; + ide_complete_rq(drive, err ? -EIO : 0); } /* |