[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20231128161905.GT2766956@frogsfrogsfrogs>
Date: Tue, 28 Nov 2023 08:19:05 -0800
From: "Darrick J. Wong" <djwong@...nel.org>
To: Christoph Hellwig <hch@...radead.org>
Cc: Jiachen Zhang <zhangjiachen.jaycee@...edance.com>,
Chandan Babu R <chandan.babu@...cle.com>,
Dave Chinner <dchinner@...hat.com>,
Allison Henderson <allison.henderson@...cle.com>,
Zhang Tianci <zhangtianci.1997@...edance.com>,
Brian Foster <bfoster@...hat.com>, Ben Myers <bpm@....com>,
linux-xfs@...r.kernel.org, linux-kernel@...r.kernel.org,
xieyongji@...edance.com, me@...x.top
Subject: Re: [PATCH 1/2] xfs: ensure tmp_logflags is initialized in
xfs_bmap_del_extent_real
On Tue, Nov 28, 2023 at 12:19:23AM -0800, Christoph Hellwig wrote:
> On Tue, Nov 28, 2023 at 01:32:01PM +0800, Jiachen Zhang wrote:
> > In the case of returning -ENOSPC, ensure tmp_logflags is initialized by 0.
> > Otherwise the caller __xfs_bunmapi will set uninitialized illegal
> > tmp_logflags value into xfs log, which might cause unpredictable error
> > in the log recovery procedure.
>
> This looks good:
>
> Reviewed-by: Christoph Hellwig <hch@....de>
>
> But I wonder if removing the local flags variable and always directly
> assigning to *logflagsp might be more robust in the long run.
Yes, I think it's better to eliminate opportunities for subtle logic
bombs by not open-coding variable aliasing. Perhaps this function
should set *logflagsp = 0 at the start of the function so that we don't
have to deal with uninitialized outparams, especially since the caller
uses it even on an error return.
--D
Powered by blists - more mailing lists