Re: [PATCH v11 02/16] xfs: only call xfs_setsize_buftarg once per buffer target

John Garry
2025-05-05T14:49:00Z

On 05/05/2025 15:22, Darrick J. Wong wrote:
>>> Yes. Or in fact just folding it into xfs_alloc_buftarg, which might
>>> be even simpler.
>> Yes, that was my next question..
>>
>>> While you're at it adding a command why we are doing
>>> the sync would also be really useful, and having it in just one place
>>> helps with that.
>> ok, there was such comment in xfs_preflush_devices().
>>
>> @Darrick, please comment on whether happy with changes discussed.
> I put the sync_blockdev calls in a separate function so that the
> EIO/ENOSPC/whatever errors that come from the block device sync don't
> get morphed into ENOMEM by xfs_alloc_buftarg before being passed up. I
> suppose we could make that function return an ERR_PTR, but I was trying
> to avoid making even more changes at the last minute, again.

It seems simpler to just have the individual sync_blockdev() calls from
xfs_alloc_buftarg(), rather than adding ERR_PTR() et al handling in both
xfs_alloc_buftarg() and xfs_open_devices().