All of the callers of clear_extent_bits call it with gfp_t == GFP_NOFS.

 This patch simplifies the call sites by calling clear_extent_bit with
 GFP_NOFS from clear_extent_bits itself.

 Since the extent io code will probably never be used outside of a file
 system, this is generally ok. If there are new callers, they can add
 their own version or re-genericize it.

Signed-off-by: Jeff Mahoney <je...@suse.com>
---
 fs/btrfs/disk-io.c     |    2 +-
 fs/btrfs/extent-tree.c |    4 ++--
 fs/btrfs/extent_io.c   |   12 ++++++------
 fs/btrfs/extent_io.h   |    5 ++++-
 fs/btrfs/inode.c       |    3 +--
 fs/btrfs/relocation.c  |    3 +--
 fs/btrfs/scrub.c       |    2 +-
 fs/btrfs/transaction.c |    2 +-
 fs/btrfs/tree-log.c    |    2 +-
 9 files changed, 18 insertions(+), 17 deletions(-)

--- a/fs/btrfs/disk-io.c
+++ b/fs/btrfs/disk-io.c
@@ -3309,7 +3309,7 @@ static int btrfs_destroy_marked_extents(
                if (ret)
                        break;
 
-               clear_extent_bits(dirty_pages, start, end, mark, GFP_NOFS);
+               clear_extent_bits(dirty_pages, start, end, mark);
                while (start <= end) {
                        index = start >> PAGE_CACHE_SHIFT;
                        start = (u64)(index + 1) << PAGE_CACHE_SHIFT;
--- a/fs/btrfs/extent-tree.c
+++ b/fs/btrfs/extent-tree.c
@@ -226,9 +226,9 @@ static void free_excluded_extents(struct
        end = start + cache->key.offset - 1;
 
        clear_extent_bits(&root->fs_info->freed_extents[0],
-                         start, end, EXTENT_UPTODATE, GFP_NOFS);
+                         start, end, EXTENT_UPTODATE);
        clear_extent_bits(&root->fs_info->freed_extents[1],
-                         start, end, EXTENT_UPTODATE, GFP_NOFS);
+                         start, end, EXTENT_UPTODATE);
 }
 
 static int exclude_super_stripes(struct btrfs_root *root,
--- a/fs/btrfs/extent_io.c
+++ b/fs/btrfs/extent_io.c
@@ -1154,9 +1154,9 @@ int set_extent_bits(struct extent_io_tre
 }
 
 void clear_extent_bits(struct extent_io_tree *tree, u64 start, u64 end,
-                     int bits, gfp_t mask)
+                      int bits)
 {
-       clear_extent_bit(tree, start, end, bits, 0, 0, NULL, mask);
+       clear_extent_bit(tree, start, end, bits, 0, 0, NULL, GFP_NOFS);
 }
 
 int set_extent_delalloc(struct extent_io_tree *tree, u64 start, u64 end,
@@ -1903,12 +1903,12 @@ static void free_io_failure(struct inode
 
        set_state_private(failure_tree, rec->start, 0);
        clear_extent_bits(failure_tree, rec->start, rec->start + rec->len - 1,
-                         EXTENT_LOCKED | EXTENT_DIRTY, GFP_NOFS);
+                         EXTENT_LOCKED | EXTENT_DIRTY);
 
        if (did_repair)
                clear_extent_bits(&BTRFS_I(inode)->io_tree, rec->start,
                                  rec->start + rec->len - 1,
-                                 EXTENT_DAMAGED, GFP_NOFS);
+                                 EXTENT_DAMAGED);
 
        kfree(rec);
 }
--- a/fs/btrfs/extent_io.h
+++ b/fs/btrfs/extent_io.h
@@ -205,7 +205,7 @@ u64 count_range_bits(struct extent_io_tr
 int test_range_bit(struct extent_io_tree *tree, u64 start, u64 end,
                   int bits, int filled, struct extent_state *cached_state);
 void clear_extent_bits(struct extent_io_tree *tree, u64 start, u64 end,
-                      int bits, gfp_t mask);
+                      int bits);
 void clear_extent_bit(struct extent_io_tree *tree, u64 start, u64 end,
                      int bits, int wake, int delete,
                      struct extent_state **cached, gfp_t mask);
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@ -1851,8 +1851,7 @@ static int btrfs_readpage_end_io_hook(st
 
        if (root->root_key.objectid == BTRFS_DATA_RELOC_TREE_OBJECTID &&
            test_range_bit(io_tree, start, end, EXTENT_NODATASUM, 1, NULL)) {
-               clear_extent_bits(io_tree, start, end, EXTENT_NODATASUM,
-                                 GFP_NOFS);
+               clear_extent_bits(io_tree, start, end, EXTENT_NODATASUM);
                return 0;
        }
 
--- a/fs/btrfs/relocation.c
+++ b/fs/btrfs/relocation.c
@@ -3842,8 +3842,7 @@ restart:
        }
 
        btrfs_release_path(path);
-       clear_extent_bits(&rc->processed_blocks, 0, (u64)-1, EXTENT_DIRTY,
-                         GFP_NOFS);
+       clear_extent_bits(&rc->processed_blocks, 0, (u64)-1, EXTENT_DIRTY);
 
        if (trans) {
                nr = trans->blocks_used;
--- a/fs/btrfs/scrub.c
+++ b/fs/btrfs/scrub.c
@@ -443,7 +443,7 @@ static int scrub_fixup_readpage(u64 inum
                                                end, EXTENT_DAMAGED, 0, NULL);
                if (!corrected)
                        clear_extent_bits(&BTRFS_I(inode)->io_tree, offset, end,
-                                               EXTENT_DAMAGED, GFP_NOFS);
+                                         EXTENT_DAMAGED);
        }
 
 out:
--- a/fs/btrfs/transaction.c
+++ b/fs/btrfs/transaction.c
@@ -612,7 +612,7 @@ int btrfs_wait_marked_extents(struct btr
 
        while (!find_first_extent_bit(dirty_pages, start, &start, &end,
                                      EXTENT_NEED_WAIT)) {
-               clear_extent_bits(dirty_pages, start, end, EXTENT_NEED_WAIT, 
GFP_NOFS);
+               clear_extent_bits(dirty_pages, start, end, EXTENT_NEED_WAIT);
                err = filemap_fdatawait_range(mapping, start, end);
                if (err)
                        werr = err;
--- a/fs/btrfs/tree-log.c
+++ b/fs/btrfs/tree-log.c
@@ -2180,7 +2180,7 @@ static void free_log_tree(struct btrfs_t
                        break;
 
                clear_extent_bits(&log->dirty_log_pages, start, end,
-                                 EXTENT_DIRTY | EXTENT_NEW, GFP_NOFS);
+                                 EXTENT_DIRTY | EXTENT_NEW);
        }
 
        free_extent_buffer(log->node);


--
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

Reply via email to