[PATCH] xfs: Check error during inode btree iteration in xfs_bulkstat()
jie liu
jeff.u.liu at gmail.com
Wed Oct 22 05:29:48 CDT 2014
Looks good to me. Reviewed-by: Jie Liu <jeff.u.liu at gmail.com>
Cheers,
-Jeff
On Tue, Oct 21, 2014 at 10:31 PM, Jan Kara <jack at suse.cz> wrote:
> xfs_bulkstat() doesn't check error return from xfs_btree_increment(). In
> case of specific fs corruption that could result in xfs_bulkstat()
> entering an infinite loop because we would be looping over the same
> chunk over and over again. Fix the problem by checking the return value
> and terminating the loop properly.
>
> Coverity-id: 1231338
> Signed-off-by: Jan Kara <jack at suse.cz>
> ---
> fs/xfs/xfs_itable.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/fs/xfs/xfs_itable.c b/fs/xfs/xfs_itable.c
> index f1deb961a296..66d5c619517d 100644
> --- a/fs/xfs/xfs_itable.c
> +++ b/fs/xfs/xfs_itable.c
> @@ -474,6 +474,10 @@ xfs_bulkstat(
> */
> agino = r.ir_startino + XFS_INODES_PER_CHUNK;
> error = xfs_btree_increment(cur, 0, &tmp);
> + if (error) {
> + end_of_ag = 1;
> + break;
> + }
> cond_resched();
> }
> /*
> --
> 1.8.1.4
>
> _______________________________________________
> xfs mailing list
> xfs at oss.sgi.com
> http://oss.sgi.com/mailman/listinfo/xfs
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://oss.sgi.com/pipermail/xfs/attachments/20141022/52b5c2f0/attachment.html>
More information about the xfs
mailing list