[XFS] This fix prevents bulkstat from spinning in an infinite loop.
authorLachlan McIlroy <lachlan@sgi.com>
Fri, 12 Oct 2007 01:12:20 +0000 (11:12 +1000)
committerTim Shimmin <tes@chook.melbourne.sgi.com>
Tue, 16 Oct 2007 04:21:56 +0000 (14:21 +1000)
commitc2cba57e83dd7d2dda4ec425998b536669632c82
tree89ae704e5306d9b8eecdf13abba9eb335f2c82f4
parent3e5daf05a0c7cce36dc2db41933b14b36d2048dc
[XFS] This fix prevents bulkstat from spinning in an infinite loop.

Here 'agino' increments through the inodes in an allocation group. At the
end of the innermost 'for' loop it will hold the value of the next inode
to look at (ie the first inode in the next cluster/chunk). Assigning
'lastino' to 'agino' resets it to the last inode in the last inode cluster
we just looked at. This causes us to look up the very same cluster and
examine all the inodes all over again, and again, and again...

We also want to set 'lastino' for the cases when we're not interested in
the inode so that the next call to bulkstat won't re-examine the same
uninteresting inodes.

SGI-PV: 971064
SGI-Modid: xfs-linux-melb:xfs-kern:29840a

Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
Signed-off-by: David Chinner <dgc@sgi.com>
Signed-off-by: Tim Shimmin <tes@sgi.com>
fs/xfs/xfs_itable.c