on 8/16/2023 11:00 AM, Theodore Ts'o wrote: > On Thu, Jun 29, 2023 at 08:00:34PM +0800, Kemeng Shi wrote: >> We return error in "ret", so collect previous error in "ret" instead >> of "err" or previous error will be ignored. >> >> Signed-off-by: Kemeng Shi <shikemeng@xxxxxxxxxxxxxxx> >> --- >> fs/ext4/resize.c | 4 ++-- >> 1 file changed, 2 insertions(+), 2 deletions(-) >> >> diff --git a/fs/ext4/resize.c b/fs/ext4/resize.c >> index 7cbc695b7005..0b3d8c808de1 100644 >> --- a/fs/ext4/resize.c >> +++ b/fs/ext4/resize.c >> @@ -1984,8 +1984,8 @@ static int ext4_convert_meta_bg(struct super_block *sb, struct inode *inode) >> >> errout: >> ret = ext4_journal_stop(handle); >> - if (!err) >> - err = ret; >> + if (!ret) >> + ret = err; >> return ret; > > If there is a previous error in "err", I think we would want to > prioritize returning that error, as opposed to the potential error > from ext4_journal_stop(). So how about this instead? > > errout: > ret = ext4_journal_stop(handle); > if (!err) > ret = err; > return ret; > I think you mean: errout: ret = ext4_journal_stop(handle); if (*err*) ret = err; return ret; And I will fix in this way if I don't get wrong. > > - Ted >