mirror of https://gitee.com/openkylin/linux.git
md: only calculate blocksize once and use i_blocksize()
We alreday has the interface i_blocksize(), which can be used to get blocksize, so use it. Only calculate blocksize once and use it within read_page(). Signed-off-by: Xianting Tian <tian.xianting@h3c.com> Signed-off-by: Song Liu <songliubraving@fb.com>
This commit is contained in:
parent
0905053bdb
commit
313b825fa2
|
@ -357,11 +357,12 @@ static int read_page(struct file *file, unsigned long index,
|
|||
struct inode *inode = file_inode(file);
|
||||
struct buffer_head *bh;
|
||||
sector_t block, blk_cur;
|
||||
unsigned long blocksize = i_blocksize(inode);
|
||||
|
||||
pr_debug("read bitmap file (%dB @ %llu)\n", (int)PAGE_SIZE,
|
||||
(unsigned long long)index << PAGE_SHIFT);
|
||||
|
||||
bh = alloc_page_buffers(page, 1<<inode->i_blkbits, false);
|
||||
bh = alloc_page_buffers(page, blocksize, false);
|
||||
if (!bh) {
|
||||
ret = -ENOMEM;
|
||||
goto out;
|
||||
|
@ -383,10 +384,10 @@ static int read_page(struct file *file, unsigned long index,
|
|||
|
||||
bh->b_blocknr = block;
|
||||
bh->b_bdev = inode->i_sb->s_bdev;
|
||||
if (count < (1<<inode->i_blkbits))
|
||||
if (count < blocksize)
|
||||
count = 0;
|
||||
else
|
||||
count -= (1<<inode->i_blkbits);
|
||||
count -= blocksize;
|
||||
|
||||
bh->b_end_io = end_bitmap_write;
|
||||
bh->b_private = bitmap;
|
||||
|
|
Loading…
Reference in New Issue