[PATCH 2/5] repair: fix some valgrind reported errors on i686
Christoph Hellwig
hch at infradead.org
Mon Oct 10 08:14:49 CDT 2011
On Mon, Oct 10, 2011 at 11:20:17AM +1100, Dave Chinner wrote:
> > Call me stupid, but I can't see how this could actually be a real
> > life issue. The first thing we do in the loop is to to write
> > to fsbno in btree_find. I'm fine adding this to shut up warnins,
> > but I can't see a real issue.
>
> If btree_find() fails to find the key being looked up, it returns
> without having initialised fsbno.
Indeed. The normal pattern for btree_find seems to be:
obj = btree_find(tree, key, &key_ptr);
if (!obj)
return;
which makes this fine.
The code in pf_batch_read effectively boils down to that due to
the
while (bplist[num] && num < MAX_BUFS && fsbno < max_fsbno) {
loop which stops executing the first conditional that evaluated to
false. So I can't see how this actually ever had an affect, but I'm
fine with fixing the warnings.
Btw, did I mention that the while loop over the bplist is completely
non-intuitive?
More information about the xfs
mailing list