aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ext4
diff options
context:
space:
mode:
Diffstat (limited to 'fs/ext4')
-rw-r--r--fs/ext4/extents.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c
index e363f21b091b..5f243da8ff1d 100644
--- a/fs/ext4/extents.c
+++ b/fs/ext4/extents.c
@@ -2818,8 +2818,8 @@ static int ext4_ext_convert_to_initialized(handle_t *handle,
2818 (EXT4_EXT_MAY_ZEROOUT & split_flag)) { 2818 (EXT4_EXT_MAY_ZEROOUT & split_flag)) {
2819 /* case 3 */ 2819 /* case 3 */
2820 zero_ex.ee_block = 2820 zero_ex.ee_block =
2821 cpu_to_le32(map->m_lblk + map->m_len); 2821 cpu_to_le32(map->m_lblk);
2822 zero_ex.ee_len = cpu_to_le16(allocated - map->m_len); 2822 zero_ex.ee_len = cpu_to_le16(allocated);
2823 ext4_ext_store_pblock(&zero_ex, 2823 ext4_ext_store_pblock(&zero_ex,
2824 ext4_ext_pblock(ex) + map->m_lblk - ee_block); 2824 ext4_ext_pblock(ex) + map->m_lblk - ee_block);
2825 err = ext4_ext_zeroout(inode, &zero_ex); 2825 err = ext4_ext_zeroout(inode, &zero_ex);
@@ -2842,10 +2842,9 @@ static int ext4_ext_convert_to_initialized(handle_t *handle,
2842 goto out; 2842 goto out;
2843 } 2843 }
2844 2844
2845 allocated = map->m_lblk - ee_block + map->m_len;
2846
2847 split_map.m_lblk = ee_block; 2845 split_map.m_lblk = ee_block;
2848 split_map.m_len = allocated; 2846 split_map.m_len = map->m_lblk - ee_block + map->m_len;
2847 allocated = map->m_len;
2849 } 2848 }
2850 } 2849 }
2851 2850