aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/block
diff options
context:
space:
mode:
authorKiyoshi Ueda <k-ueda@ct.jp.nec.com>2007-12-11 17:49:46 -0500
committerJens Axboe <jens.axboe@oracle.com>2008-01-28 04:37:20 -0500
commita65b58663d983e588aed8d1bfc75edaac2527fa7 (patch)
tree26440095aa5cabc38d98f8a9b3eb4358883b2885 /drivers/block
parent7d699bafe258ebd8f9b4ec182c554200b369a504 (diff)
blk_end_request: changing xsysace (take 4)
This patch converts xsysace to use blk_end_request interfaces. Related 'uptodate' arguments are converted to 'error'. xsysace is a little bit different from "normal" drivers. xsysace driver has a state machine in it. It calls end_that_request_first() and end_that_request_last() from different states. (ACE_FSM_STATE_REQ_TRANSFER and ACE_FSM_STATE_REQ_COMPLETE, respectively.) However, those states are consecutive and without any interruption inbetween. So we can just follow the standard conversion rule (b) mentioned in the patch subject "[PATCH 01/30] blk_end_request: add new request completion interface". Cc: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Kiyoshi Ueda <k-ueda@ct.jp.nec.com> Signed-off-by: Jun'ichi Nomura <j-nomura@ce.jp.nec.com> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Diffstat (limited to 'drivers/block')
-rw-r--r--drivers/block/xsysace.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/drivers/block/xsysace.c b/drivers/block/xsysace.c
index 82effce97c5..2c81465fd60 100644
--- a/drivers/block/xsysace.c
+++ b/drivers/block/xsysace.c
@@ -703,7 +703,7 @@ static void ace_fsm_dostate(struct ace_device *ace)
703 703
704 /* bio finished; is there another one? */ 704 /* bio finished; is there another one? */
705 i = ace->req->current_nr_sectors; 705 i = ace->req->current_nr_sectors;
706 if (end_that_request_first(ace->req, 1, i)) { 706 if (__blk_end_request(ace->req, 0, i)) {
707 /* dev_dbg(ace->dev, "next block; h=%li c=%i\n", 707 /* dev_dbg(ace->dev, "next block; h=%li c=%i\n",
708 * ace->req->hard_nr_sectors, 708 * ace->req->hard_nr_sectors,
709 * ace->req->current_nr_sectors); 709 * ace->req->current_nr_sectors);
@@ -718,9 +718,6 @@ static void ace_fsm_dostate(struct ace_device *ace)
718 break; 718 break;
719 719
720 case ACE_FSM_STATE_REQ_COMPLETE: 720 case ACE_FSM_STATE_REQ_COMPLETE:
721 /* Complete the block request */
722 blkdev_dequeue_request(ace->req);
723 end_that_request_last(ace->req, 1);
724 ace->req = NULL; 721 ace->req = NULL;
725 722
726 /* Finished request; go to idle state */ 723 /* Finished request; go to idle state */