aboutsummaryrefslogtreecommitdiffstats
path: root/fs/btrfs/extent_io.h
diff options
context:
space:
mode:
authorJosef Bacik <jbacik@fusionio.com>2013-07-29 11:20:47 -0400
committerChris Mason <chris.mason@fusionio.com>2013-09-01 08:04:38 -0400
commitc2790a2e2bc824084717fde031a8e0d370fc8650 (patch)
tree60e3b32889e7a7368a11ed80ca233d638ea245d7 /fs/btrfs/extent_io.h
parent8068a47e2a77ecae27cfd0298e8732756f565ed1 (diff)
Btrfs: cleanup arguments to extent_clear_unlock_delalloc
This patch removes the io_tree argument for extent_clear_unlock_delalloc since we always use &BTRFS_I(inode)->io_tree, and it separates out the extent tree operations from the page operations. This way we just pass in the extent bits we want to clear and then pass in the operations we want done to the pages. This is because I'm going to fix what extent bits we clear in some cases and rather than add a bunch of new flags we'll just use the actual extent bits we want to clear. Thanks, Signed-off-by: Josef Bacik <jbacik@fusionio.com> Signed-off-by: Chris Mason <chris.mason@fusionio.com>
Diffstat (limited to 'fs/btrfs/extent_io.h')
-rw-r--r--fs/btrfs/extent_io.h21
1 files changed, 9 insertions, 12 deletions
diff --git a/fs/btrfs/extent_io.h b/fs/btrfs/extent_io.h
index f7544afefdb9..c450620a333f 100644
--- a/fs/btrfs/extent_io.h
+++ b/fs/btrfs/extent_io.h
@@ -44,14 +44,11 @@
44#define EXTENT_BUFFER_DUMMY 9 44#define EXTENT_BUFFER_DUMMY 9
45 45
46/* these are flags for extent_clear_unlock_delalloc */ 46/* these are flags for extent_clear_unlock_delalloc */
47#define EXTENT_CLEAR_UNLOCK_PAGE 0x1 47#define PAGE_UNLOCK (1 << 0)
48#define EXTENT_CLEAR_UNLOCK 0x2 48#define PAGE_CLEAR_DIRTY (1 << 1)
49#define EXTENT_CLEAR_DELALLOC 0x4 49#define PAGE_SET_WRITEBACK (1 << 2)
50#define EXTENT_CLEAR_DIRTY 0x8 50#define PAGE_END_WRITEBACK (1 << 3)
51#define EXTENT_SET_WRITEBACK 0x10 51#define PAGE_SET_PRIVATE2 (1 << 4)
52#define EXTENT_END_WRITEBACK 0x20
53#define EXTENT_SET_PRIVATE2 0x40
54#define EXTENT_CLEAR_ACCOUNTING 0x80
55 52
56/* 53/*
57 * page->private values. Every page that is controlled by the extent 54 * page->private values. Every page that is controlled by the extent
@@ -328,10 +325,10 @@ int map_private_extent_buffer(struct extent_buffer *eb, unsigned long offset,
328 unsigned long *map_len); 325 unsigned long *map_len);
329int extent_range_clear_dirty_for_io(struct inode *inode, u64 start, u64 end); 326int extent_range_clear_dirty_for_io(struct inode *inode, u64 start, u64 end);
330int extent_range_redirty_for_io(struct inode *inode, u64 start, u64 end); 327int extent_range_redirty_for_io(struct inode *inode, u64 start, u64 end);
331int extent_clear_unlock_delalloc(struct inode *inode, 328int extent_clear_unlock_delalloc(struct inode *inode, u64 start, u64 end,
332 struct extent_io_tree *tree, 329 struct page *locked_page,
333 u64 start, u64 end, struct page *locked_page, 330 unsigned long bits_to_clear,
334 unsigned long op); 331 unsigned long page_ops);
335struct bio * 332struct bio *
336btrfs_bio_alloc(struct block_device *bdev, u64 first_sector, int nr_vecs, 333btrfs_bio_alloc(struct block_device *bdev, u64 first_sector, int nr_vecs,
337 gfp_t gfp_flags); 334 gfp_t gfp_flags);