Re: [PATCH] Btrfs: delayed-inode: replace root args iff only fs_info used

2014-11-21 Thread David Sterba
On Mon, Nov 17, 2014 at 10:05:02PM +0900, Daniel Dressler wrote:
 This is the second independent patch of a larger
 project to cleanup btrfs's internal usage of
 btrfs_root. Many functions take btrfs_root
 only to grab the fs_info struct.
 
 By requiring a root these functions cause
 programmer overhead. That these functions can
 accept any valid root is not obvious until
 inspection.
 
 This patch reduces the specificity of such
 functions to accept the fs_info directly.
 
 These patches can be applied independently
 and thus are not being submitted as a patch
 series. There should be about 26 patches by
 the project's completion. Each patch will
 cleanup between 1 and 34 functions apiece.
 Each patch covers a single file's functions.
 
 This patch affects the following function(s):
   1) btrfs_wq_run_delayed_node
 
 Signed-off-by: Daniel Dressler danieru.dress...@gmail.com

Apart from the narrow paragraphs,

Reviewed-by: David Sterba dste...@suse.cz
--
To unsubscribe from this list: send the line unsubscribe linux-btrfs in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH] Btrfs: delayed-inode: replace root args iff only fs_info used

2014-11-17 Thread Daniel Dressler
This is the second independent patch of a larger
project to cleanup btrfs's internal usage of
btrfs_root. Many functions take btrfs_root
only to grab the fs_info struct.

By requiring a root these functions cause
programmer overhead. That these functions can
accept any valid root is not obvious until
inspection.

This patch reduces the specificity of such
functions to accept the fs_info directly.

These patches can be applied independently
and thus are not being submitted as a patch
series. There should be about 26 patches by
the project's completion. Each patch will
cleanup between 1 and 34 functions apiece.
Each patch covers a single file's functions.

This patch affects the following function(s):
  1) btrfs_wq_run_delayed_node

Signed-off-by: Daniel Dressler danieru.dress...@gmail.com
---
 fs/btrfs/delayed-inode.c | 9 +
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/fs/btrfs/delayed-inode.c b/fs/btrfs/delayed-inode.c
index 054577b..e590da6 100644
--- a/fs/btrfs/delayed-inode.c
+++ b/fs/btrfs/delayed-inode.c
@@ -1383,7 +1383,7 @@ out:
 
 
 static int btrfs_wq_run_delayed_node(struct btrfs_delayed_root *delayed_root,
-struct btrfs_root *root, int nr)
+struct btrfs_fs_info *fs_info, int nr)
 {
struct btrfs_async_delayed_work *async_work;
 
@@ -1399,7 +1399,7 @@ static int btrfs_wq_run_delayed_node(struct 
btrfs_delayed_root *delayed_root,
btrfs_async_run_delayed_root, NULL, NULL);
async_work-nr = nr;
 
-   btrfs_queue_work(root-fs_info-delayed_workers, async_work-work);
+   btrfs_queue_work(fs_info-delayed_workers, async_work-work);
return 0;
 }
 
@@ -1426,6 +1426,7 @@ static int could_end_wait(struct btrfs_delayed_root 
*delayed_root, int seq)
 void btrfs_balance_delayed_items(struct btrfs_root *root)
 {
struct btrfs_delayed_root *delayed_root;
+   struct btrfs_fs_info *fs_info = root-fs_info;
 
delayed_root = btrfs_get_delayed_root(root);
 
@@ -1438,7 +1439,7 @@ void btrfs_balance_delayed_items(struct btrfs_root *root)
 
seq = atomic_read(delayed_root-items_seq);
 
-   ret = btrfs_wq_run_delayed_node(delayed_root, root, 0);
+   ret = btrfs_wq_run_delayed_node(delayed_root, fs_info, 0);
if (ret)
return;
 
@@ -1447,7 +1448,7 @@ void btrfs_balance_delayed_items(struct btrfs_root *root)
return;
}
 
-   btrfs_wq_run_delayed_node(delayed_root, root, BTRFS_DELAYED_BATCH);
+   btrfs_wq_run_delayed_node(delayed_root, fs_info, BTRFS_DELAYED_BATCH);
 }
 
 /* Will return 0 or -ENOMEM */
-- 
2.1.0

--
To unsubscribe from this list: send the line unsubscribe linux-btrfs in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html