aboutsummaryrefslogtreecommitdiffstats
path: root/block/as-iosched.c
diff options
context:
space:
mode:
Diffstat (limited to 'block/as-iosched.c')
-rw-r--r--block/as-iosched.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/block/as-iosched.c b/block/as-iosched.c
index dc715a562e14..cb5e53b05c7c 100644
--- a/block/as-iosched.c
+++ b/block/as-iosched.c
@@ -880,7 +880,7 @@ static void as_remove_queued_request(struct request_queue *q,
880} 880}
881 881
882/* 882/*
883 * as_fifo_expired returns 0 if there are no expired reads on the fifo, 883 * as_fifo_expired returns 0 if there are no expired requests on the fifo,
884 * 1 otherwise. It is ratelimited so that we only perform the check once per 884 * 1 otherwise. It is ratelimited so that we only perform the check once per
885 * `fifo_expire' interval. Otherwise a large number of expired requests 885 * `fifo_expire' interval. Otherwise a large number of expired requests
886 * would create a hopeless seekstorm. 886 * would create a hopeless seekstorm.
@@ -1097,7 +1097,8 @@ dispatch_writes:
1097 ad->batch_data_dir = REQ_ASYNC; 1097 ad->batch_data_dir = REQ_ASYNC;
1098 ad->current_write_count = ad->write_batch_count; 1098 ad->current_write_count = ad->write_batch_count;
1099 ad->write_batch_idled = 0; 1099 ad->write_batch_idled = 0;
1100 rq = ad->next_rq[ad->batch_data_dir]; 1100 rq = rq_entry_fifo(ad->fifo_list[REQ_ASYNC].next);
1101 ad->last_check_fifo[REQ_ASYNC] = jiffies;
1101 goto dispatch_request; 1102 goto dispatch_request;
1102 } 1103 }
1103 1104
@@ -1159,7 +1160,7 @@ static void as_add_request(struct request_queue *q, struct request *rq)
1159 as_add_rq_rb(ad, rq); 1160 as_add_rq_rb(ad, rq);
1160 1161
1161 /* 1162 /*
1162 * set expire time (only used for reads) and add to fifo list 1163 * set expire time and add to fifo list
1163 */ 1164 */
1164 rq_set_fifo_time(rq, jiffies + ad->fifo_expire[data_dir]); 1165 rq_set_fifo_time(rq, jiffies + ad->fifo_expire[data_dir]);
1165 list_add_tail(&rq->queuelist, &ad->fifo_list[data_dir]); 1166 list_add_tail(&rq->queuelist, &ad->fifo_list[data_dir]);
@@ -1463,7 +1464,9 @@ static struct elevator_type iosched_as = {
1463 1464
1464static int __init as_init(void) 1465static int __init as_init(void)
1465{ 1466{
1466 return elv_register(&iosched_as); 1467 elv_register(&iosched_as);
1468
1469 return 0;
1467} 1470}
1468 1471
1469static void __exit as_exit(void) 1472static void __exit as_exit(void)