btrfs: promote extent_read_full_page to btrfs_readpage
Now that btrfs_readpage is the only caller of extent_read_full_page the latter can be open coded in the former. Use the occassion to rename __extent_read_full_page to extent_read_full_page. To facillitate this change submit_one_bio has to be exported as well. Reviewed-by: Josef Bacik <josef@toxicpanda.com> Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Signed-off-by: Nikolay Borisov <nborisov@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
Родитель
72cffee463
Коммит
c1be9c1ad5
|
@ -160,8 +160,8 @@ static int add_extent_changeset(struct extent_state *state, unsigned bits,
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int __must_check submit_one_bio(struct bio *bio, int mirror_num,
|
int __must_check submit_one_bio(struct bio *bio, int mirror_num,
|
||||||
unsigned long bio_flags)
|
unsigned long bio_flags)
|
||||||
{
|
{
|
||||||
blk_status_t ret = 0;
|
blk_status_t ret = 0;
|
||||||
struct extent_io_tree *tree = bio->bi_private;
|
struct extent_io_tree *tree = bio->bi_private;
|
||||||
|
@ -3365,9 +3365,8 @@ static inline void contiguous_readpages(struct page *pages[], int nr_pages,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static int __extent_read_full_page(struct page *page, struct bio **bio,
|
int extent_read_full_page(struct page *page, struct bio **bio, int mirror_num,
|
||||||
int mirror_num, unsigned long *bio_flags,
|
unsigned long *bio_flags, unsigned int read_flags)
|
||||||
unsigned int read_flags)
|
|
||||||
{
|
{
|
||||||
struct btrfs_inode *inode = BTRFS_I(page->mapping->host);
|
struct btrfs_inode *inode = BTRFS_I(page->mapping->host);
|
||||||
u64 start = page_offset(page);
|
u64 start = page_offset(page);
|
||||||
|
@ -3381,18 +3380,6 @@ static int __extent_read_full_page(struct page *page, struct bio **bio,
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
int extent_read_full_page(struct page *page)
|
|
||||||
{
|
|
||||||
struct bio *bio = NULL;
|
|
||||||
unsigned long bio_flags = 0;
|
|
||||||
int ret;
|
|
||||||
|
|
||||||
ret = __extent_read_full_page(page, &bio, 0, &bio_flags, 0);
|
|
||||||
if (bio)
|
|
||||||
ret = submit_one_bio(bio, 0, bio_flags);
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void update_nr_written(struct writeback_control *wbc,
|
static void update_nr_written(struct writeback_control *wbc,
|
||||||
unsigned long nr_written)
|
unsigned long nr_written)
|
||||||
{
|
{
|
||||||
|
|
|
@ -193,7 +193,10 @@ typedef struct extent_map *(get_extent_t)(struct btrfs_inode *inode,
|
||||||
int try_release_extent_mapping(struct page *page, gfp_t mask);
|
int try_release_extent_mapping(struct page *page, gfp_t mask);
|
||||||
int try_release_extent_buffer(struct page *page);
|
int try_release_extent_buffer(struct page *page);
|
||||||
|
|
||||||
int extent_read_full_page(struct page *page);
|
int __must_check submit_one_bio(struct bio *bio, int mirror_num,
|
||||||
|
unsigned long bio_flags);
|
||||||
|
int extent_read_full_page(struct page *page, struct bio **bio, int mirror_num,
|
||||||
|
unsigned long *bio_flags, unsigned int read_flags);
|
||||||
int extent_write_full_page(struct page *page, struct writeback_control *wbc);
|
int extent_write_full_page(struct page *page, struct writeback_control *wbc);
|
||||||
int extent_write_locked_range(struct inode *inode, u64 start, u64 end,
|
int extent_write_locked_range(struct inode *inode, u64 start, u64 end,
|
||||||
int mode);
|
int mode);
|
||||||
|
|
|
@ -8040,7 +8040,14 @@ static int btrfs_fiemap(struct inode *inode, struct fiemap_extent_info *fieinfo,
|
||||||
|
|
||||||
int btrfs_readpage(struct file *file, struct page *page)
|
int btrfs_readpage(struct file *file, struct page *page)
|
||||||
{
|
{
|
||||||
return extent_read_full_page(page);
|
struct bio *bio = NULL;
|
||||||
|
unsigned long bio_flags = 0;
|
||||||
|
int ret;
|
||||||
|
|
||||||
|
ret = extent_read_full_page(page, &bio, 0, &bio_flags, 0);
|
||||||
|
if (bio)
|
||||||
|
ret = submit_one_bio(bio, 0, bio_flags);
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int btrfs_writepage(struct page *page, struct writeback_control *wbc)
|
static int btrfs_writepage(struct page *page, struct writeback_control *wbc)
|
||||||
|
|
Загрузка…
Ссылка в новой задаче