On Fri, Jun 07, 2019 at 10:10:19PM +0900, Naohiro Aota wrote: > Btrfs prioritize sync I/Os to be handled by async checksum worker earlier. > As a result, checksumming sync I/Os to larger logical extent address can > finish faster than checksumming non-sync I/Os to smaller logical extent > address. > > Since we have upper limit of number of checksum worker, it is possible that > sync I/Os to wait forever for non-starting checksum of I/Os for smaller > address. > > This situation can be reproduced by e.g. fstests btrfs/073. > > To avoid such disordering, disable sync IO prioritization for now. Note > that sync I/Os anyway must wait for I/Os to smaller address to finish. So, > actually prioritization have no benefit in HMZONED mode. > This stuff is going away once we finish the io.weight work anyway, I wouldn't worry about this. Thanks, Josef