Просмотр исходного кода

xfs: Fix uninitialized variable in xfs_reflink_reserve_cow_range()

with gcc 4.1.2:

    fs/xfs/xfs_reflink.c: In function xfs_reflink_reserve_cow_range:
    fs/xfs/xfs_reflink.c:327: warning: error may be used uninitialized in this function

Indeed, if "count" is zero, the function will return an uninitialized
error value.

While "count" is unlikely to be zero, this function is called through
the public iomap API. Hence fix this by preinitializing error to zero.

Fixes: 2a06705cd5954030 ("xfs: create delalloc extents in CoW fork")
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
Geert Uytterhoeven 9 лет назад
Родитель
Сommit
1be7f9be0e
1 измененных файлов с 1 добавлено и 1 удалено
  1. 1 1
      fs/xfs/xfs_reflink.c

+ 1 - 1
fs/xfs/xfs_reflink.c

@@ -324,7 +324,7 @@ xfs_reflink_reserve_cow_range(
 	struct xfs_mount	*mp = ip->i_mount;
 	struct xfs_mount	*mp = ip->i_mount;
 	xfs_fileoff_t		offset_fsb, end_fsb;
 	xfs_fileoff_t		offset_fsb, end_fsb;
 	bool			skipped = false;
 	bool			skipped = false;
-	int			error;
+	int			error = 0;
 
 
 	trace_xfs_reflink_reserve_cow_range(ip, offset, count);
 	trace_xfs_reflink_reserve_cow_range(ip, offset, count);