• Qu Wenruo's avatar
    btrfs: remove new_inline argument from btrfs_extent_item_to_extent_map() · 280f15cb
    Qu Wenruo authored
    The argument @new_inline changes the following members of extent_map:
    
    - em->compress_type
    - EXTENT_FLAG_COMPRESSED of em->flags
    
    However neither members makes a difference for inline extents:
    
    - Inline extent read never use above em members
    
      As inside btrfs_get_extent() we directly use the file extent item to
      do the read.
    
    - Inline extents are never to be split
    
      Thus code really needs em->compress_type or that flag will never be
      executed on inlined extents.
      (btrfs_drop_extent_cache() would be one example)
    
    - Fiemap no longer relies on extent maps
    
      Recent fiemap optimization makes fiemap to search subvolume tree
      directly, without using any extent map at all.
    
      Thus those members make no difference for inline extents any more.
    
    Furthermore such exception without much explanation is really a source
    of confusion.
    
    Thus this patch will completely remove the argument, and always set the
    involved members, unifying the behavior.
    Signed-off-by: default avatarQu Wenruo <wqu@suse.com>
    Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
    280f15cb
file-item.h 1.46 KB