[PATCH 5.11 109/120] ext4: stop inode update before return

From: Greg Kroah-Hartman
Date: Mon Mar 22 2021 - 08:39:47 EST


From: Pan Bian <bianpan2016@xxxxxxx>

commit 512c15ef05d73a04f1aef18a3bc61a8bb516f323 upstream.

The inode update should be stopped before returing the error code.

Signed-off-by: Pan Bian <bianpan2016@xxxxxxx>
Link: https://lore.kernel.org/r/20210117085732.93788-1-bianpan2016@xxxxxxx
Fixes: 8016e29f4362 ("ext4: fast commit recovery path")
Cc: stable@xxxxxxxxxx
Reviewed-by: Harshad Shirwadkar <harshadshirwadkar@xxxxxxxxx>
Signed-off-by: Theodore Ts'o <tytso@xxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
---
fs/ext4/inode.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

--- a/fs/ext4/inode.c
+++ b/fs/ext4/inode.c
@@ -5389,8 +5389,10 @@ int ext4_setattr(struct dentry *dentry,
inode->i_gid = attr->ia_gid;
error = ext4_mark_inode_dirty(handle, inode);
ext4_journal_stop(handle);
- if (unlikely(error))
+ if (unlikely(error)) {
+ ext4_fc_stop_update(inode);
return error;
+ }
}

if (attr->ia_valid & ATTR_SIZE) {