diff options
author | Filippo Muzzini <filippo.muzzini@outlook.it> | 2018-05-31 15:23:13 +0200 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2018-05-31 08:48:32 -0600 |
commit | ac857e0d54c84edc1fdc578153f4f728c69c0e29 (patch) | |
tree | f175026634ac7f611c3a1212b3dffe892ffe244b /block | |
parent | 8abfa4d6fd1537a570d99c52e9a683b759c27a45 (diff) | |
download | linux-stable-ac857e0d54c84edc1fdc578153f4f728c69c0e29.tar.gz linux-stable-ac857e0d54c84edc1fdc578153f4f728c69c0e29.tar.bz2 linux-stable-ac857e0d54c84edc1fdc578153f4f728c69c0e29.zip |
block, bfq: remove the removal of 'next' rq in bfq_requests_merged
Since bfq_finish_request() is always called on the request 'next',
after bfq_requests_merged() is finished, and bfq_finish_request()
removes 'next' from its bfq_queue if needed, it isn't necessary to do
such a removal in advance in bfq_merged_requests().
This commit removes such a useless 'next' removal.
Signed-off-by: Filippo Muzzini <filippo.muzzini@outlook.it>
Signed-off-by: Paolo Valente <paolo.valente@linaro.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block')
-rw-r--r-- | block/bfq-iosched.c | 7 |
1 files changed, 0 insertions, 7 deletions
diff --git a/block/bfq-iosched.c b/block/bfq-iosched.c index aa32e56cb385..dd527bab57c2 100644 --- a/block/bfq-iosched.c +++ b/block/bfq-iosched.c @@ -1845,8 +1845,6 @@ static void bfq_request_merged(struct request_queue *q, struct request *req, * exploits this hook to address the following issue: if 'next' has a * fifo_time lower that rq, then the fifo_time of rq must be set to * the value of 'next', to not forget the greater age of 'next'. - * Moreover 'next' may be in a bfq_queue, in this case it must be - * removed. * * NOTE: in this function we assume that rq is in a bfq_queue, basing * on that rq is picked from the hash table q->elevator->hash, which, @@ -1881,11 +1879,6 @@ static void bfq_requests_merged(struct request_queue *q, struct request *rq, if (bfqq->next_rq == next) bfqq->next_rq = rq; - if (!RB_EMPTY_NODE(&next->rb_node)) { - bfq_remove_request(q, next); - bfqg_stats_update_io_remove(bfqq_group(bfqq), next->cmd_flags); - } - bfqg_stats_update_io_merged(bfqq_group(bfqq), next->cmd_flags); } |