Re: [PATCH] xfs: don't allow log recover IO to be throttled

From: Jinliang Zheng
Date: Sun Mar 09 2025 - 08:41:46 EST


On Tue, 4 Mar 2025 07:45:44 +1100, Dave Chinner wrote:
> On Mon, Mar 03, 2025 at 07:23:01PM +0800, Jinliang Zheng wrote:
> > When recovering a large filesystem, avoid log recover IO being
> > throttled by rq_qos_throttle().
>
> Why?
>
> The only writes to the journal during recovery are to clear stale
> blocks - it's only a very small part of the IO that journal recovery
> typically does. What problem happens when these writes are
> throttled?

Sorry for the late reply, I was struggling with my work. :-(

Recently, we encountered the problem of xfs log IO being throttled in
the Linux distribution version maintained by ourselves. To be more
precise, it was indirectly throttled by the IO issued by the LVM layer.
For details, see [1] please.

After this problem was solved, we naturally checked other related log
IO paths, hoping that they would not be throttled by wbt_wait(), that
is, we hoped that they would be marked with REQ_SYNC | REQ_IDLE.

For log recover IO, in the LVM scenario, we are not sure whether it
will be affected by IO on other LVs on the same PV. In addition, we
did not find any obvious side effects of this patch. An ounce of
prevention is worth a pound of cure, and we think it is more
appropriate to add REQ_IDLE here.

Of course, if there is really a reason not to consider being throttled,
please forgive me for disturbing you.

[1] https://lore.kernel.org/linux-xfs/20250220112014.3209940-1-alexjlzheng@xxxxxxxxxxx/

Thank you very much. :)
Jinliang Zheng

>
> -Dave.
> --
> Dave Chinner
> david@xxxxxxxxxxxxx