Message ID | 20181205122835.19290-5-rgoldwyn@suse.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | btrfs: Support for DAX devices | expand |
On 5.12.18 г. 14:28 ч., Goldwyn Rodrigues wrote: > From: Goldwyn Rodrigues <rgoldwyn@suse.com> > > Since we will be using it in another part of the code, use a > better name to declare it non-static > > Signed-off-by: Goldwyn Rodrigues <rgoldwyn@suse.com> > --- > fs/btrfs/ctree.h | 7 +++++-- > fs/btrfs/inode.c | 14 +++++--------- > 2 files changed, 10 insertions(+), 11 deletions(-) > > diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h > index 038d64ecebe5..5144d28216b0 100644 > --- a/fs/btrfs/ctree.h > +++ b/fs/btrfs/ctree.h > @@ -3170,8 +3170,11 @@ struct inode *btrfs_iget_path(struct super_block *s, struct btrfs_key *location, > struct inode *btrfs_iget(struct super_block *s, struct btrfs_key *location, > struct btrfs_root *root, int *was_new); > struct extent_map *btrfs_get_extent(struct btrfs_inode *inode, > - struct page *page, size_t pg_offset, > - u64 start, u64 end, int create); > + struct page *page, size_t pg_offset, > + u64 start, u64 end, int create); > +void btrfs_update_ordered_extent(struct inode *inode, > + const u64 offset, const u64 bytes, > + const bool uptodate); > int btrfs_update_inode(struct btrfs_trans_handle *trans, > struct btrfs_root *root, > struct inode *inode); > diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c > index 9ea4c6f0352f..96e9fe9e4150 100644 > --- a/fs/btrfs/inode.c > +++ b/fs/btrfs/inode.c > @@ -97,10 +97,6 @@ static struct extent_map *create_io_em(struct inode *inode, u64 start, u64 len, > u64 ram_bytes, int compress_type, > int type); > > -static void __endio_write_update_ordered(struct inode *inode, > - const u64 offset, const u64 bytes, > - const bool uptodate); > - > /* > * Cleanup all submitted ordered extents in specified range to handle errors > * from the fill_dellaloc() callback. > @@ -130,7 +126,7 @@ static inline void btrfs_cleanup_ordered_extents(struct inode *inode, > ClearPagePrivate2(page); > put_page(page); > } > - return __endio_write_update_ordered(inode, offset + PAGE_SIZE, > + return btrfs_update_ordered_extent(inode, offset + PAGE_SIZE, > bytes - PAGE_SIZE, false); > } > > @@ -8059,7 +8055,7 @@ static void btrfs_endio_direct_read(struct bio *bio) > bio_put(bio); > } > > -static void __endio_write_update_ordered(struct inode *inode, > +void btrfs_update_ordered_extent(struct inode *inode, > const u64 offset, const u64 bytes, > const bool uptodate) Since you are exporting the function I'd suggest to use the occasion to introduce proper kernel-doc. THe primary help will be if you document the context under which the function is called - when writes are finished and it's used to update respective portion of the ordered extent. > { > @@ -8112,7 +8108,7 @@ static void btrfs_endio_direct_write(struct bio *bio) > struct btrfs_dio_private *dip = bio->bi_private; > struct bio *dio_bio = dip->dio_bio; > > - __endio_write_update_ordered(dip->inode, dip->logical_offset, > + btrfs_update_ordered_extent(dip->inode, dip->logical_offset, > dip->bytes, !bio->bi_status); > > kfree(dip); > @@ -8432,7 +8428,7 @@ static void btrfs_submit_direct(struct bio *dio_bio, struct inode *inode, > bio = NULL; > } else { > if (write) > - __endio_write_update_ordered(inode, > + btrfs_update_ordered_extent(inode, > file_offset, > dio_bio->bi_iter.bi_size, > false); > @@ -8572,7 +8568,7 @@ static ssize_t btrfs_direct_IO(struct kiocb *iocb, struct iov_iter *iter) > */ > if (dio_data.unsubmitted_oe_range_start < > dio_data.unsubmitted_oe_range_end) > - __endio_write_update_ordered(inode, > + btrfs_update_ordered_extent(inode, > dio_data.unsubmitted_oe_range_start, > dio_data.unsubmitted_oe_range_end - > dio_data.unsubmitted_oe_range_start, >
diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h index 038d64ecebe5..5144d28216b0 100644 --- a/fs/btrfs/ctree.h +++ b/fs/btrfs/ctree.h @@ -3170,8 +3170,11 @@ struct inode *btrfs_iget_path(struct super_block *s, struct btrfs_key *location, struct inode *btrfs_iget(struct super_block *s, struct btrfs_key *location, struct btrfs_root *root, int *was_new); struct extent_map *btrfs_get_extent(struct btrfs_inode *inode, - struct page *page, size_t pg_offset, - u64 start, u64 end, int create); + struct page *page, size_t pg_offset, + u64 start, u64 end, int create); +void btrfs_update_ordered_extent(struct inode *inode, + const u64 offset, const u64 bytes, + const bool uptodate); int btrfs_update_inode(struct btrfs_trans_handle *trans, struct btrfs_root *root, struct inode *inode); diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index 9ea4c6f0352f..96e9fe9e4150 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c @@ -97,10 +97,6 @@ static struct extent_map *create_io_em(struct inode *inode, u64 start, u64 len, u64 ram_bytes, int compress_type, int type); -static void __endio_write_update_ordered(struct inode *inode, - const u64 offset, const u64 bytes, - const bool uptodate); - /* * Cleanup all submitted ordered extents in specified range to handle errors * from the fill_dellaloc() callback. @@ -130,7 +126,7 @@ static inline void btrfs_cleanup_ordered_extents(struct inode *inode, ClearPagePrivate2(page); put_page(page); } - return __endio_write_update_ordered(inode, offset + PAGE_SIZE, + return btrfs_update_ordered_extent(inode, offset + PAGE_SIZE, bytes - PAGE_SIZE, false); } @@ -8059,7 +8055,7 @@ static void btrfs_endio_direct_read(struct bio *bio) bio_put(bio); } -static void __endio_write_update_ordered(struct inode *inode, +void btrfs_update_ordered_extent(struct inode *inode, const u64 offset, const u64 bytes, const bool uptodate) { @@ -8112,7 +8108,7 @@ static void btrfs_endio_direct_write(struct bio *bio) struct btrfs_dio_private *dip = bio->bi_private; struct bio *dio_bio = dip->dio_bio; - __endio_write_update_ordered(dip->inode, dip->logical_offset, + btrfs_update_ordered_extent(dip->inode, dip->logical_offset, dip->bytes, !bio->bi_status); kfree(dip); @@ -8432,7 +8428,7 @@ static void btrfs_submit_direct(struct bio *dio_bio, struct inode *inode, bio = NULL; } else { if (write) - __endio_write_update_ordered(inode, + btrfs_update_ordered_extent(inode, file_offset, dio_bio->bi_iter.bi_size, false); @@ -8572,7 +8568,7 @@ static ssize_t btrfs_direct_IO(struct kiocb *iocb, struct iov_iter *iter) */ if (dio_data.unsubmitted_oe_range_start < dio_data.unsubmitted_oe_range_end) - __endio_write_update_ordered(inode, + btrfs_update_ordered_extent(inode, dio_data.unsubmitted_oe_range_start, dio_data.unsubmitted_oe_range_end - dio_data.unsubmitted_oe_range_start,