Lines Matching refs:file_offset

28 	if (entry->file_offset + entry->num_bytes < entry->file_offset)  in entry_end()
30 return entry->file_offset + entry->num_bytes; in entry_end()
36 static struct rb_node *tree_insert(struct rb_root *root, u64 file_offset, in tree_insert() argument
47 if (file_offset < entry->file_offset) in tree_insert()
49 else if (file_offset >= entry_end(entry)) in tree_insert()
64 static struct rb_node *__tree_search(struct rb_root *root, u64 file_offset, in __tree_search() argument
78 if (file_offset < entry->file_offset) in __tree_search()
80 else if (file_offset >= entry_end(entry)) in __tree_search()
88 while (prev && file_offset >= entry_end(prev_entry)) { in __tree_search()
94 if (file_offset < entry_end(prev_entry)) in __tree_search()
102 while (prev && file_offset < entry_end(prev_entry)) { in __tree_search()
114 static int btrfs_range_overlaps(struct btrfs_ordered_extent *entry, u64 file_offset, in btrfs_range_overlaps() argument
117 if (file_offset + len <= entry->file_offset || in btrfs_range_overlaps()
118 entry->file_offset + entry->num_bytes <= file_offset) in btrfs_range_overlaps()
128 u64 file_offset) in ordered_tree_search() argument
137 if (in_range(file_offset, entry->file_offset, entry->num_bytes)) in ordered_tree_search()
140 ret = __tree_search(&inode->ordered_tree, file_offset, &prev); in ordered_tree_search()
149 struct btrfs_inode *inode, u64 file_offset, u64 num_bytes, in alloc_ordered_extent() argument
168 ret = btrfs_qgroup_free_data(inode, NULL, file_offset, num_bytes, &qgroup_rsv); in alloc_ordered_extent()
170 ret = btrfs_qgroup_release_data(inode, file_offset, num_bytes, &qgroup_rsv); in alloc_ordered_extent()
181 entry->file_offset = file_offset; in alloc_ordered_extent()
241 node = tree_insert(&inode->ordered_tree, entry->file_offset, in insert_ordered_extent()
246 entry->file_offset); in insert_ordered_extent()
282 struct btrfs_inode *inode, u64 file_offset, in btrfs_alloc_ordered_extent() argument
302 entry = alloc_ordered_extent(inode, file_offset, in btrfs_alloc_ordered_extent()
309 entry = alloc_ordered_extent(inode, file_offset, in btrfs_alloc_ordered_extent()
351 struct folio *folio, u64 file_offset, in can_finish_ordered_extent() argument
361 ASSERT(folio_pos(folio) <= file_offset); in can_finish_ordered_extent()
362 ASSERT(file_offset + len <= folio_end(folio)); in can_finish_ordered_extent()
370 if (!btrfs_folio_test_ordered(fs_info, folio, file_offset, len)) in can_finish_ordered_extent()
372 btrfs_folio_clear_ordered(fs_info, folio, file_offset, len); in can_finish_ordered_extent()
380 ordered->file_offset, ordered->num_bytes, in can_finish_ordered_extent()
416 struct folio *folio, u64 file_offset, u64 len, in btrfs_finish_ordered_extent() argument
423 trace_btrfs_finish_ordered_extent(inode, file_offset, len, uptodate); in btrfs_finish_ordered_extent()
426 ret = can_finish_ordered_extent(ordered, folio, file_offset, len, in btrfs_finish_ordered_extent()
479 struct folio *folio, u64 file_offset, in btrfs_mark_ordered_io_finished() argument
485 u64 cur = file_offset; in btrfs_mark_ordered_io_finished()
487 trace_btrfs_writepage_end_io_hook(inode, file_offset, in btrfs_mark_ordered_io_finished()
488 file_offset + num_bytes - 1, in btrfs_mark_ordered_io_finished()
492 while (cur < file_offset + num_bytes) { in btrfs_mark_ordered_io_finished()
503 entry_end = entry->file_offset + entry->num_bytes; in btrfs_mark_ordered_io_finished()
518 cur = entry->file_offset; in btrfs_mark_ordered_io_finished()
526 if (cur < entry->file_offset) { in btrfs_mark_ordered_io_finished()
527 cur = entry->file_offset; in btrfs_mark_ordered_io_finished()
538 end = min(entry->file_offset + entry->num_bytes, in btrfs_mark_ordered_io_finished()
539 file_offset + num_bytes) - 1; in btrfs_mark_ordered_io_finished()
572 u64 file_offset, u64 io_size) in btrfs_dec_test_ordered_pending() argument
585 node = ordered_tree_search(inode, file_offset); in btrfs_dec_test_ordered_pending()
591 if (!in_range(file_offset, entry->file_offset, entry->num_bytes)) in btrfs_dec_test_ordered_pending()
863 u64 start = entry->file_offset; in btrfs_start_ordered_extent_nowriteback()
940 if (ordered->file_offset > orig_end) { in btrfs_wait_ordered_range()
944 if (ordered->file_offset + ordered->num_bytes <= start) { in btrfs_wait_ordered_range()
949 end = ordered->file_offset; in btrfs_wait_ordered_range()
970 u64 file_offset) in btrfs_lookup_ordered_extent() argument
977 node = ordered_tree_search(inode, file_offset); in btrfs_lookup_ordered_extent()
982 if (!in_range(file_offset, entry->file_offset, entry->num_bytes)) in btrfs_lookup_ordered_extent()
997 struct btrfs_inode *inode, u64 file_offset, u64 len) in btrfs_lookup_ordered_range() argument
1003 node = ordered_tree_search(inode, file_offset); in btrfs_lookup_ordered_range()
1005 node = ordered_tree_search(inode, file_offset + len); in btrfs_lookup_ordered_range()
1012 if (btrfs_range_overlaps(entry, file_offset, len)) in btrfs_lookup_ordered_range()
1015 if (entry->file_offset >= file_offset + len) { in btrfs_lookup_ordered_range()
1066 btrfs_lookup_first_ordered_extent(struct btrfs_inode *inode, u64 file_offset) in btrfs_lookup_first_ordered_extent() argument
1072 node = ordered_tree_search(inode, file_offset); in btrfs_lookup_first_ordered_extent()
1094 struct btrfs_inode *inode, u64 file_offset, u64 len) in btrfs_lookup_first_ordered_range() argument
1113 if (file_offset < entry->file_offset) { in btrfs_lookup_first_ordered_range()
1115 } else if (file_offset >= entry_end(entry)) { in btrfs_lookup_first_ordered_range()
1132 if (entry->file_offset < file_offset) { in btrfs_lookup_first_ordered_range()
1141 if (btrfs_range_overlaps(entry, file_offset, len)) in btrfs_lookup_first_ordered_range()
1146 if (btrfs_range_overlaps(entry, file_offset, len)) in btrfs_lookup_first_ordered_range()
1238 u64 file_offset = ordered->file_offset; in btrfs_split_ordered_extent() local
1278 new = alloc_ordered_extent(inode, file_offset, len, len, disk_bytenr, in btrfs_split_ordered_extent()
1312 ordered->file_offset += len; in btrfs_split_ordered_extent()
1341 node = tree_insert(&inode->ordered_tree, new->file_offset, &new->rb_node); in btrfs_split_ordered_extent()
1345 new->file_offset); in btrfs_split_ordered_extent()