aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOGAWA Hirofumi <hirofumi@mail.parknet.co.jp>2013-05-14 00:19:01 +0900
committerDaniel Phillips <daniel@tux3.org>2013-05-14 00:19:01 +0900
commit4dafa55cc6a51cf0da795f6d339d50fc14752224 (patch)
treefa545ea6903cc57d0d90a95a6eebc0890343ace2
parent32c1f360e3cbc61258f31f7b23036738daa34d74 (diff)
downloadlinux-tux3-4dafa55cc6a51cf0da795f6d339d50fc14752224.tar.gz
tux3: Introduce ->nextinum to cache lastest allocated inum
Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
-rw-r--r--fs/tux3/commit.c1
-rw-r--r--fs/tux3/tux3.h2
2 files changed, 3 insertions, 0 deletions
diff --git a/fs/tux3/commit.c b/fs/tux3/commit.c
index c6ed4313abc3b9..4d56818430a57d 100644
--- a/fs/tux3/commit.c
+++ b/fs/tux3/commit.c
@@ -94,6 +94,7 @@ static void __setup_sb(struct sb *sb, struct disksuper *super)
sb->freeinodes = MAX_INODES - be64_to_cpu(super->usedinodes);
sb->freeblocks = sb->volblocks;
sb->nextblock = be64_to_cpu(super->nextblock);
+ sb->nextinum = TUX_NORMAL_INO;
sb->atomdictsize = be64_to_cpu(super->atomdictsize);
sb->atomgen = be32_to_cpu(super->atomgen);
sb->freeatom = be32_to_cpu(super->freeatom);
diff --git a/fs/tux3/tux3.h b/fs/tux3/tux3.h
index ba653be0f705f0..33c8f2c08efac5 100644
--- a/fs/tux3/tux3.h
+++ b/fs/tux3/tux3.h
@@ -260,6 +260,8 @@ struct sb {
u64 freeinodes; /* Number of free inode numbers. This is
* including the deferred allocated inodes */
block_t volblocks, freeblocks, nextblock;
+ inum_t nextinum; /* FIXME: temporary hack to avoid to find
+ * same area in itable for free inum. */
unsigned entries_per_node; /* must be per-btree type, get rid of this */
unsigned version; /* Currently mounted volume version view */