summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/extent_io.h
diff options
context:
space:
mode:
authorDavid Sterba <dsterba@suse.com>2017-12-07 18:52:54 +0100
committerDavid Sterba <dsterba@suse.com>2018-01-22 16:08:19 +0100
commitd810a4be1a625aafb2602c56c1256047f1e27380 (patch)
treeed863dba1c88471617abbe424b57bb631e8cc11e /fs/btrfs/extent_io.h
parent5bedc48a8f9e1d62fb693c4171ffddb990d034f6 (diff)
downloadlinux-stable-d810a4be1a625aafb2602c56c1256047f1e27380.tar.gz
linux-stable-d810a4be1a625aafb2602c56c1256047f1e27380.tar.bz2
linux-stable-d810a4be1a625aafb2602c56c1256047f1e27380.zip
btrfs: add separate helper for unlock_extent_cached with GFP_ATOMIC
There's only one instance where we pass different gfp mask to unlock_extent_cached. Add a separate helper for that and then we can drop the gfp parameter from unlock_extent_cached. Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'fs/btrfs/extent_io.h')
-rw-r--r--fs/btrfs/extent_io.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/fs/btrfs/extent_io.h b/fs/btrfs/extent_io.h
index db2558b0cad4..978351e8e8dc 100644
--- a/fs/btrfs/extent_io.h
+++ b/fs/btrfs/extent_io.h
@@ -318,6 +318,13 @@ static inline int unlock_extent_cached(struct extent_io_tree *tree, u64 start,
mask, NULL);
}
+static inline int unlock_extent_cached_atomic(struct extent_io_tree *tree,
+ u64 start, u64 end, struct extent_state **cached)
+{
+ return __clear_extent_bit(tree, start, end, EXTENT_LOCKED, 1, 0, cached,
+ GFP_ATOMIC, NULL);
+}
+
static inline int clear_extent_bits(struct extent_io_tree *tree, u64 start,
u64 end, unsigned bits)
{