[Cluster-devel] [gfs2-utils PATCH 2/7] fsck.gfs2: Remember the previous rgrp pointer for speed
Bob Peterson
rpeterso at redhat.com
Wed Jun 22 19:26:47 UTC 2016
This is a minor speedup: function check_n_fix_bitmap will now
remember the previous rgrp that it used. This should make it
faster.
Signed-off-by: Bob Peterson <rpeterso at redhat.com>
---
gfs2/fsck/metawalk.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/gfs2/fsck/metawalk.c b/gfs2/fsck/metawalk.c
index c0cc2ab..cda59ac 100644
--- a/gfs2/fsck/metawalk.c
+++ b/gfs2/fsck/metawalk.c
@@ -40,9 +40,14 @@ int check_n_fix_bitmap(struct gfs2_sbd *sdp, struct rgrp_tree *rgd,
{"free", "data", "unlinked", "inode", "reserved"},
/* gfs1 descriptions: */
{"free", "data", "free meta", "metadata", "reserved"}};
+ static struct rgrp_tree *prevrgd = NULL;
- if (rgd == NULL || !rgrp_contains_block(rgd, blk))
+ if (prevrgd && rgrp_contains_block(prevrgd, blk)) {
+ rgd = prevrgd;
+ } else if (rgd == NULL || !rgrp_contains_block(rgd, blk)) {
rgd = gfs2_blk2rgrpd(sdp, blk);
+ prevrgd = rgd;
+ }
gfs1rg = (struct gfs_rgrp *)&rgd->rg;
--
2.5.5
More information about the Cluster-devel
mailing list