xfs
[Top] [All Lists]

[PATCH 10/16] xfs: convert dir/attr btree threshold to xfs_da_geometry

To: xfs@xxxxxxxxxxx
Subject: [PATCH 10/16] xfs: convert dir/attr btree threshold to xfs_da_geometry
From: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Wed, 28 May 2014 16:04:37 +1000
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <1401257083-13433-1-git-send-email-david@xxxxxxxxxxxxx>
References: <1401257083-13433-1-git-send-email-david@xxxxxxxxxxxxx>
From: Dave Chinner <dchinner@xxxxxxxxxx>

Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>
Reviewed-by: Brian Foster <bfoster@xxxxxxxxxx>
---
 fs/xfs/xfs_attr_leaf.c | 2 +-
 fs/xfs/xfs_dir2.c      | 2 --
 fs/xfs/xfs_dir2_node.c | 2 +-
 fs/xfs/xfs_mount.h     | 2 --
 4 files changed, 2 insertions(+), 6 deletions(-)

diff --git a/fs/xfs/xfs_attr_leaf.c b/fs/xfs/xfs_attr_leaf.c
index 2c0fdc8..5be77b3 100644
--- a/fs/xfs/xfs_attr_leaf.c
+++ b/fs/xfs/xfs_attr_leaf.c
@@ -1949,7 +1949,7 @@ xfs_attr3_leaf_remove(
        tmp = ichdr.usedbytes + xfs_attr3_leaf_hdr_size(leaf) +
              ichdr.count * sizeof(xfs_attr_leaf_entry_t);
 
-       return tmp < mp->m_attr_magicpct; /* leaf is < 37% full */
+       return tmp < args->geo->magicpct; /* leaf is < 37% full */
 }
 
 /*
diff --git a/fs/xfs/xfs_dir2.c b/fs/xfs/xfs_dir2.c
index 99df2a2..4eabe51 100644
--- a/fs/xfs/xfs_dir2.c
+++ b/fs/xfs/xfs_dir2.c
@@ -146,9 +146,7 @@ xfs_da_mount(
 
        /* XXX: these are to be removed as code is converted to use geo */
        mp->m_dir_node_ents = mp->m_dir_geo->node_ents;
-       mp->m_dir_magicpct = mp->m_dir_geo->magicpct;
        mp->m_attr_node_ents = mp->m_attr_geo->node_ents;
-       mp->m_attr_magicpct = mp->m_attr_geo->magicpct;
        return 0;
 }
 
diff --git a/fs/xfs/xfs_dir2_node.c b/fs/xfs/xfs_dir2_node.c
index ef34c19..de5b2996 100644
--- a/fs/xfs/xfs_dir2_node.c
+++ b/fs/xfs/xfs_dir2_node.c
@@ -1312,7 +1312,7 @@ xfs_dir2_leafn_remove(
         */
        *rval = (dp->d_ops->leaf_hdr_size +
                 (uint)sizeof(ents[0]) * (leafhdr.count - leafhdr.stale)) <
-               mp->m_dir_magicpct;
+               args->geo->magicpct;
        return 0;
 }
 
diff --git a/fs/xfs/xfs_mount.h b/fs/xfs/xfs_mount.h
index 4e3f6ce..78ae7e4 100644
--- a/fs/xfs/xfs_mount.h
+++ b/fs/xfs/xfs_mount.h
@@ -148,8 +148,6 @@ typedef struct xfs_mount {
        int                     m_dalign;       /* stripe unit */
        int                     m_swidth;       /* stripe width */
        int                     m_sinoalign;    /* stripe unit inode alignment 
*/
-       int                     m_attr_magicpct;/* 37% of the blocksize */
-       int                     m_dir_magicpct; /* 37% of the dir blocksize */
        __uint8_t               m_sectbb_log;   /* sectlog - BBSHIFT */
        const struct xfs_nameops *m_dirnameops; /* vector of dir name ops */
        const struct xfs_dir_ops *m_dir_inode_ops; /* vector of dir inode ops */
-- 
1.9.0

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