Lines Matching refs:file_offset

25 	if (entry->file_offset + entry->num_bytes < entry->file_offset)  in entry_end()
27 return entry->file_offset + entry->num_bytes; in entry_end()
33 static struct rb_node *tree_insert(struct rb_root *root, u64 file_offset, in tree_insert() argument
44 if (file_offset < entry->file_offset) in tree_insert()
46 else if (file_offset >= entry_end(entry)) in tree_insert()
61 static struct rb_node *__tree_search(struct rb_root *root, u64 file_offset, in __tree_search() argument
75 if (file_offset < entry->file_offset) in __tree_search()
77 else if (file_offset >= entry_end(entry)) in __tree_search()
85 while (prev && file_offset >= entry_end(prev_entry)) { in __tree_search()
91 if (file_offset < entry_end(prev_entry)) in __tree_search()
99 while (prev && file_offset < entry_end(prev_entry)) { in __tree_search()
111 static int range_overlaps(struct btrfs_ordered_extent *entry, u64 file_offset, in range_overlaps() argument
114 if (file_offset + len <= entry->file_offset || in range_overlaps()
115 entry->file_offset + entry->num_bytes <= file_offset) in range_overlaps()
125 u64 file_offset) in tree_search() argument
135 if (in_range(file_offset, entry->file_offset, entry->num_bytes)) in tree_search()
138 ret = __tree_search(root, file_offset, &prev); in tree_search()
164 int btrfs_add_ordered_extent(struct btrfs_inode *inode, u64 file_offset, in btrfs_add_ordered_extent() argument
179 ret = btrfs_qgroup_free_data(inode, NULL, file_offset, num_bytes); in btrfs_add_ordered_extent()
188 ret = btrfs_qgroup_release_data(inode, file_offset, num_bytes); in btrfs_add_ordered_extent()
196 entry->file_offset = file_offset; in btrfs_add_ordered_extent()
227 node = tree_insert(&tree->tree, file_offset, in btrfs_add_ordered_extent()
232 file_offset); in btrfs_add_ordered_extent()
297 struct page *page, u64 file_offset, in btrfs_mark_ordered_io_finished() argument
306 u64 cur = file_offset; in btrfs_mark_ordered_io_finished()
314 ASSERT(page->mapping && page_offset(page) <= file_offset && in btrfs_mark_ordered_io_finished()
315 file_offset + num_bytes <= page_offset(page) + PAGE_SIZE); in btrfs_mark_ordered_io_finished()
318 while (cur < file_offset + num_bytes) { in btrfs_mark_ordered_io_finished()
329 entry_end = entry->file_offset + entry->num_bytes; in btrfs_mark_ordered_io_finished()
344 cur = entry->file_offset; in btrfs_mark_ordered_io_finished()
352 if (cur < entry->file_offset) { in btrfs_mark_ordered_io_finished()
353 cur = entry->file_offset; in btrfs_mark_ordered_io_finished()
364 end = min(entry->file_offset + entry->num_bytes, in btrfs_mark_ordered_io_finished()
365 file_offset + num_bytes) - 1; in btrfs_mark_ordered_io_finished()
390 entry->file_offset, in btrfs_mark_ordered_io_finished()
439 u64 file_offset, u64 io_size) in btrfs_dec_test_ordered_pending() argument
453 node = tree_search(tree, file_offset); in btrfs_dec_test_ordered_pending()
459 if (!in_range(file_offset, entry->file_offset, entry->num_bytes)) in btrfs_dec_test_ordered_pending()
724 u64 start = entry->file_offset; in btrfs_start_ordered_extent()
792 if (ordered->file_offset > orig_end) { in btrfs_wait_ordered_range()
796 if (ordered->file_offset + ordered->num_bytes <= start) { in btrfs_wait_ordered_range()
801 end = ordered->file_offset; in btrfs_wait_ordered_range()
822 u64 file_offset) in btrfs_lookup_ordered_extent() argument
831 node = tree_search(tree, file_offset); in btrfs_lookup_ordered_extent()
836 if (!in_range(file_offset, entry->file_offset, entry->num_bytes)) in btrfs_lookup_ordered_extent()
851 struct btrfs_inode *inode, u64 file_offset, u64 len) in btrfs_lookup_ordered_range() argument
859 node = tree_search(tree, file_offset); in btrfs_lookup_ordered_range()
861 node = tree_search(tree, file_offset + len); in btrfs_lookup_ordered_range()
868 if (range_overlaps(entry, file_offset, len)) in btrfs_lookup_ordered_range()
871 if (entry->file_offset >= file_offset + len) { in btrfs_lookup_ordered_range()
923 btrfs_lookup_first_ordered_extent(struct btrfs_inode *inode, u64 file_offset) in btrfs_lookup_first_ordered_extent() argument
931 node = tree_search(tree, file_offset); in btrfs_lookup_first_ordered_extent()
953 struct btrfs_inode *inode, u64 file_offset, u64 len) in btrfs_lookup_first_ordered_range() argument
973 if (file_offset < entry->file_offset) { in btrfs_lookup_first_ordered_range()
975 } else if (file_offset >= entry_end(entry)) { in btrfs_lookup_first_ordered_range()
992 if (entry->file_offset < file_offset) { in btrfs_lookup_first_ordered_range()
1001 if (range_overlaps(entry, file_offset, len)) in btrfs_lookup_first_ordered_range()
1006 if (range_overlaps(entry, file_offset, len)) in btrfs_lookup_first_ordered_range()
1095 u64 file_offset = ordered->file_offset + pos; in clone_ordered_extent() local
1106 return btrfs_add_ordered_extent(BTRFS_I(inode), file_offset, len, len, in clone_ordered_extent()
1130 ordered->file_offset += pre; in btrfs_split_ordered_extent()
1137 node = tree_insert(&tree->tree, ordered->file_offset, &ordered->rb_node); in btrfs_split_ordered_extent()
1141 ordered->file_offset); in btrfs_split_ordered_extent()