aboutsummaryrefslogtreecommitdiffstats
path: root/fs/btrfs/ordered-data.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2019-08-06 21:44:57 -0400
committerDavid S. Miller <davem@davemloft.net>2019-08-06 21:44:57 -0400
commit13dfb3fa494361ea9a5950f27c9cd8b06d28c04f (patch)
tree1bf30874f57c6c6b21160a10282191fcd0868055 /fs/btrfs/ordered-data.c
parent05bb520376af2c5146d3c44832c22ec3bb54d778 (diff)
parent33920f1ec5bf47c5c0a1d2113989bdd9dfb3fae9 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
Just minor overlapping changes in the conflicts here. Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'fs/btrfs/ordered-data.c')
-rw-r--r--fs/btrfs/ordered-data.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/fs/btrfs/ordered-data.c b/fs/btrfs/ordered-data.c
index 1744ba8b2754..ae7f64a8facb 100644
--- a/fs/btrfs/ordered-data.c
+++ b/fs/btrfs/ordered-data.c
@@ -985,13 +985,14 @@ void btrfs_lock_and_flush_ordered_range(struct extent_io_tree *tree,
985 struct extent_state **cached_state) 985 struct extent_state **cached_state)
986{ 986{
987 struct btrfs_ordered_extent *ordered; 987 struct btrfs_ordered_extent *ordered;
988 struct extent_state *cachedp = NULL; 988 struct extent_state *cache = NULL;
989 struct extent_state **cachedp = &cache;
989 990
990 if (cached_state) 991 if (cached_state)
991 cachedp = *cached_state; 992 cachedp = cached_state;
992 993
993 while (1) { 994 while (1) {
994 lock_extent_bits(tree, start, end, &cachedp); 995 lock_extent_bits(tree, start, end, cachedp);
995 ordered = btrfs_lookup_ordered_range(inode, start, 996 ordered = btrfs_lookup_ordered_range(inode, start,
996 end - start + 1); 997 end - start + 1);
997 if (!ordered) { 998 if (!ordered) {
@@ -1001,10 +1002,10 @@ void btrfs_lock_and_flush_ordered_range(struct extent_io_tree *tree,
1001 * aren't exposing it outside of this function 1002 * aren't exposing it outside of this function
1002 */ 1003 */
1003 if (!cached_state) 1004 if (!cached_state)
1004 refcount_dec(&cachedp->refs); 1005 refcount_dec(&cache->refs);
1005 break; 1006 break;
1006 } 1007 }
1007 unlock_extent_cached(tree, start, end, &cachedp); 1008 unlock_extent_cached(tree, start, end, cachedp);
1008 btrfs_start_ordered_extent(&inode->vfs_inode, ordered, 1); 1009 btrfs_start_ordered_extent(&inode->vfs_inode, ordered, 1);
1009 btrfs_put_ordered_extent(ordered); 1010 btrfs_put_ordered_extent(ordered);
1010 } 1011 }