• Jan Kara's avatar
    ext4: avoid split extents for DAX writes · 96f8ba3d
    Jan Kara authored
    Currently mapping of blocks for DAX writes happen with
    EXT4_GET_BLOCKS_PRE_IO flag set. That has a result that each
    ext4_map_blocks() call creates a separate written extent, although it
    could be merged to the neighboring extents in the extent tree.  The
    reason for using this flag is that in case the extent is unwritten, we
    need to convert it to written one and zero it out. However this "convert
    mapped range to written" operation is already implemented by
    ext4_map_blocks() for the case of data writes into unwritten extent. So
    just use flags for that mode of operation, simplify the code, and avoid
    unnecessary split extents.
    Signed-off-by: default avatarJan Kara <jack@suse.cz>
    Signed-off-by: default avatarTheodore Ts'o <tytso@mit.edu>
    96f8ba3d
inode.c 173 KB