From: Zheng Liu <wenqing.lz@xxxxxxxxxx> ext4_es_remove_extent returns ENOMEM only if we need to split an entry and insert a part into es tree. After applied this commit (e15f742c), we have retried to do this. So we don't need to do this again in ext4_ext_truncate(). Signed-off-by: Zheng Liu <wenqing.lz@xxxxxxxxxx> Cc: "Theodore Ts'o" <tytso@xxxxxxx> --- fs/ext4/extents.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c index a618738..4404297 100644 --- a/fs/ext4/extents.c +++ b/fs/ext4/extents.c @@ -4409,14 +4409,8 @@ void ext4_ext_truncate(handle_t *handle, struct inode *inode) last_block = (inode->i_size + sb->s_blocksize - 1) >> EXT4_BLOCK_SIZE_BITS(sb); -retry: err = ext4_es_remove_extent(inode, last_block, EXT_MAX_BLOCKS - last_block); - if (err == ENOMEM) { - cond_resched(); - congestion_wait(BLK_RW_ASYNC, HZ/50); - goto retry; - } if (err) { ext4_std_error(inode->i_sb, err); return; -- 1.7.9.7 -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html