block, bfq: remove wrong check in bfq_requests_merged
authorPaolo Valente <paolo.valente@linaro.org>
Thu, 31 May 2018 14:48:05 +0000 (08:48 -0600)
committerJens Axboe <axboe@kernel.dk>
Thu, 31 May 2018 14:48:05 +0000 (08:48 -0600)
commit8abfa4d6fd1537a570d99c52e9a683b759c27a45
tree9168c6fb860774105a29283bae366264fe03ab13
parenta12bffebc0c9d6a5851f062aaea3aa7c4adc6042
block, bfq: remove wrong check in bfq_requests_merged

The request rq passed to the function bfq_requests_merged is always in
a bfq_queue, so the check !RB_EMPTY_NODE(&rq->rb_node) at the
beginning of bfq_requests_merged always succeeds, and the control
flow systematically skips to the end of the function.  This implies
that the body of the function is never executed, i.e., the
repositioning of rq is never performed.

On the opposite end, a control is missing in the body of the function:
'next' must be removed only if it is inside a bfq_queue.

This commit removes the wrong check on rq, and adds the missing check
on 'next'. In addition, this commit adds comments on
bfq_requests_merged.

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>
block/bfq-iosched.c