On 2025/03/21 13:52, Benjamin Marzinski wrote:
> On Fri, Mar 21, 2025 at 08:18:16AM +0100, Christoph Hellwig wrote:
>> Add support for zoned device by passing through report_zoned to the
>> underlying read device.
>>
>> This is required to make enable xfstests xfs/311 on zoned devices.
> 
> On suspend, delay_presuspend() stops delaying and it doesn't guarantee
> that new bios coming in will always be submitted after the delayed bios
> it is flushing. That can mess things up for zoned devices. I didn't
> check if that matters for the specific test. Setting
> 
> ti->emulate_zone_append = true;
> 
> would enforce write ordering, at the expense of adding a whole other
> layer of delays to zoned dm-delay devices. Since this isn't really
> useful outside of testing, I think that could be acceptable if necessary
> (it would require us to support table reloads of zoned devices with
> emulated zone append, since tests often want to change the delay).
> However it would probably be better to see if we can just make dm-delay
> preserve write ordering during a suspend.

delay_presuspend() calls flush_delayed_bios() with flush_all == true. So all
BIOs will be flushed in the order they are queued in the delay list, which as
far as I can tell is the order in which the user of dm-delay issued the BIOs. So
for writes, the order is preserved as far as I can tell.

-- 
Damien Le Moal
Western Digital Research

Reply via email to