All of lore.kernel.org
 help / color / mirror / Atom feed
From: Leah Rumancik <leah.rumancik@gmail.com>
To: linux-xfs@vger.kernel.org
Cc: Brian Foster <bfoster@redhat.com>,
	Dave Chinner <dchinner@redhat.com>,
	"Darrick J . Wong" <djwong@kernel.org>,
	Leah Rumancik <leah.rumancik@gmail.com>
Subject: [PATCH 5.15 CANDIDATE 2/9] xfs: fold perag loop iteration logic into helper function
Date: Mon, 18 Jul 2022 13:29:52 -0700	[thread overview]
Message-ID: <20220718202959.1611129-3-leah.rumancik@gmail.com> (raw)
In-Reply-To: <20220718202959.1611129-1-leah.rumancik@gmail.com>

From: Brian Foster <bfoster@redhat.com>

[ Upstream commit bf2307b195135ed9c95eebb38920d8bd41843092 ]

Fold the loop iteration logic into a helper in preparation for
further fixups. No functional change in this patch.

[backport: dependency for f1788b5e5ee25bedf00bb4d25f82b93820d61189]

Signed-off-by: Brian Foster <bfoster@redhat.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Signed-off-by: Leah Rumancik <leah.rumancik@gmail.com>
---
 fs/xfs/libxfs/xfs_ag.h | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/fs/xfs/libxfs/xfs_ag.h b/fs/xfs/libxfs/xfs_ag.h
index 4c6f9045baca..ddb89e10b6ea 100644
--- a/fs/xfs/libxfs/xfs_ag.h
+++ b/fs/xfs/libxfs/xfs_ag.h
@@ -124,12 +124,22 @@ void xfs_perag_put(struct xfs_perag *pag);
  * for_each_perag_from() because they terminate at sb_agcount where there are
  * no perag structures in tree beyond end_agno.
  */
+static inline struct xfs_perag *
+xfs_perag_next(
+	struct xfs_perag	*pag,
+	xfs_agnumber_t		*next_agno)
+{
+	struct xfs_mount	*mp = pag->pag_mount;
+
+	*next_agno = pag->pag_agno + 1;
+	xfs_perag_put(pag);
+	return xfs_perag_get(mp, *next_agno);
+}
+
 #define for_each_perag_range(mp, next_agno, end_agno, pag) \
 	for ((pag) = xfs_perag_get((mp), (next_agno)); \
 		(pag) != NULL && (next_agno) <= (end_agno); \
-		(next_agno) = (pag)->pag_agno + 1, \
-		xfs_perag_put(pag), \
-		(pag) = xfs_perag_get((mp), (next_agno)))
+		(pag) = xfs_perag_next((pag), &(next_agno)))
 
 #define for_each_perag_from(mp, next_agno, pag) \
 	for_each_perag_range((mp), (next_agno), (mp)->m_sb.sb_agcount, (pag))
-- 
2.37.0.170.g444d1eabd0-goog


  parent reply	other threads:[~2022-07-18 20:30 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-18 20:29 [PATCH 5.15 CANDIDATE 0/9] xfs stable candidate patches for 5.15.y (part 3) Leah Rumancik
2022-07-18 20:29 ` [PATCH 5.15 CANDIDATE 1/9] xfs: fix maxlevels comparisons in the btree staging code Leah Rumancik
2022-07-18 20:29 ` Leah Rumancik [this message]
2022-07-18 20:29 ` [PATCH 5.15 CANDIDATE 3/9] xfs: rename the next_agno perag iteration variable Leah Rumancik
2022-07-18 20:29 ` [PATCH 5.15 CANDIDATE 4/9] xfs: terminate perag iteration reliably on agcount Leah Rumancik
2022-07-18 20:29 ` [PATCH 5.15 CANDIDATE 5/9] xfs: fix perag reference leak on iteration race with growfs Leah Rumancik
2022-07-18 20:29 ` [PATCH 5.15 CANDIDATE 6/9] xfs: fix incorrect decoding in xchk_btree_cur_fsbno Leah Rumancik
2022-07-18 20:29 ` [PATCH 5.15 CANDIDATE 7/9] xfs: fix quotaoff mutex usage now that we don't support disabling it Leah Rumancik
2022-07-18 20:29 ` [PATCH 5.15 CANDIDATE 8/9] xfs: fix a bug in the online fsck directory leaf1 bestcount check Leah Rumancik
2022-07-18 20:29 ` [PATCH 5.15 CANDIDATE 9/9] xfs: prevent a WARN_ONCE() in xfs_ioc_attr_list() Leah Rumancik
2022-07-18 21:58 ` [PATCH 5.15 CANDIDATE 0/9] xfs stable candidate patches for 5.15.y (part 3) Darrick J. Wong
2022-07-19  8:44   ` Amir Goldstein
2022-07-19 14:44     ` Darrick J. Wong
2022-07-20 18:11       ` Leah Rumancik
2022-07-20 21:26         ` Darrick J. Wong

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220718202959.1611129-3-leah.rumancik@gmail.com \
    --to=leah.rumancik@gmail.com \
    --cc=bfoster@redhat.com \
    --cc=dchinner@redhat.com \
    --cc=djwong@kernel.org \
    --cc=linux-xfs@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.