]> err.no Git - linux-2.6/commitdiff
[XFS] Fix realtime subvolume expansion, a porting bug b0rked it. Coverity
authorEric Sesterhenn <snakebyte@gmx.de>
Tue, 27 Jun 2006 22:42:26 +0000 (08:42 +1000)
committerNathan Scott <nathans@sgi.com>
Tue, 27 Jun 2006 22:42:26 +0000 (08:42 +1000)
made me look at this code (bug id #344). We only return with
XFS_ERROR(EINVAL) if mp->m_rtdev_targp is valid and pass it otherwise to
xfs_read_buf() where some function calls later it gets dereferenced by an
assert.

SGI-PV: 954266
SGI-Modid: xfs-linux-melb:xfs-kern:26363a

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Nathan Scott <nathans@sgi.com>
fs/xfs/xfs_rtalloc.c

index 0c1e42b037efe63058819f275e20b0fd7cf9186b..5a0b678956e0e3ca616efb76ffb9d827f6d159fa 100644 (file)
@@ -1929,7 +1929,7 @@ xfs_growfs_rt(
        /*
         * Initial error checking.
         */
-       if (mp->m_rtdev_targp || mp->m_rbmip == NULL ||
+       if (mp->m_rtdev_targp == NULL || mp->m_rbmip == NULL ||
            (nrblocks = in->newblocks) <= sbp->sb_rblocks ||
            (sbp->sb_rblocks && (in->extsize != sbp->sb_rextsize)))
                return XFS_ERROR(EINVAL);