xfs
[Top] [All Lists]

[PATCH 3/3] xfsprogs: fix missing error check in xfs_rtfree_range in lib

To: xfs@xxxxxxxxxxx
Subject: [PATCH 3/3] xfsprogs: fix missing error check in xfs_rtfree_range in libxfs
From: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Thu, 14 Jan 2010 19:43:51 +1100
In-reply-to: <1263458631-21084-1-git-send-email-david@xxxxxxxxxxxxx>
References: <1263458631-21084-1-git-send-email-david@xxxxxxxxxxxxx>
When xfs_rtfind_forw() returns an error, the block is returned
uninitialised.  xfs_rtfree_range() is not checking the error return,
so could be using an uninitialised block number for modifying bitmap
summary info.

Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>
---
 libxfs/xfs_rtalloc.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/libxfs/xfs_rtalloc.c b/libxfs/xfs_rtalloc.c
index 6c3da52..4fbdaa9 100644
--- a/libxfs/xfs_rtalloc.c
+++ b/libxfs/xfs_rtalloc.c
@@ -466,6 +466,8 @@ xfs_rtfree_range(
         */
        error = xfs_rtfind_forw(mp, tp, end, mp->m_sb.sb_rextents - 1,
                &postblock);
+       if (error)
+               return error;
        /*
         * If there are blocks not being freed at the front of the
         * old extent, add summary data for them to be allocated.
-- 
1.6.5

<Prev in Thread] Current Thread [Next in Thread>