aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/btrfs/extent_io.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c
index e55843f536bc..b3e45714d28f 100644
--- a/fs/btrfs/extent_io.c
+++ b/fs/btrfs/extent_io.c
@@ -4238,8 +4238,9 @@ int try_release_extent_mapping(struct page *page, gfp_t mask)
4238 struct extent_map *em; 4238 struct extent_map *em;
4239 u64 start = page_offset(page); 4239 u64 start = page_offset(page);
4240 u64 end = start + PAGE_SIZE - 1; 4240 u64 end = start + PAGE_SIZE - 1;
4241 struct extent_io_tree *tree = &BTRFS_I(page->mapping->host)->io_tree; 4241 struct btrfs_inode *btrfs_inode = BTRFS_I(page->mapping->host);
4242 struct extent_map_tree *map = &BTRFS_I(page->mapping->host)->extent_tree; 4242 struct extent_io_tree *tree = &btrfs_inode->io_tree;
4243 struct extent_map_tree *map = &btrfs_inode->extent_tree;
4243 4244
4244 if (gfpflags_allow_blocking(mask) && 4245 if (gfpflags_allow_blocking(mask) &&
4245 page->mapping->host->i_size > SZ_16M) { 4246 page->mapping->host->i_size > SZ_16M) {
@@ -4262,6 +4263,8 @@ int try_release_extent_mapping(struct page *page, gfp_t mask)
4262 extent_map_end(em) - 1, 4263 extent_map_end(em) - 1,
4263 EXTENT_LOCKED | EXTENT_WRITEBACK, 4264 EXTENT_LOCKED | EXTENT_WRITEBACK,
4264 0, NULL)) { 4265 0, NULL)) {
4266 set_bit(BTRFS_INODE_NEEDS_FULL_SYNC,
4267 &btrfs_inode->runtime_flags);
4265 remove_extent_mapping(map, em); 4268 remove_extent_mapping(map, em);
4266 /* once for the rb tree */ 4269 /* once for the rb tree */
4267 free_extent_map(em); 4270 free_extent_map(em);