]> www.infradead.org Git - users/hch/xfsprogs.git/commitdiff
xfs: fix incorrect test in xfs_alloc_ag_vextent_lastblock
authorDarrick J. Wong <darrick.wong@oracle.com>
Fri, 1 May 2020 21:37:09 +0000 (17:37 -0400)
committerEric Sandeen <sandeen@redhat.com>
Fri, 1 May 2020 21:37:09 +0000 (17:37 -0400)
Source kernel commit: 77ca1eed5a7d2bf0905562eb1a15aac76bc19fe4

When I lifted the code in xfs_alloc_ag_vextent_lastblock out of a loop,
I forgot to convert all the accesses to len to be pointer dereferences.

Coverity-id: 1457918
Fixes: 5113f8ec3753ed ("xfs: clean up weird while loop in xfs_alloc_ag_vextent_near")
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Brian Foster <bfoster@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
libxfs/xfs_alloc.c

index 841b030509d32396a912f5dedbbeb6f528f8f8ef..fee4039ca1829bc22198b4b67da0cd40f026aa3a 100644 (file)
@@ -1510,7 +1510,7 @@ xfs_alloc_ag_vextent_lastblock(
         * maxlen, go to the start of this block, and skip all those smaller
         * than minlen.
         */
-       if (len || args->alignment > 1) {
+       if (*len || args->alignment > 1) {
                acur->cnt->bc_ptrs[0] = 1;
                do {
                        error = xfs_alloc_get_rec(acur->cnt, bno, len, &i);