forked from luck/tmp_suning_uos_patched
[PATCH] ext4 uninline ext4_get_group_no_and_offset()
Way too big to inline. Cc: <linux-ext4@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
8fadc14323
commit
72b64b5940
|
@ -24,6 +24,24 @@
|
||||||
* balloc.c contains the blocks allocation and deallocation routines
|
* balloc.c contains the blocks allocation and deallocation routines
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Calculate the block group number and offset, given a block number
|
||||||
|
*/
|
||||||
|
void ext4_get_group_no_and_offset(struct super_block *sb, ext4_fsblk_t blocknr,
|
||||||
|
unsigned long *blockgrpp, ext4_grpblk_t *offsetp)
|
||||||
|
{
|
||||||
|
struct ext4_super_block *es = EXT4_SB(sb)->s_es;
|
||||||
|
ext4_grpblk_t offset;
|
||||||
|
|
||||||
|
blocknr = blocknr - le32_to_cpu(es->s_first_data_block);
|
||||||
|
offset = sector_div(blocknr, EXT4_BLOCKS_PER_GROUP(sb));
|
||||||
|
if (offsetp)
|
||||||
|
*offsetp = offset;
|
||||||
|
if (blockgrpp)
|
||||||
|
*blockgrpp = blocknr;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The free blocks are managed by bitmaps. A file system contains several
|
* The free blocks are managed by bitmaps. A file system contains several
|
||||||
* blocks groups. Each group contains 1 bitmap block for blocks, 1 bitmap
|
* blocks groups. Each group contains 1 bitmap block for blocks, 1 bitmap
|
||||||
|
|
|
@ -769,26 +769,8 @@ ext4_group_first_block_no(struct super_block *sb, unsigned long group_no)
|
||||||
*/
|
*/
|
||||||
#define ERR_BAD_DX_DIR -75000
|
#define ERR_BAD_DX_DIR -75000
|
||||||
|
|
||||||
/*
|
void ext4_get_group_no_and_offset(struct super_block *sb, ext4_fsblk_t blocknr,
|
||||||
* This function calculate the block group number and offset,
|
unsigned long *blockgrpp, ext4_grpblk_t *offsetp);
|
||||||
* given a block number
|
|
||||||
*/
|
|
||||||
|
|
||||||
static inline void ext4_get_group_no_and_offset(struct super_block * sb,
|
|
||||||
ext4_fsblk_t blocknr, unsigned long* blockgrpp,
|
|
||||||
ext4_grpblk_t *offsetp)
|
|
||||||
{
|
|
||||||
struct ext4_super_block *es = EXT4_SB(sb)->s_es;
|
|
||||||
ext4_grpblk_t offset;
|
|
||||||
|
|
||||||
blocknr = blocknr - le32_to_cpu(es->s_first_data_block);
|
|
||||||
offset = sector_div(blocknr, EXT4_BLOCKS_PER_GROUP(sb));
|
|
||||||
if (offsetp)
|
|
||||||
*offsetp = offset;
|
|
||||||
if (blockgrpp)
|
|
||||||
*blockgrpp = blocknr;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Function prototypes
|
* Function prototypes
|
||||||
|
|
Loading…
Reference in New Issue
Block a user