]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/commitdiff
xfs: create a helper to convert extlen to rtextlen
authorDarrick J. Wong <djwong@kernel.org>
Mon, 12 Feb 2024 14:20:20 +0000 (15:20 +0100)
committerCarlos Maiolino <cem@kernel.org>
Thu, 15 Feb 2024 11:56:43 +0000 (12:56 +0100)
Source kernel commit: 2c2b981b737a519907429f62148bbd9e40e01132

Create a helper to compute the realtime extent (xfs_rtxlen_t) from an
extent length (xfs_extlen_t) value.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Carlos Maiolino <cem@kernel.org>
libxfs/xfs_rtbitmap.h
libxfs/xfs_trans_resv.c

index b6a4c46bddc0a4df32f682e676c33dd898440c4f..e2a36fc157c4c465f4e1609f620ba8dc4a12fbb1 100644 (file)
@@ -31,6 +31,14 @@ xfs_extlen_to_rtxmod(
        return len % mp->m_sb.sb_rextsize;
 }
 
+static inline xfs_rtxlen_t
+xfs_extlen_to_rtxlen(
+       struct xfs_mount        *mp,
+       xfs_extlen_t            len)
+{
+       return len / mp->m_sb.sb_rextsize;
+}
+
 /*
  * Functions for walking free space rtextents in the realtime bitmap.
  */
index 04c444806fe1af43b1b7e078bf0ebf4c2e884791..53c190b7206510f003fa6d7f0aa5d2762c236908 100644 (file)
@@ -18,6 +18,7 @@
 #include "xfs_trans.h"
 #include "xfs_trans_space.h"
 #include "xfs_quota_defs.h"
+#include "xfs_rtbitmap.h"
 
 #define _ALLOC true
 #define _FREE  false
@@ -219,7 +220,7 @@ xfs_rtalloc_block_count(
        unsigned int            blksz = XFS_FSB_TO_B(mp, 1);
        unsigned int            rtbmp_bytes;
 
-       rtbmp_bytes = (XFS_MAX_BMBT_EXTLEN / mp->m_sb.sb_rextsize) / NBBY;
+       rtbmp_bytes = xfs_extlen_to_rtxlen(mp, XFS_MAX_BMBT_EXTLEN) / NBBY;
        return (howmany(rtbmp_bytes, blksz) + 1) * num_ops;
 }