diff options
author | Zhang Yi <yi.zhang@huawei.com> | 2024-08-13 15:34:48 +0300 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2024-09-02 22:26:14 +0300 |
commit | 15996a848564e40a3d030ec7e4603dddb9f425b6 (patch) | |
tree | db1472e721c529367160557428908cf1c32e8966 | |
parent | 6e124d5b4b02229f8aaa206b1952db31d1687523 (diff) | |
download | linux-15996a848564e40a3d030ec7e4603dddb9f425b6.tar.xz |
ext4: use ext4_map_query_blocks() in ext4_map_blocks()
The blocks map querying logic in ext4_map_blocks() are the same as
ext4_map_query_blocks(), so switch to directly use it.
Signed-off-by: Zhang Yi <yi.zhang@huawei.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Link: https://patch.msgid.link/20240813123452.2824659-9-yi.zhang@huaweicloud.com
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
-rw-r--r-- | fs/ext4/inode.c | 22 |
1 files changed, 1 insertions, 21 deletions
diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c index 72f2b6ce97c0..1fa59b0fc7f3 100644 --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c @@ -658,27 +658,7 @@ int ext4_map_blocks(handle_t *handle, struct inode *inode, * file system block. */ down_read(&EXT4_I(inode)->i_data_sem); - if (ext4_test_inode_flag(inode, EXT4_INODE_EXTENTS)) { - retval = ext4_ext_map_blocks(handle, inode, map, 0); - } else { - retval = ext4_ind_map_blocks(handle, inode, map, 0); - } - if (retval > 0) { - unsigned int status; - - if (unlikely(retval != map->m_len)) { - ext4_warning(inode->i_sb, - "ES len assertion failed for inode " - "%lu: retval %d != map->m_len %d", - inode->i_ino, retval, map->m_len); - WARN_ON(1); - } - - status = map->m_flags & EXT4_MAP_UNWRITTEN ? - EXTENT_STATUS_UNWRITTEN : EXTENT_STATUS_WRITTEN; - ext4_es_insert_extent(inode, map->m_lblk, map->m_len, - map->m_pblk, status, 0); - } + retval = ext4_map_query_blocks(handle, inode, map); up_read((&EXT4_I(inode)->i_data_sem)); found: |