ext4: Drop special handling of journalled data from extent shifting operations
Now that filemap_write_and_wait() makes sure pages with journalled data are safely on disk, ext4_collapse_range() and ext4_insert_range() do not need special handling of journalled data. Signed-off-by: Jan Kara <jack@suse.cz> Link: https://lore.kernel.org/r/20230329154950.19720-7-jack@suse.cz Signed-off-by: Theodore Ts'o <tytso@mit.edu>
This commit is contained in:
parent
e360c6ed72
commit
c000dfec7e
|
@ -5290,13 +5290,6 @@ static int ext4_collapse_range(struct file *file, loff_t offset, loff_t len)
|
||||||
punch_start = offset >> EXT4_BLOCK_SIZE_BITS(sb);
|
punch_start = offset >> EXT4_BLOCK_SIZE_BITS(sb);
|
||||||
punch_stop = (offset + len) >> EXT4_BLOCK_SIZE_BITS(sb);
|
punch_stop = (offset + len) >> EXT4_BLOCK_SIZE_BITS(sb);
|
||||||
|
|
||||||
/* Call ext4_force_commit to flush all data in case of data=journal. */
|
|
||||||
if (ext4_should_journal_data(inode)) {
|
|
||||||
ret = ext4_force_commit(inode->i_sb);
|
|
||||||
if (ret)
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
inode_lock(inode);
|
inode_lock(inode);
|
||||||
/*
|
/*
|
||||||
* There is no need to overlap collapse range with EOF, in which case
|
* There is no need to overlap collapse range with EOF, in which case
|
||||||
|
@ -5443,13 +5436,6 @@ static int ext4_insert_range(struct file *file, loff_t offset, loff_t len)
|
||||||
offset_lblk = offset >> EXT4_BLOCK_SIZE_BITS(sb);
|
offset_lblk = offset >> EXT4_BLOCK_SIZE_BITS(sb);
|
||||||
len_lblk = len >> EXT4_BLOCK_SIZE_BITS(sb);
|
len_lblk = len >> EXT4_BLOCK_SIZE_BITS(sb);
|
||||||
|
|
||||||
/* Call ext4_force_commit to flush all data in case of data=journal */
|
|
||||||
if (ext4_should_journal_data(inode)) {
|
|
||||||
ret = ext4_force_commit(inode->i_sb);
|
|
||||||
if (ret)
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
inode_lock(inode);
|
inode_lock(inode);
|
||||||
/* Currently just for extent based files */
|
/* Currently just for extent based files */
|
||||||
if (!ext4_test_inode_flag(inode, EXT4_INODE_EXTENTS)) {
|
if (!ext4_test_inode_flag(inode, EXT4_INODE_EXTENTS)) {
|
||||||
|
|
Loading…
Reference in New Issue