xfs
[Top] [All Lists]

[PATCH 03/25] xfs: remove the nextents variable in xfs_bmapi

To: xfs@xxxxxxxxxxx
Subject: [PATCH 03/25] xfs: remove the nextents variable in xfs_bmapi
From: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date: Wed, 24 Aug 2011 02:04:31 -0400
References: <20110824060428.789245205@xxxxxxxxxxxxxxxxxxxxxx>
User-agent: quilt/0.48-1
Instead of using a local variable that needs to updated when we modify
the extent map just check ifp->if_bytes directly where we use it.

Signed-off-by: Christoph Hellwig <hch@xxxxxx>

Index: xfs/fs/xfs/xfs_bmap.c
===================================================================
--- xfs.orig/fs/xfs/xfs_bmap.c  2011-08-23 21:07:50.707607838 +0200
+++ xfs/fs/xfs/xfs_bmap.c       2011-08-23 21:07:51.327604480 +0200
@@ -4294,7 +4294,6 @@ xfs_bmapi(
        xfs_mount_t     *mp;            /* xfs mount structure */
        int             n;              /* current extent index */
        int             nallocs;        /* number of extents alloc'd */
-       xfs_extnum_t    nextents;       /* number of extents in file */
        xfs_fileoff_t   obno;           /* old block number (offset) */
        xfs_bmbt_irec_t prev;           /* previous file extent record */
        int             tmp_logflags;   /* temp flags holder */
@@ -4380,7 +4379,6 @@ xfs_bmapi(
                goto error0;
        ep = xfs_bmap_search_extents(ip, bno, whichfork, &eof, &lastx, &got,
                &prev);
-       nextents = ifp->if_bytes / (uint)sizeof(xfs_bmbt_rec_t);
        n = 0;
        end = bno + len;
        obno = bno;
@@ -4622,7 +4620,6 @@ xfs_bmapi(
                        if (error)
                                goto error0;
                        ep = xfs_iext_get_ext(ifp, lastx);
-                       nextents = ifp->if_bytes / (uint)sizeof(xfs_bmbt_rec_t);
                        xfs_bmbt_get_all(ep, &got);
                        ASSERT(got.br_startoff <= aoff);
                        ASSERT(got.br_startoff + got.br_blockcount >=
@@ -4723,7 +4720,6 @@ xfs_bmapi(
                        if (error)
                                goto error0;
                        ep = xfs_iext_get_ext(ifp, lastx);
-                       nextents = ifp->if_bytes / (uint)sizeof(xfs_bmbt_rec_t);
                        xfs_bmbt_get_all(ep, &got);
                        /*
                         * We may have combined previously unwritten
@@ -4781,7 +4777,7 @@ xfs_bmapi(
                 * Else go on to the next record.
                 */
                prev = got;
-               if (++lastx < nextents) {
+               if (++lastx < ifp->if_bytes / sizeof(xfs_bmbt_rec_t)) {
                        ep = xfs_iext_get_ext(ifp, lastx);
                        xfs_bmbt_get_all(ep, &got);
                } else {

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