[RFC PATCH 20/18] xfs: drop compatibility minimum log size computations for reflink

Darrick J. Wong
2022-08-09T22:56:22Z

From: Darrick J. Wong <djwong@kernel.org>

Having established that we can reduce the minimum log size computation
for filesystems with parent pointers or any newer feature, we should
also drop the compat minlogsize code that we added when we reduced the
transaction reservation size for rmap and reflink.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
---
fs/xfs/libxfs/xfs_log_rlimit.c | 10 ++++++++++
1 file changed, 10 insertions(+)

diff --git a/fs/xfs/libxfs/xfs_log_rlimit.c b/fs/xfs/libxfs/xfs_log_rlimit.c
index cc4837b948b1..c6b098d12f65 100644
--- a/fs/xfs/libxfs/xfs_log_rlimit.c
+++ b/fs/xfs/libxfs/xfs_log_rlimit.c
@@ -91,6 +91,16 @@ xfs_log_calc_trans_resv_for_minlogblocks(
{
unsigned int rmap_maxlevels = mp->m_rmap_maxlevels;

+ /*
+ * Starting with the parent pointer feature, every new fs feature
+ * drops the oversized minimum log size computation introduced by the
+ * original reflink code.
+ */
+ if (xfs_has_parent_or_newer_feature(mp)) {
+ xfs_trans_resv_calc(mp, resv);
+ return;
+ }
+
/*
* In the early days of rmap+reflink, we always set the rmap maxlevels
* to 9 even if the AG was small enough that it would never grow to