btrfs: constify extent_buffer in the API functions
There are many helpers around extent buffers, found in extent_io.h and ctree.h. Most of them can be converted to take constified eb as there are no changes to the extent buffer structure itself but rather the pages. Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
@ -2333,7 +2333,7 @@ int repair_io_failure(struct btrfs_fs_info *fs_info, u64 ino, u64 start,
|
||||
return 0;
|
||||
}
|
||||
|
||||
int btrfs_repair_eb_io_failure(struct extent_buffer *eb, int mirror_num)
|
||||
int btrfs_repair_eb_io_failure(const struct extent_buffer *eb, int mirror_num)
|
||||
{
|
||||
struct btrfs_fs_info *fs_info = eb->fs_info;
|
||||
u64 start = eb->start;
|
||||
@ -4910,7 +4910,7 @@ static void __free_extent_buffer(struct extent_buffer *eb)
|
||||
kmem_cache_free(extent_buffer_cache, eb);
|
||||
}
|
||||
|
||||
int extent_buffer_under_io(struct extent_buffer *eb)
|
||||
int extent_buffer_under_io(const struct extent_buffer *eb)
|
||||
{
|
||||
return (atomic_read(&eb->io_pages) ||
|
||||
test_bit(EXTENT_BUFFER_WRITEBACK, &eb->bflags) ||
|
||||
@ -5018,7 +5018,7 @@ __alloc_extent_buffer(struct btrfs_fs_info *fs_info, u64 start,
|
||||
return eb;
|
||||
}
|
||||
|
||||
struct extent_buffer *btrfs_clone_extent_buffer(struct extent_buffer *src)
|
||||
struct extent_buffer *btrfs_clone_extent_buffer(const struct extent_buffer *src)
|
||||
{
|
||||
int i;
|
||||
struct page *p;
|
||||
@ -5424,7 +5424,7 @@ void free_extent_buffer_stale(struct extent_buffer *eb)
|
||||
release_extent_buffer(eb);
|
||||
}
|
||||
|
||||
void clear_extent_buffer_dirty(struct extent_buffer *eb)
|
||||
void clear_extent_buffer_dirty(const struct extent_buffer *eb)
|
||||
{
|
||||
int i;
|
||||
int num_pages;
|
||||
@ -5720,7 +5720,7 @@ int memcmp_extent_buffer(const struct extent_buffer *eb, const void *ptrv,
|
||||
return ret;
|
||||
}
|
||||
|
||||
void write_extent_buffer_chunk_tree_uuid(struct extent_buffer *eb,
|
||||
void write_extent_buffer_chunk_tree_uuid(const struct extent_buffer *eb,
|
||||
const void *srcv)
|
||||
{
|
||||
char *kaddr;
|
||||
@ -5731,7 +5731,7 @@ void write_extent_buffer_chunk_tree_uuid(struct extent_buffer *eb,
|
||||
BTRFS_FSID_SIZE);
|
||||
}
|
||||
|
||||
void write_extent_buffer_fsid(struct extent_buffer *eb, const void *srcv)
|
||||
void write_extent_buffer_fsid(const struct extent_buffer *eb, const void *srcv)
|
||||
{
|
||||
char *kaddr;
|
||||
|
||||
@ -5741,7 +5741,7 @@ void write_extent_buffer_fsid(struct extent_buffer *eb, const void *srcv)
|
||||
BTRFS_FSID_SIZE);
|
||||
}
|
||||
|
||||
void write_extent_buffer(struct extent_buffer *eb, const void *srcv,
|
||||
void write_extent_buffer(const struct extent_buffer *eb, const void *srcv,
|
||||
unsigned long start, unsigned long len)
|
||||
{
|
||||
size_t cur;
|
||||
@ -5772,7 +5772,7 @@ void write_extent_buffer(struct extent_buffer *eb, const void *srcv,
|
||||
}
|
||||
}
|
||||
|
||||
void memzero_extent_buffer(struct extent_buffer *eb, unsigned long start,
|
||||
void memzero_extent_buffer(const struct extent_buffer *eb, unsigned long start,
|
||||
unsigned long len)
|
||||
{
|
||||
size_t cur;
|
||||
@ -5801,8 +5801,8 @@ void memzero_extent_buffer(struct extent_buffer *eb, unsigned long start,
|
||||
}
|
||||
}
|
||||
|
||||
void copy_extent_buffer_full(struct extent_buffer *dst,
|
||||
struct extent_buffer *src)
|
||||
void copy_extent_buffer_full(const struct extent_buffer *dst,
|
||||
const struct extent_buffer *src)
|
||||
{
|
||||
int i;
|
||||
int num_pages;
|
||||
@ -5815,7 +5815,8 @@ void copy_extent_buffer_full(struct extent_buffer *dst,
|
||||
page_address(src->pages[i]));
|
||||
}
|
||||
|
||||
void copy_extent_buffer(struct extent_buffer *dst, struct extent_buffer *src,
|
||||
void copy_extent_buffer(const struct extent_buffer *dst,
|
||||
const struct extent_buffer *src,
|
||||
unsigned long dst_offset, unsigned long src_offset,
|
||||
unsigned long len)
|
||||
{
|
||||
@ -5860,7 +5861,7 @@ void copy_extent_buffer(struct extent_buffer *dst, struct extent_buffer *src,
|
||||
* This helper hides the ugliness of finding the byte in an extent buffer which
|
||||
* contains a given bit.
|
||||
*/
|
||||
static inline void eb_bitmap_offset(struct extent_buffer *eb,
|
||||
static inline void eb_bitmap_offset(const struct extent_buffer *eb,
|
||||
unsigned long start, unsigned long nr,
|
||||
unsigned long *page_index,
|
||||
size_t *page_offset)
|
||||
@ -5886,7 +5887,7 @@ static inline void eb_bitmap_offset(struct extent_buffer *eb,
|
||||
* @start: offset of the bitmap item in the extent buffer
|
||||
* @nr: bit number to test
|
||||
*/
|
||||
int extent_buffer_test_bit(struct extent_buffer *eb, unsigned long start,
|
||||
int extent_buffer_test_bit(const struct extent_buffer *eb, unsigned long start,
|
||||
unsigned long nr)
|
||||
{
|
||||
u8 *kaddr;
|
||||
@ -5908,7 +5909,7 @@ int extent_buffer_test_bit(struct extent_buffer *eb, unsigned long start,
|
||||
* @pos: bit number of the first bit
|
||||
* @len: number of bits to set
|
||||
*/
|
||||
void extent_buffer_bitmap_set(struct extent_buffer *eb, unsigned long start,
|
||||
void extent_buffer_bitmap_set(const struct extent_buffer *eb, unsigned long start,
|
||||
unsigned long pos, unsigned long len)
|
||||
{
|
||||
u8 *kaddr;
|
||||
@ -5950,8 +5951,9 @@ void extent_buffer_bitmap_set(struct extent_buffer *eb, unsigned long start,
|
||||
* @pos: bit number of the first bit
|
||||
* @len: number of bits to clear
|
||||
*/
|
||||
void extent_buffer_bitmap_clear(struct extent_buffer *eb, unsigned long start,
|
||||
unsigned long pos, unsigned long len)
|
||||
void extent_buffer_bitmap_clear(const struct extent_buffer *eb,
|
||||
unsigned long start, unsigned long pos,
|
||||
unsigned long len)
|
||||
{
|
||||
u8 *kaddr;
|
||||
struct page *page;
|
||||
@ -6012,8 +6014,9 @@ static void copy_pages(struct page *dst_page, struct page *src_page,
|
||||
memcpy(dst_kaddr + dst_off, src_kaddr + src_off, len);
|
||||
}
|
||||
|
||||
void memcpy_extent_buffer(struct extent_buffer *dst, unsigned long dst_offset,
|
||||
unsigned long src_offset, unsigned long len)
|
||||
void memcpy_extent_buffer(const struct extent_buffer *dst,
|
||||
unsigned long dst_offset, unsigned long src_offset,
|
||||
unsigned long len)
|
||||
{
|
||||
struct btrfs_fs_info *fs_info = dst->fs_info;
|
||||
size_t cur;
|
||||
@ -6057,8 +6060,9 @@ void memcpy_extent_buffer(struct extent_buffer *dst, unsigned long dst_offset,
|
||||
}
|
||||
}
|
||||
|
||||
void memmove_extent_buffer(struct extent_buffer *dst, unsigned long dst_offset,
|
||||
unsigned long src_offset, unsigned long len)
|
||||
void memmove_extent_buffer(const struct extent_buffer *dst,
|
||||
unsigned long dst_offset, unsigned long src_offset,
|
||||
unsigned long len)
|
||||
{
|
||||
struct btrfs_fs_info *fs_info = dst->fs_info;
|
||||
size_t cur;
|
||||
|
Reference in New Issue
Block a user