* [PATCH v1 0/3] btrfs: cleanup: pass fs_info instead of root where possible
@ 2011-05-31 10:16 Arne Jansen
2011-05-31 10:16 ` [PATCH v1 1/3] btrfs: remove struct btrfs_root parameter where unused Arne Jansen
` (2 more replies)
0 siblings, 3 replies; 5+ messages in thread
From: Arne Jansen @ 2011-05-31 10:16 UTC (permalink / raw)
To: chris.mason, linux-btrfs; +Cc: julia
This series aims to clean up passing of struct btrfs_root and struct
btrfs_fs_info. It first removes the root pointer from functions and macros
where it's not needed, afterwards it passes fs_info instead of root to
functions which only need root->fs_info.
It is based on 3.0-rc1.
These patches are based on the following two Coccinelle-scripts, but also
involve some hand editing.
a) Remove root parameter where it's completely unneeded. Fix up callers.
@r@
identifier fn != btrfs_inc_extent_ref;
identifier root;
parameter list[n] P;
@@
fn(P
- , struct btrfs_root *root
,...)
{
... when != root
}
@@
identifier r.fn;
expression list[r.n] E;
identifier x;
@@
fn(E
- ,x
,...)
b) Change root parameter to fs_info where only root->fs_info is needed. Fix up
callers.
@ s exists @
identifier fn;
identifier root, sf;
identifier member != fs_info;
position p;
expression E;
parameter list[n] P;
@@
fn@p(P,struct btrfs_root *root,...)
{
...
(
root->member
|
sf(...,root,...)
|
(root && ...)
|
(root == ...)
|
E = root
)
... when any
}
@ t @
identifier fn != {process_one_buffer,btrfs_inc_extent_ref,btrfs_free_extent};
identifier root;
parameter list[n] P;
position p != s.p;
@@
fn@p(P,
- struct btrfs_root *root
+ struct btrfs_fs_info *fs_info
,...)
{
<...
- root->fs_info
+ fs_info
...>
}
@@
identifier t.fn;
expression list[t.n] E;
expression x;
@@
fn(E,
- x
+ x->fs_info
,...)
@@
function fn;
identifier fs_info;
identifier x;
parameter list[n] P;
@@
fn(P, struct btrfs_fs_info *fs_info, ... ) {
...
- struct btrfs_fs_info *x = fs_info;
<...
- x
+ fs_info
...>
}
Thanks to Julia Lawall for helping to build the scripts.
Arne Jansen (3):
btrfs: remove struct btrfs_root parameter where unused
btrfs: pass fs_info to btrfs_test_opt instead of root
btrfs: cleanup: pass fs_info instead of root where possible
fs/btrfs/compression.c | 11 +-
fs/btrfs/ctree.c | 76 +++++----
fs/btrfs/ctree.h | 66 ++++----
fs/btrfs/delayed-inode.c | 43 +++---
fs/btrfs/disk-io.c | 281 +++++++++++++++---------------
fs/btrfs/disk-io.h | 24 ++--
fs/btrfs/extent-tree.c | 409 ++++++++++++++++++++++---------------------
fs/btrfs/file-item.c | 5 +-
fs/btrfs/file.c | 16 +-
fs/btrfs/free-space-cache.c | 12 +-
fs/btrfs/free-space-cache.h | 2 +-
fs/btrfs/inode.c | 108 ++++++------
fs/btrfs/ioctl.c | 57 +++---
fs/btrfs/ordered-data.c | 48 +++---
fs/btrfs/ordered-data.h | 6 +-
fs/btrfs/print-tree.c | 2 +-
fs/btrfs/relocation.c | 40 +++--
fs/btrfs/scrub.c | 68 +++-----
fs/btrfs/super.c | 34 ++--
fs/btrfs/transaction.c | 183 ++++++++++----------
fs/btrfs/transaction.h | 12 +-
fs/btrfs/tree-defrag.c | 2 +-
fs/btrfs/tree-log.c | 40 +++--
fs/btrfs/volumes.c | 246 +++++++++++++-------------
fs/btrfs/volumes.h | 10 +-
25 files changed, 912 insertions(+), 889 deletions(-)
--
1.7.3.4
^ permalink raw reply [flat|nested] 5+ messages in thread* [PATCH v1 1/3] btrfs: remove struct btrfs_root parameter where unused 2011-05-31 10:16 [PATCH v1 0/3] btrfs: cleanup: pass fs_info instead of root where possible Arne Jansen @ 2011-05-31 10:16 ` Arne Jansen 2011-06-01 0:02 ` Tsutomu Itoh 2011-05-31 10:16 ` [PATCH v1 2/3] btrfs: pass fs_info to btrfs_test_opt instead of root Arne Jansen 2011-05-31 10:38 ` [PATCH v1 0/3] btrfs: cleanup: pass fs_info instead of root where possible Arne Jansen 2 siblings, 1 reply; 5+ messages in thread From: Arne Jansen @ 2011-05-31 10:16 UTC (permalink / raw) To: chris.mason, linux-btrfs; +Cc: julia The following functions had a struct btrfs_root * parameter which went unused: btrfs_set_block_group_rw btrfs_destroy_delayed_refs btrfs_csum_data extent_data_ref_count copy_to_sk Signed-off-by: Arne Jansen <sensille@gmx.net> --- fs/btrfs/compression.c | 3 +-- fs/btrfs/ctree.c | 20 ++++++++++---------- fs/btrfs/ctree.h | 5 +---- fs/btrfs/disk-io.c | 14 ++++++-------- fs/btrfs/disk-io.h | 2 +- fs/btrfs/extent-tree.c | 16 ++++++---------- fs/btrfs/file-item.c | 3 +-- fs/btrfs/free-space-cache.c | 6 +++--- fs/btrfs/inode.c | 7 +++---- fs/btrfs/ioctl.c | 5 ++--- fs/btrfs/relocation.c | 2 +- fs/btrfs/scrub.c | 7 +++---- 12 files changed, 38 insertions(+), 52 deletions(-) diff --git a/fs/btrfs/compression.c b/fs/btrfs/compression.c index bfe42b0..2182cc5 100644 --- a/fs/btrfs/compression.c +++ b/fs/btrfs/compression.c @@ -105,7 +105,6 @@ static int check_compressed_csum(struct inode *inode, u64 disk_start) { int ret; - struct btrfs_root *root = BTRFS_I(inode)->root; struct page *page; unsigned long i; char *kaddr; @@ -120,7 +119,7 @@ static int check_compressed_csum(struct inode *inode, csum = ~(u32)0; kaddr = kmap_atomic(page, KM_USER0); - csum = btrfs_csum_data(root, kaddr, csum, PAGE_CACHE_SIZE); + csum = btrfs_csum_data(kaddr, csum, PAGE_CACHE_SIZE); btrfs_csum_final(csum, (char *)&csum); kunmap_atomic(kaddr, KM_USER0); diff --git a/fs/btrfs/ctree.c b/fs/btrfs/ctree.c index b0e18d9..670bed7 100644 --- a/fs/btrfs/ctree.c +++ b/fs/btrfs/ctree.c @@ -339,7 +339,7 @@ static noinline int update_ref_for_cow(struct btrfs_trans_handle *trans, BUG_ON(ret); } if (new_flags != 0) { - ret = btrfs_set_disk_extent_flags(trans, root, + ret = btrfs_set_disk_extent_flags(trans, buf->start, buf->len, new_flags, 0); @@ -1763,7 +1763,7 @@ done: * fixing up the blocks in ram so the tree is consistent. */ static int fixup_low_keys(struct btrfs_trans_handle *trans, - struct btrfs_root *root, struct btrfs_path *path, + struct btrfs_path *path, struct btrfs_disk_key *key, int level) { int i; @@ -1814,7 +1814,7 @@ int btrfs_set_item_key_safe(struct btrfs_trans_handle *trans, btrfs_set_item_key(eb, &disk_key, slot); btrfs_mark_buffer_dirty(eb); if (slot == 0) - fixup_low_keys(trans, root, path, &disk_key, 1); + fixup_low_keys(trans, path, &disk_key, 1); return 0; } @@ -2579,7 +2579,7 @@ static noinline int __push_leaf_left(struct btrfs_trans_handle *trans, clean_tree_block(trans, root, right); btrfs_item_key(right, &disk_key, 0); - wret = fixup_low_keys(trans, root, path, &disk_key, 1); + wret = fixup_low_keys(trans, path, &disk_key, 1); if (wret) ret = wret; @@ -2966,7 +2966,7 @@ again: path->nodes[0] = right; path->slots[0] = 0; if (path->slots[1] == 0) { - wret = fixup_low_keys(trans, root, + wret = fixup_low_keys(trans, path, &disk_key, 1); if (wret) ret = wret; @@ -3301,7 +3301,7 @@ int btrfs_truncate_item(struct btrfs_trans_handle *trans, btrfs_set_disk_key_offset(&disk_key, offset + size_diff); btrfs_set_item_key(leaf, &disk_key, slot); if (slot == 0) - fixup_low_keys(trans, root, path, &disk_key, 1); + fixup_low_keys(trans, path, &disk_key, 1); } item = btrfs_item_nr(leaf, slot); @@ -3532,7 +3532,7 @@ int btrfs_insert_some_items(struct btrfs_trans_handle *trans, ret = 0; if (slot == 0) { btrfs_cpu_key_to_disk(&disk_key, cpu_key); - ret = fixup_low_keys(trans, root, path, &disk_key, 1); + ret = fixup_low_keys(trans, path, &disk_key, 1); } if (btrfs_leaf_free_space(root, leaf) < 0) { @@ -3638,7 +3638,7 @@ int setup_items_for_insert(struct btrfs_trans_handle *trans, ret = 0; if (slot == 0) { btrfs_cpu_key_to_disk(&disk_key, cpu_key); - ret = fixup_low_keys(trans, root, path, &disk_key, 1); + ret = fixup_low_keys(trans, path, &disk_key, 1); } btrfs_unlock_up_safe(path, 1); btrfs_mark_buffer_dirty(leaf); @@ -3745,7 +3745,7 @@ static int del_ptr(struct btrfs_trans_handle *trans, struct btrfs_root *root, struct btrfs_disk_key disk_key; btrfs_node_key(parent, &disk_key, 0); - wret = fixup_low_keys(trans, root, path, &disk_key, level + 1); + wret = fixup_low_keys(trans, path, &disk_key, level + 1); if (wret) ret = wret; } @@ -3862,7 +3862,7 @@ int btrfs_del_items(struct btrfs_trans_handle *trans, struct btrfs_root *root, struct btrfs_disk_key disk_key; btrfs_item_key(leaf, &disk_key, 0); - wret = fixup_low_keys(trans, root, path, + wret = fixup_low_keys(trans, path, &disk_key, 1); if (wret) ret = wret; diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h index 6c093fa..b51a06c 100644 --- a/fs/btrfs/ctree.h +++ b/fs/btrfs/ctree.h @@ -2148,7 +2148,6 @@ struct extent_buffer *btrfs_init_new_buffer(struct btrfs_trans_handle *trans, u64 bytenr, u32 blocksize, int level); int btrfs_alloc_reserved_file_extent(struct btrfs_trans_handle *trans, - struct btrfs_root *root, u64 root_objectid, u64 owner, u64 offset, struct btrfs_key *ins); int btrfs_alloc_logged_file_extent(struct btrfs_trans_handle *trans, @@ -2166,7 +2165,6 @@ int btrfs_inc_ref(struct btrfs_trans_handle *trans, struct btrfs_root *root, int btrfs_dec_ref(struct btrfs_trans_handle *trans, struct btrfs_root *root, struct extent_buffer *buf, int full_backref); int btrfs_set_disk_extent_flags(struct btrfs_trans_handle *trans, - struct btrfs_root *root, u64 bytenr, u64 num_bytes, u64 flags, int is_data); int btrfs_free_extent(struct btrfs_trans_handle *trans, @@ -2240,8 +2238,7 @@ void btrfs_block_rsv_release(struct btrfs_root *root, u64 num_bytes); int btrfs_set_block_group_ro(struct btrfs_root *root, struct btrfs_block_group_cache *cache); -int btrfs_set_block_group_rw(struct btrfs_root *root, - struct btrfs_block_group_cache *cache); +int btrfs_set_block_group_rw(struct btrfs_block_group_cache *cache); void btrfs_put_block_group_cache(struct btrfs_fs_info *info); u64 btrfs_account_ro_block_groups_free_space(struct btrfs_space_info *sinfo); int btrfs_error_unpin_extent_range(struct btrfs_root *root, diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c index 98b6a71..c67a1e6 100644 --- a/fs/btrfs/disk-io.c +++ b/fs/btrfs/disk-io.c @@ -51,8 +51,7 @@ static void btrfs_check_super_valid(struct btrfs_fs_info *fs_info, int read_only); static int btrfs_destroy_ordered_operations(struct btrfs_root *root); static int btrfs_destroy_ordered_extents(struct btrfs_root *root); -static int btrfs_destroy_delayed_refs(struct btrfs_transaction *trans, - struct btrfs_root *root); +static int btrfs_destroy_delayed_refs(struct btrfs_transaction *trans); static int btrfs_destroy_pending_snapshots(struct btrfs_transaction *t); static int btrfs_destroy_delalloc_inodes(struct btrfs_root *root); static int btrfs_destroy_marked_extents(struct btrfs_root *root, @@ -194,7 +193,7 @@ out: return em; } -u32 btrfs_csum_data(struct btrfs_root *root, char *data, u32 seed, size_t len) +u32 btrfs_csum_data(char *data, u32 seed, size_t len) { return crc32c(seed, data, len); } @@ -233,7 +232,7 @@ static int csum_tree_block(struct btrfs_root *root, struct extent_buffer *buf, if (err) return 1; cur_len = min(len, map_len - (offset - map_start)); - crc = btrfs_csum_data(root, kaddr + offset - map_start, + crc = btrfs_csum_data(kaddr + offset - map_start, crc, cur_len); len -= cur_len; offset += cur_len; @@ -2259,7 +2258,7 @@ static int write_dev_supers(struct btrfs_device *device, btrfs_set_super_bytenr(sb, bytenr); crc = ~(u32)0; - crc = btrfs_csum_data(NULL, (char *)sb + + crc = btrfs_csum_data((char *)sb + BTRFS_CSUM_SIZE, crc, BTRFS_SUPER_INFO_SIZE - BTRFS_CSUM_SIZE); @@ -2830,8 +2829,7 @@ static int btrfs_destroy_ordered_extents(struct btrfs_root *root) return 0; } -static int btrfs_destroy_delayed_refs(struct btrfs_transaction *trans, - struct btrfs_root *root) +static int btrfs_destroy_delayed_refs(struct btrfs_transaction *trans) { struct rb_node *node; struct btrfs_delayed_ref_root *delayed_refs; @@ -3037,7 +3035,7 @@ static int btrfs_cleanup_transaction(struct btrfs_root *root) btrfs_destroy_ordered_extents(root); - btrfs_destroy_delayed_refs(t, root); + btrfs_destroy_delayed_refs(t); btrfs_block_rsv_release(root, &root->fs_info->trans_block_rsv, diff --git a/fs/btrfs/disk-io.h b/fs/btrfs/disk-io.h index a0b610a..b5e0a55 100644 --- a/fs/btrfs/disk-io.h +++ b/fs/btrfs/disk-io.h @@ -67,7 +67,7 @@ void btrfs_mark_buffer_dirty(struct extent_buffer *buf); int btrfs_buffer_uptodate(struct extent_buffer *buf, u64 parent_transid); int btrfs_set_buffer_uptodate(struct extent_buffer *buf); int btrfs_read_buffer(struct extent_buffer *buf, u64 parent_transid); -u32 btrfs_csum_data(struct btrfs_root *root, char *data, u32 seed, size_t len); +u32 btrfs_csum_data(char *data, u32 seed, size_t len); void btrfs_csum_final(u32 crc, char *result); int btrfs_bio_wq_end_io(struct btrfs_fs_info *info, struct bio *bio, int metadata); diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c index 169bd62..2236c77 100644 --- a/fs/btrfs/extent-tree.c +++ b/fs/btrfs/extent-tree.c @@ -1232,8 +1232,7 @@ static noinline int remove_extent_data_ref(struct btrfs_trans_handle *trans, return ret; } -static noinline u32 extent_data_ref_count(struct btrfs_root *root, - struct btrfs_path *path, +static noinline u32 extent_data_ref_count(struct btrfs_path *path, struct btrfs_extent_inline_ref *iref) { struct btrfs_key key; @@ -2322,7 +2321,6 @@ out: } int btrfs_set_disk_extent_flags(struct btrfs_trans_handle *trans, - struct btrfs_root *root, u64 bytenr, u64 num_bytes, u64 flags, int is_data) { @@ -4495,7 +4493,7 @@ static int __btrfs_free_extent(struct btrfs_trans_handle *trans, } else { if (found_extent) { BUG_ON(is_data && refs_to_drop != - extent_data_ref_count(root, path, iref)); + extent_data_ref_count(path, iref)); if (iref) { BUG_ON(path->slots[0] != extent_slot); } else { @@ -4533,7 +4531,7 @@ static int __btrfs_free_extent(struct btrfs_trans_handle *trans, * removes it from the tree. */ static noinline int check_ref_cleanup(struct btrfs_trans_handle *trans, - struct btrfs_root *root, u64 bytenr) + u64 bytenr) { struct btrfs_delayed_ref_head *head; struct btrfs_delayed_ref_root *delayed_refs; @@ -4630,7 +4628,7 @@ void btrfs_free_tree_block(struct btrfs_trans_handle *trans, if (btrfs_header_generation(buf) == trans->transid) { if (root->root_key.objectid != BTRFS_TREE_LOG_OBJECTID) { - ret = check_ref_cleanup(trans, root, buf->start); + ret = check_ref_cleanup(trans, buf->start); if (!ret) goto pin; } @@ -5502,7 +5500,6 @@ static int alloc_reserved_tree_block(struct btrfs_trans_handle *trans, } int btrfs_alloc_reserved_file_extent(struct btrfs_trans_handle *trans, - struct btrfs_root *root, u64 root_objectid, u64 owner, u64 offset, struct btrfs_key *ins) { @@ -5886,7 +5883,7 @@ static noinline int walk_down_proc(struct btrfs_trans_handle *trans, BUG_ON(ret); ret = btrfs_dec_ref(trans, root, eb, 0); BUG_ON(ret); - ret = btrfs_set_disk_extent_flags(trans, root, eb->start, + ret = btrfs_set_disk_extent_flags(trans, eb->start, eb->len, flag, 0); BUG_ON(ret); wc->flags[level] |= flag; @@ -6612,8 +6609,7 @@ u64 btrfs_account_ro_block_groups_free_space(struct btrfs_space_info *sinfo) return free_bytes; } -int btrfs_set_block_group_rw(struct btrfs_root *root, - struct btrfs_block_group_cache *cache) +int btrfs_set_block_group_rw(struct btrfs_block_group_cache *cache) { struct btrfs_space_info *sinfo = cache->space_info; u64 num_bytes; diff --git a/fs/btrfs/file-item.c b/fs/btrfs/file-item.c index 90d4ee5..dd8afad 100644 --- a/fs/btrfs/file-item.c +++ b/fs/btrfs/file-item.c @@ -439,8 +439,7 @@ int btrfs_csum_one_bio(struct btrfs_root *root, struct inode *inode, data = kmap_atomic(bvec->bv_page, KM_USER0); sector_sum->sum = ~(u32)0; - sector_sum->sum = btrfs_csum_data(root, - data + bvec->bv_offset, + sector_sum->sum = btrfs_csum_data(data + bvec->bv_offset, sector_sum->sum, bvec->bv_len); kunmap_atomic(data, KM_USER0); diff --git a/fs/btrfs/free-space-cache.c b/fs/btrfs/free-space-cache.c index 70d4579..898f184 100644 --- a/fs/btrfs/free-space-cache.c +++ b/fs/btrfs/free-space-cache.c @@ -361,7 +361,7 @@ int __load_free_space_cache(struct btrfs_root *root, struct inode *inode, /* First lets check our crc before we do anything fun */ cur_crc = ~(u32)0; - cur_crc = btrfs_csum_data(root, addr + start_offset, cur_crc, + cur_crc = btrfs_csum_data(addr + start_offset, cur_crc, PAGE_CACHE_SIZE - start_offset); btrfs_csum_final(cur_crc, (char *)&cur_crc); if (cur_crc != *crc) { @@ -730,7 +730,7 @@ int __btrfs_write_out_cache(struct btrfs_root *root, struct inode *inode, entry++; } *crc = ~(u32)0; - *crc = btrfs_csum_data(root, addr + start_offset, *crc, + *crc = btrfs_csum_data(addr + start_offset, *crc, PAGE_CACHE_SIZE - start_offset); kunmap(page); @@ -757,7 +757,7 @@ int __btrfs_write_out_cache(struct btrfs_root *root, struct inode *inode, addr = kmap(page); memcpy(addr, entry->bitmap, PAGE_CACHE_SIZE); *crc = ~(u32)0; - *crc = btrfs_csum_data(root, addr, *crc, PAGE_CACHE_SIZE); + *crc = btrfs_csum_data(addr, *crc, PAGE_CACHE_SIZE); kunmap(page); btrfs_csum_final(*crc, (char *)crc); crc++; diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index 39a9d57..25e73f1 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c @@ -1692,7 +1692,7 @@ static int insert_reserved_file_extent(struct btrfs_trans_handle *trans, ins.objectid = disk_bytenr; ins.offset = disk_num_bytes; ins.type = BTRFS_EXTENT_ITEM_KEY; - ret = btrfs_alloc_reserved_file_extent(trans, root, + ret = btrfs_alloc_reserved_file_extent(trans, root->root_key.objectid, btrfs_ino(inode), file_pos, &ins); BUG_ON(ret); @@ -2009,7 +2009,7 @@ static int btrfs_readpage_end_io_hook(struct page *page, u64 start, u64 end, if (ret) goto zeroit; - csum = btrfs_csum_data(root, kaddr + offset, csum, end - start + 1); + csum = btrfs_csum_data(kaddr + offset, csum, end - start + 1); btrfs_csum_final(csum, (char *)&csum); if (csum != private) goto zeroit; @@ -5678,7 +5678,6 @@ static void btrfs_endio_direct_read(struct bio *bio, int err) struct bio_vec *bvec_end = bio->bi_io_vec + bio->bi_vcnt - 1; struct bio_vec *bvec = bio->bi_io_vec; struct inode *inode = dip->inode; - struct btrfs_root *root = BTRFS_I(inode)->root; u64 start; u32 *private = dip->csums; @@ -5692,7 +5691,7 @@ static void btrfs_endio_direct_read(struct bio *bio, int err) local_irq_save(flags); kaddr = kmap_atomic(page, KM_IRQ0); - csum = btrfs_csum_data(root, kaddr + bvec->bv_offset, + csum = btrfs_csum_data(kaddr + bvec->bv_offset, csum, bvec->bv_len); btrfs_csum_final(csum, (char *)&csum); kunmap_atomic(kaddr, KM_IRQ0); diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c index 85e818c..db439a3 100644 --- a/fs/btrfs/ioctl.c +++ b/fs/btrfs/ioctl.c @@ -1505,8 +1505,7 @@ static noinline int key_in_sk(struct btrfs_key *key, return 1; } -static noinline int copy_to_sk(struct btrfs_root *root, - struct btrfs_path *path, +static noinline int copy_to_sk(struct btrfs_path *path, struct btrfs_key *key, struct btrfs_ioctl_search_key *sk, char *buf, @@ -1640,7 +1639,7 @@ static noinline int search_ioctl(struct inode *inode, ret = 0; goto err; } - ret = copy_to_sk(root, path, &key, sk, args->buf, + ret = copy_to_sk(path, &key, sk, args->buf, &sk_offset, &num_found); btrfs_release_path(path); if (ret || num_found >= sk->nr_items) diff --git a/fs/btrfs/relocation.c b/fs/btrfs/relocation.c index ca38eca..d084400 100644 --- a/fs/btrfs/relocation.c +++ b/fs/btrfs/relocation.c @@ -4043,7 +4043,7 @@ int btrfs_relocate_block_group(struct btrfs_root *extent_root, u64 group_start) WARN_ON(btrfs_block_group_used(&rc->block_group->item) > 0); out: if (err && rw) - btrfs_set_block_group_rw(extent_root, rc->block_group); + btrfs_set_block_group_rw(rc->block_group); iput(rc->data_inode); btrfs_put_block_group(rc->block_group); kfree(rc); diff --git a/fs/btrfs/scrub.c b/fs/btrfs/scrub.c index 6dfed0c..1541915 100644 --- a/fs/btrfs/scrub.c +++ b/fs/btrfs/scrub.c @@ -467,12 +467,11 @@ static int scrub_checksum_data(struct scrub_dev *sdev, u8 csum[BTRFS_CSUM_SIZE]; u32 crc = ~(u32)0; int fail = 0; - struct btrfs_root *root = sdev->dev->dev_root; if (!spag->have_csum) return 0; - crc = btrfs_csum_data(root, buffer, crc, PAGE_SIZE); + crc = btrfs_csum_data(buffer, crc, PAGE_SIZE); btrfs_csum_final(crc, csum); if (memcmp(csum, spag->csum, sdev->csum_size)) fail = 1; @@ -519,7 +518,7 @@ static int scrub_checksum_tree_block(struct scrub_dev *sdev, BTRFS_UUID_SIZE)) ++fail; - crc = btrfs_csum_data(root, buffer + BTRFS_CSUM_SIZE, crc, + crc = btrfs_csum_data(buffer + BTRFS_CSUM_SIZE, crc, PAGE_SIZE - BTRFS_CSUM_SIZE); btrfs_csum_final(crc, csum); if (memcmp(csum, h->csum, sdev->csum_size)) @@ -560,7 +559,7 @@ static int scrub_checksum_super(struct scrub_bio *sbio, void *buffer) if (memcmp(s->fsid, fs_info->fsid, BTRFS_UUID_SIZE)) ++fail; - crc = btrfs_csum_data(root, buffer + BTRFS_CSUM_SIZE, crc, + crc = btrfs_csum_data(buffer + BTRFS_CSUM_SIZE, crc, PAGE_SIZE - BTRFS_CSUM_SIZE); btrfs_csum_final(crc, csum); if (memcmp(csum, s->csum, sbio->sdev->csum_size)) -- 1.7.3.4 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH v1 1/3] btrfs: remove struct btrfs_root parameter where unused 2011-05-31 10:16 ` [PATCH v1 1/3] btrfs: remove struct btrfs_root parameter where unused Arne Jansen @ 2011-06-01 0:02 ` Tsutomu Itoh 0 siblings, 0 replies; 5+ messages in thread From: Tsutomu Itoh @ 2011-06-01 0:02 UTC (permalink / raw) To: Arne Jansen; +Cc: chris.mason, linux-btrfs, julia Hi, (2011/05/31 19:16), Arne Jansen wrote: > The following functions had a struct btrfs_root * parameter which went > unused: > > btrfs_set_block_group_rw > btrfs_destroy_delayed_refs > btrfs_csum_data > extent_data_ref_count > copy_to_sk > > Signed-off-by: Arne Jansen <sensille@gmx.net> > --- > fs/btrfs/compression.c | 3 +-- > fs/btrfs/ctree.c | 20 ++++++++++---------- > fs/btrfs/ctree.h | 5 +---- > fs/btrfs/disk-io.c | 14 ++++++-------- > fs/btrfs/disk-io.h | 2 +- > fs/btrfs/extent-tree.c | 16 ++++++---------- > fs/btrfs/file-item.c | 3 +-- > fs/btrfs/free-space-cache.c | 6 +++--- > fs/btrfs/inode.c | 7 +++---- > fs/btrfs/ioctl.c | 5 ++--- > fs/btrfs/relocation.c | 2 +- > fs/btrfs/scrub.c | 7 +++---- > 12 files changed, 38 insertions(+), 52 deletions(-) > > diff --git a/fs/btrfs/compression.c b/fs/btrfs/compression.c > index bfe42b0..2182cc5 100644 > --- a/fs/btrfs/compression.c > +++ b/fs/btrfs/compression.c > @@ -105,7 +105,6 @@ static int check_compressed_csum(struct inode *inode, > u64 disk_start) > { > int ret; > - struct btrfs_root *root = BTRFS_I(inode)->root; > struct page *page; > unsigned long i; > char *kaddr; > @@ -120,7 +119,7 @@ static int check_compressed_csum(struct inode *inode, > csum = ~(u32)0; > > kaddr = kmap_atomic(page, KM_USER0); > - csum = btrfs_csum_data(root, kaddr, csum, PAGE_CACHE_SIZE); > + csum = btrfs_csum_data(kaddr, csum, PAGE_CACHE_SIZE); > btrfs_csum_final(csum, (char *)&csum); > kunmap_atomic(kaddr, KM_USER0); > > diff --git a/fs/btrfs/ctree.c b/fs/btrfs/ctree.c > index b0e18d9..670bed7 100644 > --- a/fs/btrfs/ctree.c > +++ b/fs/btrfs/ctree.c > @@ -339,7 +339,7 @@ static noinline int update_ref_for_cow(struct btrfs_trans_handle *trans, > BUG_ON(ret); > } > if (new_flags != 0) { > - ret = btrfs_set_disk_extent_flags(trans, root, > + ret = btrfs_set_disk_extent_flags(trans, > buf->start, > buf->len, > new_flags, 0); > @@ -1763,7 +1763,7 @@ done: > * fixing up the blocks in ram so the tree is consistent. > */ > static int fixup_low_keys(struct btrfs_trans_handle *trans, > - struct btrfs_root *root, struct btrfs_path *path, > + struct btrfs_path *path, > struct btrfs_disk_key *key, int level) 'trans' is also unnecessary in fixup_low_keys(). (http://marc.info/?l=linux-btrfs&m=130337980625475&w=2) Thanks, Tsutomu > { > int i; > @@ -1814,7 +1814,7 @@ int btrfs_set_item_key_safe(struct btrfs_trans_handle *trans, > btrfs_set_item_key(eb, &disk_key, slot); > btrfs_mark_buffer_dirty(eb); > if (slot == 0) > - fixup_low_keys(trans, root, path, &disk_key, 1); > + fixup_low_keys(trans, path, &disk_key, 1); > return 0; > } > > @@ -2579,7 +2579,7 @@ static noinline int __push_leaf_left(struct btrfs_trans_handle *trans, > clean_tree_block(trans, root, right); > > btrfs_item_key(right, &disk_key, 0); > - wret = fixup_low_keys(trans, root, path, &disk_key, 1); > + wret = fixup_low_keys(trans, path, &disk_key, 1); > if (wret) > ret = wret; > > @@ -2966,7 +2966,7 @@ again: > path->nodes[0] = right; > path->slots[0] = 0; > if (path->slots[1] == 0) { > - wret = fixup_low_keys(trans, root, > + wret = fixup_low_keys(trans, > path, &disk_key, 1); > if (wret) > ret = wret; > @@ -3301,7 +3301,7 @@ int btrfs_truncate_item(struct btrfs_trans_handle *trans, > btrfs_set_disk_key_offset(&disk_key, offset + size_diff); > btrfs_set_item_key(leaf, &disk_key, slot); > if (slot == 0) > - fixup_low_keys(trans, root, path, &disk_key, 1); > + fixup_low_keys(trans, path, &disk_key, 1); > } > > item = btrfs_item_nr(leaf, slot); > @@ -3532,7 +3532,7 @@ int btrfs_insert_some_items(struct btrfs_trans_handle *trans, > ret = 0; > if (slot == 0) { > btrfs_cpu_key_to_disk(&disk_key, cpu_key); > - ret = fixup_low_keys(trans, root, path, &disk_key, 1); > + ret = fixup_low_keys(trans, path, &disk_key, 1); > } > > if (btrfs_leaf_free_space(root, leaf) < 0) { > @@ -3638,7 +3638,7 @@ int setup_items_for_insert(struct btrfs_trans_handle *trans, > ret = 0; > if (slot == 0) { > btrfs_cpu_key_to_disk(&disk_key, cpu_key); > - ret = fixup_low_keys(trans, root, path, &disk_key, 1); > + ret = fixup_low_keys(trans, path, &disk_key, 1); > } > btrfs_unlock_up_safe(path, 1); > btrfs_mark_buffer_dirty(leaf); > @@ -3745,7 +3745,7 @@ static int del_ptr(struct btrfs_trans_handle *trans, struct btrfs_root *root, > struct btrfs_disk_key disk_key; > > btrfs_node_key(parent, &disk_key, 0); > - wret = fixup_low_keys(trans, root, path, &disk_key, level + 1); > + wret = fixup_low_keys(trans, path, &disk_key, level + 1); > if (wret) > ret = wret; > } > @@ -3862,7 +3862,7 @@ int btrfs_del_items(struct btrfs_trans_handle *trans, struct btrfs_root *root, > struct btrfs_disk_key disk_key; > > btrfs_item_key(leaf, &disk_key, 0); > - wret = fixup_low_keys(trans, root, path, > + wret = fixup_low_keys(trans, path, > &disk_key, 1); > if (wret) > ret = wret; > diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h > index 6c093fa..b51a06c 100644 > --- a/fs/btrfs/ctree.h > +++ b/fs/btrfs/ctree.h > @@ -2148,7 +2148,6 @@ struct extent_buffer *btrfs_init_new_buffer(struct btrfs_trans_handle *trans, > u64 bytenr, u32 blocksize, > int level); > int btrfs_alloc_reserved_file_extent(struct btrfs_trans_handle *trans, > - struct btrfs_root *root, > u64 root_objectid, u64 owner, > u64 offset, struct btrfs_key *ins); > int btrfs_alloc_logged_file_extent(struct btrfs_trans_handle *trans, > @@ -2166,7 +2165,6 @@ int btrfs_inc_ref(struct btrfs_trans_handle *trans, struct btrfs_root *root, > int btrfs_dec_ref(struct btrfs_trans_handle *trans, struct btrfs_root *root, > struct extent_buffer *buf, int full_backref); > int btrfs_set_disk_extent_flags(struct btrfs_trans_handle *trans, > - struct btrfs_root *root, > u64 bytenr, u64 num_bytes, u64 flags, > int is_data); > int btrfs_free_extent(struct btrfs_trans_handle *trans, > @@ -2240,8 +2238,7 @@ void btrfs_block_rsv_release(struct btrfs_root *root, > u64 num_bytes); > int btrfs_set_block_group_ro(struct btrfs_root *root, > struct btrfs_block_group_cache *cache); > -int btrfs_set_block_group_rw(struct btrfs_root *root, > - struct btrfs_block_group_cache *cache); > +int btrfs_set_block_group_rw(struct btrfs_block_group_cache *cache); > void btrfs_put_block_group_cache(struct btrfs_fs_info *info); > u64 btrfs_account_ro_block_groups_free_space(struct btrfs_space_info *sinfo); > int btrfs_error_unpin_extent_range(struct btrfs_root *root, > diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c > index 98b6a71..c67a1e6 100644 > --- a/fs/btrfs/disk-io.c > +++ b/fs/btrfs/disk-io.c > @@ -51,8 +51,7 @@ static void btrfs_check_super_valid(struct btrfs_fs_info *fs_info, > int read_only); > static int btrfs_destroy_ordered_operations(struct btrfs_root *root); > static int btrfs_destroy_ordered_extents(struct btrfs_root *root); > -static int btrfs_destroy_delayed_refs(struct btrfs_transaction *trans, > - struct btrfs_root *root); > +static int btrfs_destroy_delayed_refs(struct btrfs_transaction *trans); > static int btrfs_destroy_pending_snapshots(struct btrfs_transaction *t); > static int btrfs_destroy_delalloc_inodes(struct btrfs_root *root); > static int btrfs_destroy_marked_extents(struct btrfs_root *root, > @@ -194,7 +193,7 @@ out: > return em; > } > > -u32 btrfs_csum_data(struct btrfs_root *root, char *data, u32 seed, size_t len) > +u32 btrfs_csum_data(char *data, u32 seed, size_t len) > { > return crc32c(seed, data, len); > } > @@ -233,7 +232,7 @@ static int csum_tree_block(struct btrfs_root *root, struct extent_buffer *buf, > if (err) > return 1; > cur_len = min(len, map_len - (offset - map_start)); > - crc = btrfs_csum_data(root, kaddr + offset - map_start, > + crc = btrfs_csum_data(kaddr + offset - map_start, > crc, cur_len); > len -= cur_len; > offset += cur_len; > @@ -2259,7 +2258,7 @@ static int write_dev_supers(struct btrfs_device *device, > btrfs_set_super_bytenr(sb, bytenr); > > crc = ~(u32)0; > - crc = btrfs_csum_data(NULL, (char *)sb + > + crc = btrfs_csum_data((char *)sb + > BTRFS_CSUM_SIZE, crc, > BTRFS_SUPER_INFO_SIZE - > BTRFS_CSUM_SIZE); > @@ -2830,8 +2829,7 @@ static int btrfs_destroy_ordered_extents(struct btrfs_root *root) > return 0; > } > > -static int btrfs_destroy_delayed_refs(struct btrfs_transaction *trans, > - struct btrfs_root *root) > +static int btrfs_destroy_delayed_refs(struct btrfs_transaction *trans) > { > struct rb_node *node; > struct btrfs_delayed_ref_root *delayed_refs; > @@ -3037,7 +3035,7 @@ static int btrfs_cleanup_transaction(struct btrfs_root *root) > > btrfs_destroy_ordered_extents(root); > > - btrfs_destroy_delayed_refs(t, root); > + btrfs_destroy_delayed_refs(t); > > btrfs_block_rsv_release(root, > &root->fs_info->trans_block_rsv, > diff --git a/fs/btrfs/disk-io.h b/fs/btrfs/disk-io.h > index a0b610a..b5e0a55 100644 > --- a/fs/btrfs/disk-io.h > +++ b/fs/btrfs/disk-io.h > @@ -67,7 +67,7 @@ void btrfs_mark_buffer_dirty(struct extent_buffer *buf); > int btrfs_buffer_uptodate(struct extent_buffer *buf, u64 parent_transid); > int btrfs_set_buffer_uptodate(struct extent_buffer *buf); > int btrfs_read_buffer(struct extent_buffer *buf, u64 parent_transid); > -u32 btrfs_csum_data(struct btrfs_root *root, char *data, u32 seed, size_t len); > +u32 btrfs_csum_data(char *data, u32 seed, size_t len); > void btrfs_csum_final(u32 crc, char *result); > int btrfs_bio_wq_end_io(struct btrfs_fs_info *info, struct bio *bio, > int metadata); > diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c > index 169bd62..2236c77 100644 > --- a/fs/btrfs/extent-tree.c > +++ b/fs/btrfs/extent-tree.c > @@ -1232,8 +1232,7 @@ static noinline int remove_extent_data_ref(struct btrfs_trans_handle *trans, > return ret; > } > > -static noinline u32 extent_data_ref_count(struct btrfs_root *root, > - struct btrfs_path *path, > +static noinline u32 extent_data_ref_count(struct btrfs_path *path, > struct btrfs_extent_inline_ref *iref) > { > struct btrfs_key key; > @@ -2322,7 +2321,6 @@ out: > } > > int btrfs_set_disk_extent_flags(struct btrfs_trans_handle *trans, > - struct btrfs_root *root, > u64 bytenr, u64 num_bytes, u64 flags, > int is_data) > { > @@ -4495,7 +4493,7 @@ static int __btrfs_free_extent(struct btrfs_trans_handle *trans, > } else { > if (found_extent) { > BUG_ON(is_data && refs_to_drop != > - extent_data_ref_count(root, path, iref)); > + extent_data_ref_count(path, iref)); > if (iref) { > BUG_ON(path->slots[0] != extent_slot); > } else { > @@ -4533,7 +4531,7 @@ static int __btrfs_free_extent(struct btrfs_trans_handle *trans, > * removes it from the tree. > */ > static noinline int check_ref_cleanup(struct btrfs_trans_handle *trans, > - struct btrfs_root *root, u64 bytenr) > + u64 bytenr) > { > struct btrfs_delayed_ref_head *head; > struct btrfs_delayed_ref_root *delayed_refs; > @@ -4630,7 +4628,7 @@ void btrfs_free_tree_block(struct btrfs_trans_handle *trans, > > if (btrfs_header_generation(buf) == trans->transid) { > if (root->root_key.objectid != BTRFS_TREE_LOG_OBJECTID) { > - ret = check_ref_cleanup(trans, root, buf->start); > + ret = check_ref_cleanup(trans, buf->start); > if (!ret) > goto pin; > } > @@ -5502,7 +5500,6 @@ static int alloc_reserved_tree_block(struct btrfs_trans_handle *trans, > } > > int btrfs_alloc_reserved_file_extent(struct btrfs_trans_handle *trans, > - struct btrfs_root *root, > u64 root_objectid, u64 owner, > u64 offset, struct btrfs_key *ins) > { > @@ -5886,7 +5883,7 @@ static noinline int walk_down_proc(struct btrfs_trans_handle *trans, > BUG_ON(ret); > ret = btrfs_dec_ref(trans, root, eb, 0); > BUG_ON(ret); > - ret = btrfs_set_disk_extent_flags(trans, root, eb->start, > + ret = btrfs_set_disk_extent_flags(trans, eb->start, > eb->len, flag, 0); > BUG_ON(ret); > wc->flags[level] |= flag; > @@ -6612,8 +6609,7 @@ u64 btrfs_account_ro_block_groups_free_space(struct btrfs_space_info *sinfo) > return free_bytes; > } > > -int btrfs_set_block_group_rw(struct btrfs_root *root, > - struct btrfs_block_group_cache *cache) > +int btrfs_set_block_group_rw(struct btrfs_block_group_cache *cache) > { > struct btrfs_space_info *sinfo = cache->space_info; > u64 num_bytes; > diff --git a/fs/btrfs/file-item.c b/fs/btrfs/file-item.c > index 90d4ee5..dd8afad 100644 > --- a/fs/btrfs/file-item.c > +++ b/fs/btrfs/file-item.c > @@ -439,8 +439,7 @@ int btrfs_csum_one_bio(struct btrfs_root *root, struct inode *inode, > > data = kmap_atomic(bvec->bv_page, KM_USER0); > sector_sum->sum = ~(u32)0; > - sector_sum->sum = btrfs_csum_data(root, > - data + bvec->bv_offset, > + sector_sum->sum = btrfs_csum_data(data + bvec->bv_offset, > sector_sum->sum, > bvec->bv_len); > kunmap_atomic(data, KM_USER0); > diff --git a/fs/btrfs/free-space-cache.c b/fs/btrfs/free-space-cache.c > index 70d4579..898f184 100644 > --- a/fs/btrfs/free-space-cache.c > +++ b/fs/btrfs/free-space-cache.c > @@ -361,7 +361,7 @@ int __load_free_space_cache(struct btrfs_root *root, struct inode *inode, > > /* First lets check our crc before we do anything fun */ > cur_crc = ~(u32)0; > - cur_crc = btrfs_csum_data(root, addr + start_offset, cur_crc, > + cur_crc = btrfs_csum_data(addr + start_offset, cur_crc, > PAGE_CACHE_SIZE - start_offset); > btrfs_csum_final(cur_crc, (char *)&cur_crc); > if (cur_crc != *crc) { > @@ -730,7 +730,7 @@ int __btrfs_write_out_cache(struct btrfs_root *root, struct inode *inode, > entry++; > } > *crc = ~(u32)0; > - *crc = btrfs_csum_data(root, addr + start_offset, *crc, > + *crc = btrfs_csum_data(addr + start_offset, *crc, > PAGE_CACHE_SIZE - start_offset); > kunmap(page); > > @@ -757,7 +757,7 @@ int __btrfs_write_out_cache(struct btrfs_root *root, struct inode *inode, > addr = kmap(page); > memcpy(addr, entry->bitmap, PAGE_CACHE_SIZE); > *crc = ~(u32)0; > - *crc = btrfs_csum_data(root, addr, *crc, PAGE_CACHE_SIZE); > + *crc = btrfs_csum_data(addr, *crc, PAGE_CACHE_SIZE); > kunmap(page); > btrfs_csum_final(*crc, (char *)crc); > crc++; > diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c > index 39a9d57..25e73f1 100644 > --- a/fs/btrfs/inode.c > +++ b/fs/btrfs/inode.c > @@ -1692,7 +1692,7 @@ static int insert_reserved_file_extent(struct btrfs_trans_handle *trans, > ins.objectid = disk_bytenr; > ins.offset = disk_num_bytes; > ins.type = BTRFS_EXTENT_ITEM_KEY; > - ret = btrfs_alloc_reserved_file_extent(trans, root, > + ret = btrfs_alloc_reserved_file_extent(trans, > root->root_key.objectid, > btrfs_ino(inode), file_pos, &ins); > BUG_ON(ret); > @@ -2009,7 +2009,7 @@ static int btrfs_readpage_end_io_hook(struct page *page, u64 start, u64 end, > if (ret) > goto zeroit; > > - csum = btrfs_csum_data(root, kaddr + offset, csum, end - start + 1); > + csum = btrfs_csum_data(kaddr + offset, csum, end - start + 1); > btrfs_csum_final(csum, (char *)&csum); > if (csum != private) > goto zeroit; > @@ -5678,7 +5678,6 @@ static void btrfs_endio_direct_read(struct bio *bio, int err) > struct bio_vec *bvec_end = bio->bi_io_vec + bio->bi_vcnt - 1; > struct bio_vec *bvec = bio->bi_io_vec; > struct inode *inode = dip->inode; > - struct btrfs_root *root = BTRFS_I(inode)->root; > u64 start; > u32 *private = dip->csums; > > @@ -5692,7 +5691,7 @@ static void btrfs_endio_direct_read(struct bio *bio, int err) > > local_irq_save(flags); > kaddr = kmap_atomic(page, KM_IRQ0); > - csum = btrfs_csum_data(root, kaddr + bvec->bv_offset, > + csum = btrfs_csum_data(kaddr + bvec->bv_offset, > csum, bvec->bv_len); > btrfs_csum_final(csum, (char *)&csum); > kunmap_atomic(kaddr, KM_IRQ0); > diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c > index 85e818c..db439a3 100644 > --- a/fs/btrfs/ioctl.c > +++ b/fs/btrfs/ioctl.c > @@ -1505,8 +1505,7 @@ static noinline int key_in_sk(struct btrfs_key *key, > return 1; > } > > -static noinline int copy_to_sk(struct btrfs_root *root, > - struct btrfs_path *path, > +static noinline int copy_to_sk(struct btrfs_path *path, > struct btrfs_key *key, > struct btrfs_ioctl_search_key *sk, > char *buf, > @@ -1640,7 +1639,7 @@ static noinline int search_ioctl(struct inode *inode, > ret = 0; > goto err; > } > - ret = copy_to_sk(root, path, &key, sk, args->buf, > + ret = copy_to_sk(path, &key, sk, args->buf, > &sk_offset, &num_found); > btrfs_release_path(path); > if (ret || num_found >= sk->nr_items) > diff --git a/fs/btrfs/relocation.c b/fs/btrfs/relocation.c > index ca38eca..d084400 100644 > --- a/fs/btrfs/relocation.c > +++ b/fs/btrfs/relocation.c > @@ -4043,7 +4043,7 @@ int btrfs_relocate_block_group(struct btrfs_root *extent_root, u64 group_start) > WARN_ON(btrfs_block_group_used(&rc->block_group->item) > 0); > out: > if (err && rw) > - btrfs_set_block_group_rw(extent_root, rc->block_group); > + btrfs_set_block_group_rw(rc->block_group); > iput(rc->data_inode); > btrfs_put_block_group(rc->block_group); > kfree(rc); > diff --git a/fs/btrfs/scrub.c b/fs/btrfs/scrub.c > index 6dfed0c..1541915 100644 > --- a/fs/btrfs/scrub.c > +++ b/fs/btrfs/scrub.c > @@ -467,12 +467,11 @@ static int scrub_checksum_data(struct scrub_dev *sdev, > u8 csum[BTRFS_CSUM_SIZE]; > u32 crc = ~(u32)0; > int fail = 0; > - struct btrfs_root *root = sdev->dev->dev_root; > > if (!spag->have_csum) > return 0; > > - crc = btrfs_csum_data(root, buffer, crc, PAGE_SIZE); > + crc = btrfs_csum_data(buffer, crc, PAGE_SIZE); > btrfs_csum_final(crc, csum); > if (memcmp(csum, spag->csum, sdev->csum_size)) > fail = 1; > @@ -519,7 +518,7 @@ static int scrub_checksum_tree_block(struct scrub_dev *sdev, > BTRFS_UUID_SIZE)) > ++fail; > > - crc = btrfs_csum_data(root, buffer + BTRFS_CSUM_SIZE, crc, > + crc = btrfs_csum_data(buffer + BTRFS_CSUM_SIZE, crc, > PAGE_SIZE - BTRFS_CSUM_SIZE); > btrfs_csum_final(crc, csum); > if (memcmp(csum, h->csum, sdev->csum_size)) > @@ -560,7 +559,7 @@ static int scrub_checksum_super(struct scrub_bio *sbio, void *buffer) > if (memcmp(s->fsid, fs_info->fsid, BTRFS_UUID_SIZE)) > ++fail; > > - crc = btrfs_csum_data(root, buffer + BTRFS_CSUM_SIZE, crc, > + crc = btrfs_csum_data(buffer + BTRFS_CSUM_SIZE, crc, > PAGE_SIZE - BTRFS_CSUM_SIZE); > btrfs_csum_final(crc, csum); > if (memcmp(csum, s->csum, sbio->sdev->csum_size)) ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH v1 2/3] btrfs: pass fs_info to btrfs_test_opt instead of root 2011-05-31 10:16 [PATCH v1 0/3] btrfs: cleanup: pass fs_info instead of root where possible Arne Jansen 2011-05-31 10:16 ` [PATCH v1 1/3] btrfs: remove struct btrfs_root parameter where unused Arne Jansen @ 2011-05-31 10:16 ` Arne Jansen 2011-05-31 10:38 ` [PATCH v1 0/3] btrfs: cleanup: pass fs_info instead of root where possible Arne Jansen 2 siblings, 0 replies; 5+ messages in thread From: Arne Jansen @ 2011-05-31 10:16 UTC (permalink / raw) To: chris.mason, linux-btrfs; +Cc: julia btrfs_test_opt only needs fs_info from the root passed. So just pass the fs_info directly. Signed-off-by: Arne Jansen <sensille@gmx.net> --- fs/btrfs/ctree.h | 2 +- fs/btrfs/disk-io.c | 8 +++--- fs/btrfs/extent-tree.c | 55 ++++++++++++++++++++++--------------------- fs/btrfs/file.c | 2 +- fs/btrfs/free-space-cache.c | 2 +- fs/btrfs/inode.c | 10 ++++---- fs/btrfs/ioctl.c | 2 +- fs/btrfs/super.c | 30 +++++++++++----------- fs/btrfs/transaction.c | 5 ++- fs/btrfs/tree-defrag.c | 2 +- fs/btrfs/tree-log.c | 2 +- fs/btrfs/volumes.c | 9 ++++--- 12 files changed, 66 insertions(+), 63 deletions(-) diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h index b51a06c..b2fdcca 100644 --- a/fs/btrfs/ctree.h +++ b/fs/btrfs/ctree.h @@ -1343,7 +1343,7 @@ struct btrfs_ioctl_defrag_range_args { #define btrfs_clear_opt(o, opt) ((o) &= ~BTRFS_MOUNT_##opt) #define btrfs_set_opt(o, opt) ((o) |= BTRFS_MOUNT_##opt) -#define btrfs_test_opt(root, opt) ((root)->fs_info->mount_opt & \ +#define btrfs_test_opt(fs_info, opt) ((fs_info)->mount_opt & \ BTRFS_MOUNT_##opt) /* * Inode flags diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c index c67a1e6..4d28eaf 100644 --- a/fs/btrfs/disk-io.c +++ b/fs/btrfs/disk-io.c @@ -1990,8 +1990,8 @@ struct btrfs_root *open_ctree(struct super_block *sb, if (IS_ERR(fs_info->transaction_kthread)) goto fail_cleaner; - if (!btrfs_test_opt(tree_root, SSD) && - !btrfs_test_opt(tree_root, NOSSD) && + if (!btrfs_test_opt(fs_info, SSD) && + !btrfs_test_opt(fs_info, NOSSD) && !fs_info->fs_devices->rotating) { printk(KERN_INFO "Btrfs detected SSD devices, enabling SSD " "mode\n"); @@ -2304,7 +2304,7 @@ int write_all_supers(struct btrfs_root *root, int max_mirrors) u64 flags; max_errors = btrfs_super_num_devices(&root->fs_info->super_copy) - 1; - do_barriers = !btrfs_test_opt(root, NOBARRIER); + do_barriers = !btrfs_test_opt(root->fs_info, NOBARRIER); sb = &root->fs_info->super_for_commit; dev_item = &sb->dev_item; @@ -3002,7 +3002,7 @@ static int btrfs_destroy_pinned_extent(struct btrfs_root *root, break; /* opt_discard */ - if (btrfs_test_opt(root, DISCARD)) + if (btrfs_test_opt(root->fs_info, DISCARD)) ret = btrfs_error_discard_extent(root, start, end + 1 - start, NULL); diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c index 2236c77..27cc348 100644 --- a/fs/btrfs/extent-tree.c +++ b/fs/btrfs/extent-tree.c @@ -4298,7 +4298,7 @@ int btrfs_finish_extent_commit(struct btrfs_trans_handle *trans, if (ret) break; - if (btrfs_test_opt(root, DISCARD)) + if (btrfs_test_opt(fs_info, DISCARD)) ret = btrfs_discard_extent(root, start, end + 1 - start, NULL); @@ -4811,7 +4811,8 @@ static noinline int find_free_extent(struct btrfs_trans_handle *trans, int data) { int ret = 0; - struct btrfs_root *root = orig_root->fs_info->extent_root; + struct btrfs_fs_info *fs_info = orig_root->fs_info; + struct btrfs_root *root = fs_info->extent_root; struct btrfs_free_cluster *last_ptr = NULL; struct btrfs_block_group_cache *block_group = NULL; int empty_cluster = 2 * 1024 * 1024; @@ -4833,7 +4834,7 @@ static noinline int find_free_extent(struct btrfs_trans_handle *trans, ins->objectid = 0; ins->offset = 0; - space_info = __find_space_info(root->fs_info, data); + space_info = __find_space_info(fs_info, data); if (!space_info) { printk(KERN_ERR "No space info for %d\n", data); return -ENOSPC; @@ -4850,14 +4851,14 @@ static noinline int find_free_extent(struct btrfs_trans_handle *trans, allowed_chunk_alloc = 1; if (data & BTRFS_BLOCK_GROUP_METADATA && use_cluster) { - last_ptr = &root->fs_info->meta_alloc_cluster; - if (!btrfs_test_opt(root, SSD)) + last_ptr = &fs_info->meta_alloc_cluster; + if (!btrfs_test_opt(fs_info, SSD)) empty_cluster = 64 * 1024; } if ((data & BTRFS_BLOCK_GROUP_DATA) && use_cluster && - btrfs_test_opt(root, SSD)) { - last_ptr = &root->fs_info->data_alloc_cluster; + btrfs_test_opt(fs_info, SSD)) { + last_ptr = &fs_info->data_alloc_cluster; } if (last_ptr) { @@ -4875,8 +4876,7 @@ static noinline int find_free_extent(struct btrfs_trans_handle *trans, if (search_start == hint_byte) { ideal_cache: - block_group = btrfs_lookup_block_group(root->fs_info, - search_start); + block_group = btrfs_lookup_block_group(fs_info, search_start); /* * we don't want to use the block group if it doesn't match our * allocation bits, or if its not cached. @@ -5307,6 +5307,7 @@ int btrfs_reserve_extent(struct btrfs_trans_handle *trans, { int ret; u64 search_start = 0; + struct btrfs_fs_info *fs_info = root->fs_info; data = btrfs_get_alloc_profile(root, data); again: @@ -5315,7 +5316,7 @@ again: * is not called recursively on allocations */ if (empty_size || root->ref_cows) - ret = do_chunk_alloc(trans, root->fs_info->extent_root, + ret = do_chunk_alloc(trans, fs_info->extent_root, num_bytes + 2 * 1024 * 1024, data, CHUNK_ALLOC_NO_FORCE); @@ -5328,14 +5329,14 @@ again: num_bytes = num_bytes >> 1; num_bytes = num_bytes & ~(root->sectorsize - 1); num_bytes = max(num_bytes, min_alloc_size); - do_chunk_alloc(trans, root->fs_info->extent_root, + do_chunk_alloc(trans, fs_info->extent_root, num_bytes, data, CHUNK_ALLOC_FORCE); goto again; } - if (ret == -ENOSPC && btrfs_test_opt(root, ENOSPC_DEBUG)) { + if (ret == -ENOSPC && btrfs_test_opt(fs_info, ENOSPC_DEBUG)) { struct btrfs_space_info *sinfo; - sinfo = __find_space_info(root->fs_info, data); + sinfo = __find_space_info(fs_info, data); printk(KERN_ERR "btrfs allocation failed flags %llu, " "wanted %llu\n", (unsigned long long)data, (unsigned long long)num_bytes); @@ -5359,7 +5360,7 @@ int btrfs_free_reserved_extent(struct btrfs_root *root, u64 start, u64 len) return -ENOSPC; } - if (btrfs_test_opt(root, DISCARD)) + if (btrfs_test_opt(root->fs_info, DISCARD)) ret = btrfs_discard_extent(root, start, len, NULL); btrfs_add_free_space(cache, start, len); @@ -6863,7 +6864,7 @@ int btrfs_read_block_groups(struct btrfs_root *root) struct btrfs_path *path; int ret; struct btrfs_block_group_cache *cache; - struct btrfs_fs_info *info = root->fs_info; + struct btrfs_fs_info *fs_info = root->fs_info; struct btrfs_space_info *space_info; struct btrfs_key key; struct btrfs_key found_key; @@ -6871,7 +6872,7 @@ int btrfs_read_block_groups(struct btrfs_root *root) int need_clear = 0; u64 cache_gen; - root = info->extent_root; + root = fs_info->extent_root; key.objectid = 0; key.offset = 0; btrfs_set_key_type(&key, BTRFS_BLOCK_GROUP_ITEM_KEY); @@ -6879,13 +6880,13 @@ int btrfs_read_block_groups(struct btrfs_root *root) if (!path) return -ENOMEM; - cache_gen = btrfs_super_cache_generation(&root->fs_info->super_copy); + cache_gen = btrfs_super_cache_generation(&fs_info->super_copy); if (cache_gen != 0 && - btrfs_super_generation(&root->fs_info->super_copy) != cache_gen) + btrfs_super_generation(&fs_info->super_copy) != cache_gen) need_clear = 1; - if (btrfs_test_opt(root, CLEAR_CACHE)) + if (btrfs_test_opt(fs_info, CLEAR_CACHE)) need_clear = 1; - if (!btrfs_test_opt(root, SPACE_CACHE) && cache_gen) + if (!btrfs_test_opt(fs_info, SPACE_CACHE) && cache_gen) printk(KERN_INFO "btrfs: disk space caching is enabled\n"); while (1) { @@ -6911,7 +6912,7 @@ int btrfs_read_block_groups(struct btrfs_root *root) atomic_set(&cache->count, 1); spin_lock_init(&cache->lock); - cache->fs_info = info; + cache->fs_info = fs_info; INIT_LIST_HEAD(&cache->list); INIT_LIST_HEAD(&cache->cluster_list); @@ -6951,14 +6952,14 @@ int btrfs_read_block_groups(struct btrfs_root *root) } else if (btrfs_block_group_used(&cache->item) == 0) { cache->last_byte_to_unpin = (u64)-1; cache->cached = BTRFS_CACHE_FINISHED; - add_new_free_space(cache, root->fs_info, + add_new_free_space(cache, fs_info, found_key.objectid, found_key.objectid + found_key.offset); free_excluded_extents(root, cache); } - ret = update_space_info(info, cache->flags, found_key.offset, + ret = update_space_info(fs_info, cache->flags, found_key.offset, btrfs_block_group_used(&cache->item), &space_info); BUG_ON(ret); @@ -6969,15 +6970,15 @@ int btrfs_read_block_groups(struct btrfs_root *root) __link_block_group(space_info, cache); - ret = btrfs_add_block_group_cache(root->fs_info, cache); + ret = btrfs_add_block_group_cache(fs_info, cache); BUG_ON(ret); - set_avail_alloc_bits(root->fs_info, cache->flags); + set_avail_alloc_bits(fs_info, cache->flags); if (btrfs_chunk_readonly(root, cache->key.objectid)) set_block_group_ro(cache); } - list_for_each_entry_rcu(space_info, &root->fs_info->space_info, list) { + list_for_each_entry_rcu(space_info, &fs_info->space_info, list) { if (!(get_alloc_profile(root, space_info->flags) & (BTRFS_BLOCK_GROUP_RAID10 | BTRFS_BLOCK_GROUP_RAID1 | @@ -6993,7 +6994,7 @@ int btrfs_read_block_groups(struct btrfs_root *root) set_block_group_ro(cache); } - init_global_block_rsv(info); + init_global_block_rsv(fs_info); ret = 0; error: btrfs_free_path(path); diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c index c6a22d7..3446d39 100644 --- a/fs/btrfs/file.c +++ b/fs/btrfs/file.c @@ -126,7 +126,7 @@ int btrfs_add_inode_defrag(struct btrfs_trans_handle *trans, int ret = 0; u64 transid; - if (!btrfs_test_opt(root, AUTO_DEFRAG)) + if (!btrfs_test_opt(root->fs_info, AUTO_DEFRAG)) return 0; if (root->fs_info->closing) diff --git a/fs/btrfs/free-space-cache.c b/fs/btrfs/free-space-cache.c index 898f184..a5c353f 100644 --- a/fs/btrfs/free-space-cache.c +++ b/fs/btrfs/free-space-cache.c @@ -2257,7 +2257,7 @@ int btrfs_find_space_cluster(struct btrfs_trans_handle *trans, int ret; /* for metadata, allow allocates with more holes */ - if (btrfs_test_opt(root, SSD_SPREAD)) { + if (btrfs_test_opt(root->fs_info, SSD_SPREAD)) { min_bytes = bytes + empty_size; } else if (block_group->flags & BTRFS_BLOCK_GROUP_METADATA) { /* diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index 25e73f1..c2264e6 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c @@ -389,7 +389,7 @@ again: * change at any time if we discover bad compression ratios. */ if (!(BTRFS_I(inode)->flags & BTRFS_INODE_NOCOMPRESS) && - (btrfs_test_opt(root, COMPRESS) || + (btrfs_test_opt(root->fs_info, COMPRESS) || (BTRFS_I(inode)->force_compress) || (BTRFS_I(inode)->flags & BTRFS_INODE_COMPRESS))) { WARN_ON(pages); @@ -500,7 +500,7 @@ again: nr_pages_ret = 0; /* flag the file so we don't compress in the future */ - if (!btrfs_test_opt(root, FORCE_COMPRESS) && + if (!btrfs_test_opt(root->fs_info, FORCE_COMPRESS) && !(BTRFS_I(inode)->force_compress)) { BTRFS_I(inode)->flags |= BTRFS_INODE_NOCOMPRESS; } @@ -1280,7 +1280,7 @@ static int run_delalloc_range(struct inode *inode, struct page *locked_page, else if (BTRFS_I(inode)->flags & BTRFS_INODE_PREALLOC) ret = run_delalloc_nocow(inode, locked_page, start, end, page_started, 0, nr_written); - else if (!btrfs_test_opt(root, COMPRESS) && + else if (!btrfs_test_opt(root->fs_info, COMPRESS) && !(BTRFS_I(inode)->force_compress) && !(BTRFS_I(inode)->flags & BTRFS_INODE_COMPRESS)) ret = cow_file_range(inode, locked_page, start, end, @@ -4516,9 +4516,9 @@ static struct inode *btrfs_new_inode(struct btrfs_trans_handle *trans, btrfs_inherit_iflags(inode, dir); if ((mode & S_IFREG)) { - if (btrfs_test_opt(root, NODATASUM)) + if (btrfs_test_opt(root->fs_info, NODATASUM)) BTRFS_I(inode)->flags |= BTRFS_INODE_NODATASUM; - if (btrfs_test_opt(root, NODATACOW) || + if (btrfs_test_opt(root->fs_info, NODATACOW) || (BTRFS_I(dir)->flags & BTRFS_INODE_NODATACOW)) BTRFS_I(inode)->flags |= BTRFS_INODE_NODATACOW; } diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c index db439a3..b8cae79 100644 --- a/fs/btrfs/ioctl.c +++ b/fs/btrfs/ioctl.c @@ -1854,7 +1854,7 @@ static noinline int btrfs_ioctl_snap_destroy(struct file *file, * rmdir(2). */ err = -EPERM; - if (!btrfs_test_opt(root, USER_SUBVOL_RM_ALLOWED)) + if (!btrfs_test_opt(root->fs_info, USER_SUBVOL_RM_ALLOWED)) goto out_dput; /* diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c index 9b2e7e5..6a6472b 100644 --- a/fs/btrfs/super.c +++ b/fs/btrfs/super.c @@ -670,13 +670,13 @@ static int btrfs_show_options(struct seq_file *seq, struct vfsmount *vfs) struct btrfs_fs_info *info = root->fs_info; char *compress_type; - if (btrfs_test_opt(root, DEGRADED)) + if (btrfs_test_opt(info, DEGRADED)) seq_puts(seq, ",degraded"); - if (btrfs_test_opt(root, NODATASUM)) + if (btrfs_test_opt(info, NODATASUM)) seq_puts(seq, ",nodatasum"); - if (btrfs_test_opt(root, NODATACOW)) + if (btrfs_test_opt(info, NODATACOW)) seq_puts(seq, ",nodatacow"); - if (btrfs_test_opt(root, NOBARRIER)) + if (btrfs_test_opt(info, NOBARRIER)) seq_puts(seq, ",nobarrier"); if (info->max_inline != 8192 * 1024) seq_printf(seq, ",max_inline=%llu", @@ -687,35 +687,35 @@ static int btrfs_show_options(struct seq_file *seq, struct vfsmount *vfs) if (info->thread_pool_size != min_t(unsigned long, num_online_cpus() + 2, 8)) seq_printf(seq, ",thread_pool=%d", info->thread_pool_size); - if (btrfs_test_opt(root, COMPRESS)) { + if (btrfs_test_opt(info, COMPRESS)) { if (info->compress_type == BTRFS_COMPRESS_ZLIB) compress_type = "zlib"; else compress_type = "lzo"; - if (btrfs_test_opt(root, FORCE_COMPRESS)) + if (btrfs_test_opt(info, FORCE_COMPRESS)) seq_printf(seq, ",compress-force=%s", compress_type); else seq_printf(seq, ",compress=%s", compress_type); } - if (btrfs_test_opt(root, NOSSD)) + if (btrfs_test_opt(info, NOSSD)) seq_puts(seq, ",nossd"); - if (btrfs_test_opt(root, SSD_SPREAD)) + if (btrfs_test_opt(info, SSD_SPREAD)) seq_puts(seq, ",ssd_spread"); - else if (btrfs_test_opt(root, SSD)) + else if (btrfs_test_opt(info, SSD)) seq_puts(seq, ",ssd"); - if (btrfs_test_opt(root, NOTREELOG)) + if (btrfs_test_opt(info, NOTREELOG)) seq_puts(seq, ",notreelog"); - if (btrfs_test_opt(root, FLUSHONCOMMIT)) + if (btrfs_test_opt(info, FLUSHONCOMMIT)) seq_puts(seq, ",flushoncommit"); - if (btrfs_test_opt(root, DISCARD)) + if (btrfs_test_opt(info, DISCARD)) seq_puts(seq, ",discard"); if (!(root->fs_info->sb->s_flags & MS_POSIXACL)) seq_puts(seq, ",noacl"); - if (btrfs_test_opt(root, SPACE_CACHE)) + if (btrfs_test_opt(info, SPACE_CACHE)) seq_puts(seq, ",space_cache"); - if (btrfs_test_opt(root, CLEAR_CACHE)) + if (btrfs_test_opt(info, CLEAR_CACHE)) seq_puts(seq, ",clear_cache"); - if (btrfs_test_opt(root, USER_SUBVOL_RM_ALLOWED)) + if (btrfs_test_opt(info, USER_SUBVOL_RM_ALLOWED)) seq_puts(seq, ",user_subvol_rm_allowed"); return 0; } diff --git a/fs/btrfs/transaction.c b/fs/btrfs/transaction.c index dc80f71..baae99d 100644 --- a/fs/btrfs/transaction.c +++ b/fs/btrfs/transaction.c @@ -960,7 +960,8 @@ static void update_super_roots(struct btrfs_root *root) super->root = root_item->bytenr; super->generation = root_item->generation; super->root_level = root_item->level; - if (super->cache_generation != 0 || btrfs_test_opt(root, SPACE_CACHE)) + if (super->cache_generation != 0 || btrfs_test_opt(root->fs_info, + SPACE_CACHE)) super->cache_generation = root_item->generation; } @@ -1117,7 +1118,7 @@ int btrfs_commit_transaction(struct btrfs_trans_handle *trans, int ret; int should_grow = 0; unsigned long now = get_seconds(); - int flush_on_commit = btrfs_test_opt(root, FLUSHONCOMMIT); + int flush_on_commit = btrfs_test_opt(root->fs_info, FLUSHONCOMMIT); btrfs_run_ordered_operations(root, 0); diff --git a/fs/btrfs/tree-defrag.c b/fs/btrfs/tree-defrag.c index 3b580ee..38b0567 100644 --- a/fs/btrfs/tree-defrag.c +++ b/fs/btrfs/tree-defrag.c @@ -55,7 +55,7 @@ int btrfs_defrag_leaves(struct btrfs_trans_handle *trans, if (root->ref_cows == 0 && !is_extent) goto out; - if (btrfs_test_opt(root, SSD)) + if (btrfs_test_opt(root->fs_info, SSD)) goto out; path = btrfs_alloc_path(); diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c index 592396c..41ff3a0 100644 --- a/fs/btrfs/tree-log.c +++ b/fs/btrfs/tree-log.c @@ -3013,7 +3013,7 @@ int btrfs_log_inode_parent(struct btrfs_trans_handle *trans, sb = inode->i_sb; - if (btrfs_test_opt(root, NOTREELOG)) { + if (btrfs_test_opt(root->fs_info, NOTREELOG)) { ret = 1; goto end_no_trans; } diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c index c48214e..710d3df 100644 --- a/fs/btrfs/volumes.c +++ b/fs/btrfs/volumes.c @@ -2721,7 +2721,7 @@ int btrfs_chunk_readonly(struct btrfs_root *root, u64 chunk_offset) if (!em) return 1; - if (btrfs_test_opt(root, DEGRADED)) { + if (btrfs_test_opt(root->fs_info, DEGRADED)) { free_extent_map(em); return 0; } @@ -3421,7 +3421,8 @@ static int read_one_chunk(struct btrfs_root *root, struct btrfs_key *key, BTRFS_UUID_SIZE); map->stripes[i].dev = btrfs_find_device(root, devid, uuid, NULL); - if (!map->stripes[i].dev && !btrfs_test_opt(root, DEGRADED)) { + if (!map->stripes[i].dev && !btrfs_test_opt(root->fs_info, + DEGRADED)) { kfree(map); free_extent_map(em); return -EIO; @@ -3535,13 +3536,13 @@ static int read_one_dev(struct btrfs_root *root, if (memcmp(fs_uuid, root->fs_info->fsid, BTRFS_UUID_SIZE)) { ret = open_seed_devices(root, fs_uuid); - if (ret && !btrfs_test_opt(root, DEGRADED)) + if (ret && !btrfs_test_opt(root->fs_info, DEGRADED)) return ret; } device = btrfs_find_device(root, devid, dev_uuid, fs_uuid); if (!device || !device->bdev) { - if (!btrfs_test_opt(root, DEGRADED)) + if (!btrfs_test_opt(root->fs_info, DEGRADED)) return -EIO; if (!device) { -- 1.7.3.4 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH v1 0/3] btrfs: cleanup: pass fs_info instead of root where possible 2011-05-31 10:16 [PATCH v1 0/3] btrfs: cleanup: pass fs_info instead of root where possible Arne Jansen 2011-05-31 10:16 ` [PATCH v1 1/3] btrfs: remove struct btrfs_root parameter where unused Arne Jansen 2011-05-31 10:16 ` [PATCH v1 2/3] btrfs: pass fs_info to btrfs_test_opt instead of root Arne Jansen @ 2011-05-31 10:38 ` Arne Jansen 2 siblings, 0 replies; 5+ messages in thread From: Arne Jansen @ 2011-05-31 10:38 UTC (permalink / raw) To: chris.mason, linux-btrfs; +Cc: julia 3/3 doesn't seem to arrive anymore, possibly due to a mail size restriction on vger (yes, it is big). So I pushed it out to: git://git.kernel.org/pub/scm/linux/kernel/git/arne/btrfs-unstable-arne.git root-eliminate Thanks, Arne On 31.05.2011 12:16, Arne Jansen wrote: > This series aims to clean up passing of struct btrfs_root and struct > btrfs_fs_info. It first removes the root pointer from functions and macros > where it's not needed, afterwards it passes fs_info instead of root to > functions which only need root->fs_info. > > It is based on 3.0-rc1. > > These patches are based on the following two Coccinelle-scripts, but also > involve some hand editing. > > a) Remove root parameter where it's completely unneeded. Fix up callers. > > @r@ > identifier fn != btrfs_inc_extent_ref; > identifier root; > parameter list[n] P; > @@ > > fn(P > - , struct btrfs_root *root > ,...) > { > ... when != root > } > > @@ > identifier r.fn; > expression list[r.n] E; > identifier x; > @@ > > fn(E > - ,x > ,...) > > b) Change root parameter to fs_info where only root->fs_info is needed. Fix up > callers. > > @ s exists @ > identifier fn; > identifier root, sf; > identifier member != fs_info; > position p; > expression E; > parameter list[n] P; > @@ > fn@p(P,struct btrfs_root *root,...) > { > ... > ( > root->member > | > sf(...,root,...) > | > (root && ...) > | > (root == ...) > | > E = root > ) > ... when any > } > > @ t @ > identifier fn != {process_one_buffer,btrfs_inc_extent_ref,btrfs_free_extent}; > identifier root; > parameter list[n] P; > position p != s.p; > @@ > > fn@p(P, > - struct btrfs_root *root > + struct btrfs_fs_info *fs_info > ,...) > { > <... > - root->fs_info > + fs_info > ...> > } > > @@ > identifier t.fn; > expression list[t.n] E; > expression x; > @@ > > fn(E, > - x > + x->fs_info > ,...) > > @@ > function fn; > identifier fs_info; > identifier x; > parameter list[n] P; > @@ > fn(P, struct btrfs_fs_info *fs_info, ... ) { > ... > - struct btrfs_fs_info *x = fs_info; > <... > - x > + fs_info > ...> > } > > > Thanks to Julia Lawall for helping to build the scripts. > > > Arne Jansen (3): > btrfs: remove struct btrfs_root parameter where unused > btrfs: pass fs_info to btrfs_test_opt instead of root > btrfs: cleanup: pass fs_info instead of root where possible > > fs/btrfs/compression.c | 11 +- > fs/btrfs/ctree.c | 76 +++++---- > fs/btrfs/ctree.h | 66 ++++---- > fs/btrfs/delayed-inode.c | 43 +++--- > fs/btrfs/disk-io.c | 281 +++++++++++++++--------------- > fs/btrfs/disk-io.h | 24 ++-- > fs/btrfs/extent-tree.c | 409 ++++++++++++++++++++++--------------------- > fs/btrfs/file-item.c | 5 +- > fs/btrfs/file.c | 16 +- > fs/btrfs/free-space-cache.c | 12 +- > fs/btrfs/free-space-cache.h | 2 +- > fs/btrfs/inode.c | 108 ++++++------ > fs/btrfs/ioctl.c | 57 +++--- > fs/btrfs/ordered-data.c | 48 +++--- > fs/btrfs/ordered-data.h | 6 +- > fs/btrfs/print-tree.c | 2 +- > fs/btrfs/relocation.c | 40 +++-- > fs/btrfs/scrub.c | 68 +++----- > fs/btrfs/super.c | 34 ++-- > fs/btrfs/transaction.c | 183 ++++++++++---------- > fs/btrfs/transaction.h | 12 +- > fs/btrfs/tree-defrag.c | 2 +- > fs/btrfs/tree-log.c | 40 +++-- > fs/btrfs/volumes.c | 246 +++++++++++++------------- > fs/btrfs/volumes.h | 10 +- > 25 files changed, 912 insertions(+), 889 deletions(-) > ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2011-06-01 0:02 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2011-05-31 10:16 [PATCH v1 0/3] btrfs: cleanup: pass fs_info instead of root where possible Arne Jansen 2011-05-31 10:16 ` [PATCH v1 1/3] btrfs: remove struct btrfs_root parameter where unused Arne Jansen 2011-06-01 0:02 ` Tsutomu Itoh 2011-05-31 10:16 ` [PATCH v1 2/3] btrfs: pass fs_info to btrfs_test_opt instead of root Arne Jansen 2011-05-31 10:38 ` [PATCH v1 0/3] btrfs: cleanup: pass fs_info instead of root where possible Arne Jansen
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.