[<prev] [next>] [day] [month] [year] [list]
Message-ID: <57b197f2.440d.1896e5d2c48.Coremail.zbsdta@126.com>
Date: Wed, 19 Jul 2023 21:35:47 +0800 (CST)
From: "Zhang Bo" <zbsdta@....com>
To: linux-kernel@...r.kernel.org, linux-block@...r.kernel.org
Cc: paolo.valente@...more.it, axboe@...nel.dk
Subject: bfq io scheduler fifo_expire_sync have no function
In bfq_check_fifo(...) function, bfq_bfqq_fifo_expire(bfqq) is checked at first, and then bfq_mark_bfqq_fifo_expire(bfqq) later.
I think bfq_check_fifo return NULL because of bfq_bfqq_fifo_expire(bfqq) return true. So expired request is not dispatch.
Could any one explain this problem?
static struct request *bfq_check_fifo(struct bfq_queue *bfqq,
struct request *last)
{
struct request *rq;
if (bfq_bfqq_fifo_expire(bfqq)) {
return NULL;
}
bfq_mark_bfqq_fifo_expire(bfqq);
...................
}
Powered by blists - more mailing lists