summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie2006-03-31 12:31:15 +0200
committerLinus Torvalds2006-03-31 22:18:57 +0200
commit03731fbdd09f8db4af86dbf437e3169fb1920d5e (patch)
tree2066c497529cdf4a411186d057005c6953975aa5
parent[PATCH] LED: add NAND MTD activity LED trigger (diff)
downloadkernel-qcow2-linux-03731fbdd09f8db4af86dbf437e3169fb1920d5e.tar.gz
kernel-qcow2-linux-03731fbdd09f8db4af86dbf437e3169fb1920d5e.tar.xz
kernel-qcow2-linux-03731fbdd09f8db4af86dbf437e3169fb1920d5e.zip
[PATCH] Ensure ide-taskfile calls any driver specific end_request function
Ensure ide-taskfile.c calls any driver specific end_request function if present. Signed-off-by: Richard Purdie <rpurdie@rpsys.net> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Acked-by: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--drivers/ide/ide-taskfile.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/ide/ide-taskfile.c b/drivers/ide/ide-taskfile.c
index 0606bd2f6020..9233b8109a0f 100644
--- a/drivers/ide/ide-taskfile.c
+++ b/drivers/ide/ide-taskfile.c
@@ -375,7 +375,13 @@ static void task_end_request(ide_drive_t *drive, struct request *rq, u8 stat)
}
}
- ide_end_request(drive, 1, rq->hard_nr_sectors);
+ if (rq->rq_disk) {
+ ide_driver_t *drv;
+
+ drv = *(ide_driver_t **)rq->rq_disk->private_data;;
+ drv->end_request(drive, 1, rq->hard_nr_sectors);
+ } else
+ ide_end_request(drive, 1, rq->hard_nr_sectors);
}
/*