On 02/02/2021 15:58, David Sterba wrote:
>> static int check_async_write(struct btrfs_fs_info *fs_info,
>>                           struct btrfs_inode *bi)
>>  {
>> +    if (btrfs_is_zoned(fs_info))
>> +            return 0;
> This check need to be after the other ones as zoned is a static per-fs
> status, while other others depend on either current state or system
> state (crypto implementation).
> 
>>      if (atomic_read(&bi->sync_writers))
>>              return 0;
>>      if (test_bit(BTRFS_FS_CSUM_IMPL_FAST, &fs_info->flags))

Can you explain the reasoning behind that rule? For a non-zoned FS this won't
make a huge difference to check fs_info->zoned and for a  zoned FS we're 
bailing out fast as we can't support async checksums.

Reply via email to