• Paolo Valente's avatar
    block, bfq: remove wrong check in bfq_requests_merged · 8abfa4d6
    Paolo Valente authored
    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: default avatarFilippo Muzzini <filippo.muzzini@outlook.it>
    Signed-off-by: default avatarPaolo Valente <paolo.valente@linaro.org>
    Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
    8abfa4d6
bfq-iosched.c 185 KB