Re: [PATCH 09/13] iomap: don't chain bios

Zhang Yi
2023-11-27T12:53:27Z

Hi, Christoph.

On 2023/11/26 20:47, Christoph Hellwig wrote:
> Back in the days when a single bio could only be filled to the hardware
> limits, and we scheduled a work item for each bio completion, chaining
> multiple bios for a single ioend made a lot of sense to reduce the number
> of completions. But these days bios can be filled until we reach the
> number of vectors or total size limit, which means we can always fit at
> least 1 megabyte worth of data in the worst case, but usually a lot more
> due to large folios. The only thing bio chaining is buying us now is
> to reduce the size of the allocation from an ioend with an embedded bio
> into a plain bio, which is a 52 bytes differences on 64-bit systems.
>
> This is not worth the added complexity, so remove the bio chaining and
> only use the bio embedded into the ioend. This will help to simplify
> further changes to the iomap writeback code.
>
> Signed-off-by: Christoph Hellwig <hch@lst.de>

A nice cleanup! I'm just a little curious about the writeback performance
impact of this patch. Do you have any actual test data on xfs?

Thanks,
Yi.