[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20240402035502.GC1189142@mit.edu>
Date: Mon, 1 Apr 2024 23:55:02 -0400
From: "Theodore Ts'o" <tytso@....edu>
To: Li zeming <zeming@...china.com>
Cc: adilger.kernel@...ger.ca, linux-ext4@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] ext4: extents: Remove unnecessary ‘NULL’ values from path
On Tue, Apr 02, 2024 at 10:41:40AM +0800, Li zeming wrote:
> path is assigned first, so it does not need to initialize the
> assignment.
That's technically true, but the compiler is perfectly capable of
optimizing it out. So it's harmless, and removing it does make the
code a bit more fragile, since it needs to be set so that the cleanup
code doesn't accidentally dereference an uninitialized pointer:
out:
up_read(&ei->i_data_sem);
ext4_free_ext_path(path);
return ret;
So if later on, we add code which does a "goto out" on an error,
before path gets initialized, that would be bad. So removing the
"unnecessary" set has no upside, and it has a potential disadvantage.
- Ted
Powered by blists - more mailing lists