diff options
author | Tao Ma <boyu.mt@taobao.com> | 2011-05-09 10:26:41 -0400 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2011-05-09 10:26:41 -0400 |
commit | 00d098822fe215a2f4fd32f244a9055b0b043bfe (patch) | |
tree | e111dd4a9eb65cfc862186315e89220b692ddf83 | |
parent | e8bbe8c401c61408ea226b33b824f231c8f9ccae (diff) |
ext4: use s_inodes_per_block directly in __ext4_get_inode_loc
In __ext4_get_inode_loc, we calculate inodes_per_block every time by
EXT4_BLOCK_SIZE(sb) / EXT4_INODE_SIZE(sb). AFAICS, this function is a
hot path for ext4, so we'd better use s_inodes_per_block directly
instead of calculating every time.
Signed-off-by: Tao Ma <boyu.mt@taobao.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
-rw-r--r-- | fs/ext4/inode.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c index f2fa5e8a582c..3424e82392ad 100644 --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c | |||
@@ -4617,7 +4617,7 @@ static int __ext4_get_inode_loc(struct inode *inode, | |||
4617 | /* | 4617 | /* |
4618 | * Figure out the offset within the block group inode table | 4618 | * Figure out the offset within the block group inode table |
4619 | */ | 4619 | */ |
4620 | inodes_per_block = (EXT4_BLOCK_SIZE(sb) / EXT4_INODE_SIZE(sb)); | 4620 | inodes_per_block = EXT4_SB(sb)->s_inodes_per_block; |
4621 | inode_offset = ((inode->i_ino - 1) % | 4621 | inode_offset = ((inode->i_ino - 1) % |
4622 | EXT4_INODES_PER_GROUP(sb)); | 4622 | EXT4_INODES_PER_GROUP(sb)); |
4623 | block = ext4_inode_table(sb, gdp) + (inode_offset / inodes_per_block); | 4623 | block = ext4_inode_table(sb, gdp) + (inode_offset / inodes_per_block); |