diff --git a/fs/ext4/fast_commit.c b/fs/ext4/fast_commit.c index 3ee43fd6d5aa7056e3b74ba0e9e152ad61dc0d53..8d43058386c3037f0525b85bda4c5d14d775c6b1 100644 --- a/fs/ext4/fast_commit.c +++ b/fs/ext4/fast_commit.c @@ -1616,8 +1616,10 @@ static int ext4_fc_replay_add_range(struct super_block *sb, if (ret == 0) { /* Range is not mapped */ path = ext4_find_extent(inode, cur, NULL, 0); - if (!path) - continue; + if (IS_ERR(path)) { + iput(inode); + return 0; + } memset(&newex, 0, sizeof(newex)); newex.ee_block = cpu_to_le32(cur); ext4_ext_store_pblock(