From: Joe Thornber Date: Fri, 20 Feb 2015 13:01:22 +0000 (+0000) Subject: dm cache policy mq: remove queue_shift_down() X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=c74ffc5c63b0b2753bedd49bdc1196d570f66803;p=openwrt%2Fstaging%2Fblogic.git dm cache policy mq: remove queue_shift_down() queue_shift_down() didn't adjust the hit_counts to the new levels, so it just had the effect of scrambling levels. Signed-off-by: Joe Thornber Signed-off-by: Mike Snitzer --- diff --git a/drivers/md/dm-cache-policy-mq.c b/drivers/md/dm-cache-policy-mq.c index ca05d69191e8..3c86b5efe78f 100644 --- a/drivers/md/dm-cache-policy-mq.c +++ b/drivers/md/dm-cache-policy-mq.c @@ -159,18 +159,6 @@ static void queue_remove(struct queue *q, struct list_head *elt) list_del(elt); } -/* - * Shifts all regions down one level. This has no effect on the order of - * the queue. - */ -static void queue_shift_down(struct queue *q) -{ - unsigned level; - - for (level = 1; level < NR_QUEUE_LEVELS; level++) - list_splice_init(q->qs + level, q->qs + level - 1); -} - /* * Gives us the oldest entry of the lowest popoulated level. If the first * level is emptied then we shift down one level. @@ -193,10 +181,6 @@ static struct list_head *queue_pop(struct queue *q) if (r) { q->nr_elts--; list_del(r); - - /* have we just emptied the bottom level? */ - if (list_empty(q->qs)) - queue_shift_down(q); } return r;