]> asedeno.scripts.mit.edu Git - linux.git/blobdiff - fs/xfs/scrub/repair.c
Merge tag 'xfs-5.6-merge-8' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux
[linux.git] / fs / xfs / scrub / repair.c
index b70a88bc975ebfa524b5a42f8a80b001d2a288aa..e489d7a8446af16a33a2cacbf43897322c6ceee0 100644 (file)
@@ -341,13 +341,17 @@ xrep_init_btblock(
        struct xfs_trans                *tp = sc->tp;
        struct xfs_mount                *mp = sc->mp;
        struct xfs_buf                  *bp;
+       int                             error;
 
        trace_xrep_init_btblock(mp, XFS_FSB_TO_AGNO(mp, fsb),
                        XFS_FSB_TO_AGBNO(mp, fsb), btnum);
 
        ASSERT(XFS_FSB_TO_AGNO(mp, fsb) == sc->sa.agno);
-       bp = xfs_trans_get_buf(tp, mp->m_ddev_targp, XFS_FSB_TO_DADDR(mp, fsb),
-                       XFS_FSB_TO_BB(mp, 1), 0);
+       error = xfs_trans_get_buf(tp, mp->m_ddev_targp,
+                       XFS_FSB_TO_DADDR(mp, fsb), XFS_FSB_TO_BB(mp, 1), 0,
+                       &bp);
+       if (error)
+               return error;
        xfs_buf_zero(bp, 0, BBTOB(bp->b_length));
        xfs_btree_init_block(mp, bp, btnum, 0, 0, sc->sa.agno);
        xfs_trans_buf_set_type(tp, bp, XFS_BLFT_BTREE_BUF);
@@ -542,8 +546,6 @@ xrep_reap_block(
                error = xfs_alloc_read_agf(sc->mp, sc->tp, agno, 0, &agf_bp);
                if (error)
                        return error;
-               if (!agf_bp)
-                       return -ENOMEM;
        } else {
                agf_bp = sc->sa.agf_bp;
        }