diff options
author | Jens Axboe <axboe@suse.de> | 2006-07-19 08:56:28 -0400 |
---|---|---|
committer | Jens Axboe <axboe@nelson.home.kernel.dk> | 2006-09-30 14:29:40 -0400 |
commit | 981a79730d586335ef8f942c83bdf2b1de6d4e3d (patch) | |
tree | 0dec9ba389ed1fbfb8adb842f86a27e9be643559 | |
parent | 53b03744e5699832e6c5b04f2ec506d8b0c50c38 (diff) |
[PATCH] cfq-iosched: kill the empty_list
No point in having a place holder list just for empty queues, so remove
it. It's not used for anything other than to keep ->cfq_list busy.
Signed-off-by: Jens Axboe <axboe@suse.de>
-rw-r--r-- | block/cfq-iosched.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/block/cfq-iosched.c b/block/cfq-iosched.c index c6e649f3cae7..6fb1613d44d7 100644 --- a/block/cfq-iosched.c +++ b/block/cfq-iosched.c | |||
@@ -82,11 +82,6 @@ struct cfq_data { | |||
82 | unsigned int busy_queues; | 82 | unsigned int busy_queues; |
83 | 83 | ||
84 | /* | 84 | /* |
85 | * non-ordered list of empty cfqq's | ||
86 | */ | ||
87 | struct list_head empty_list; | ||
88 | |||
89 | /* | ||
90 | * cfqq lookup hash | 85 | * cfqq lookup hash |
91 | */ | 86 | */ |
92 | struct hlist_head *cfq_hash; | 87 | struct hlist_head *cfq_hash; |
@@ -136,7 +131,7 @@ struct cfq_queue { | |||
136 | struct hlist_node cfq_hash; | 131 | struct hlist_node cfq_hash; |
137 | /* hash key */ | 132 | /* hash key */ |
138 | unsigned int key; | 133 | unsigned int key; |
139 | /* on either rr or empty list of cfqd */ | 134 | /* member of the rr/busy/cur/idle cfqd list */ |
140 | struct list_head cfq_list; | 135 | struct list_head cfq_list; |
141 | /* sorted list of pending requests */ | 136 | /* sorted list of pending requests */ |
142 | struct rb_root sort_list; | 137 | struct rb_root sort_list; |
@@ -417,7 +412,7 @@ cfq_del_cfqq_rr(struct cfq_data *cfqd, struct cfq_queue *cfqq) | |||
417 | { | 412 | { |
418 | BUG_ON(!cfq_cfqq_on_rr(cfqq)); | 413 | BUG_ON(!cfq_cfqq_on_rr(cfqq)); |
419 | cfq_clear_cfqq_on_rr(cfqq); | 414 | cfq_clear_cfqq_on_rr(cfqq); |
420 | list_move(&cfqq->cfq_list, &cfqd->empty_list); | 415 | list_del_init(&cfqq->cfq_list); |
421 | 416 | ||
422 | BUG_ON(!cfqd->busy_queues); | 417 | BUG_ON(!cfqd->busy_queues); |
423 | cfqd->busy_queues--; | 418 | cfqd->busy_queues--; |
@@ -1959,7 +1954,6 @@ static void *cfq_init_queue(request_queue_t *q, elevator_t *e) | |||
1959 | INIT_LIST_HEAD(&cfqd->busy_rr); | 1954 | INIT_LIST_HEAD(&cfqd->busy_rr); |
1960 | INIT_LIST_HEAD(&cfqd->cur_rr); | 1955 | INIT_LIST_HEAD(&cfqd->cur_rr); |
1961 | INIT_LIST_HEAD(&cfqd->idle_rr); | 1956 | INIT_LIST_HEAD(&cfqd->idle_rr); |
1962 | INIT_LIST_HEAD(&cfqd->empty_list); | ||
1963 | INIT_LIST_HEAD(&cfqd->cic_list); | 1957 | INIT_LIST_HEAD(&cfqd->cic_list); |
1964 | 1958 | ||
1965 | cfqd->cfq_hash = kmalloc_node(sizeof(struct hlist_head) * CFQ_QHASH_ENTRIES, GFP_KERNEL, q->node); | 1959 | cfqd->cfq_hash = kmalloc_node(sizeof(struct hlist_head) * CFQ_QHASH_ENTRIES, GFP_KERNEL, q->node); |