On Fri, Oct 30, 2020 at 10:51:07PM +0900, Naohiro Aota wrote: > This series adds zoned block device support to btrfs. > Changes from v8: > - Direct-IO path now follow several hardware restrictions (other than > max_zone_append_size) by using ZONE_APPEND support of iomap > - introduces union of fs_info->zone_size and fs_info->zoned [Johannes] > - and use btrfs_is_zoned(fs_info) in place of btrfs_fs_incompat(fs_info, > ZONED) > - print if zoned is enabled or not when printing module info [Johannes] > - drop patch of disabling inode_cache on ZONED > - moved for_teelog flag to a proper location [Johannes] > - Code style fixes [Johannes] > - Add comment about adding physical layer things to ordered extent > structure > - Pass file_offset explicitly to extract_ordered_extent() instead of > determining it from bio > - Bug fixes > - write out fsync region so that the logical address of ordered extents > and checksums are properly finalized > - free zone_info at umount time > - fix superblock log handling when entering zones[1] in the first time > - fixes double free of log-tree roots [Johannes] > - Drop erroneous ASSERT in do_allocation_zoned() As discussed, patches 1-10 are preparatory and can be added to misc-next but there are still issues regarding coding style and messages. I'll reply to individual patches as well, list below. They're not the most useful comments regarding functionality but we won't have much chance to fix them later and we want to focus on the hard parts. * all comments start with uppercase, unless it's an identifier * error messages * don't start with uppercase (because there's a prefix already) * wording and style needs to be unified * new locks that are nested in existing locks need to documented * somewhere (treelog_bg_lock) * missing { } in if/else if/else blocks * newlines between function definitions