Lines Matching full:ordered
1461 * This function locks the extent and properly waits for data=ordered extents
1489 struct btrfs_ordered_extent *ordered; in lock_and_cleanup_extent_if_need() local
1493 ordered = btrfs_lookup_ordered_range(inode, start_pos, in lock_and_cleanup_extent_if_need()
1495 if (ordered && in lock_and_cleanup_extent_if_need()
1496 ordered->file_offset + ordered->len > start_pos && in lock_and_cleanup_extent_if_need()
1497 ordered->file_offset <= last_pos) { in lock_and_cleanup_extent_if_need()
1505 ordered, 1); in lock_and_cleanup_extent_if_need()
1506 btrfs_put_ordered_extent(ordered); in lock_and_cleanup_extent_if_need()
1509 if (ordered) in lock_and_cleanup_extent_if_need()
1510 btrfs_put_ordered_extent(ordered); in lock_and_cleanup_extent_if_need()
1544 struct btrfs_ordered_extent *ordered; in check_can_nocow() local
1559 ordered = btrfs_lookup_ordered_range(inode, lockstart, in check_can_nocow()
1561 if (!ordered) { in check_can_nocow()
1565 btrfs_start_ordered_extent(&inode->vfs_inode, ordered, 1); in check_can_nocow()
1566 btrfs_put_ordered_extent(ordered); in check_can_nocow()
2055 * It needs to call filemap_fdatawait so that all ordered extent updates are
2109 * avoid log tree corruption, due to hole detection racing with ordered in btrfs_sync_file()
2136 * wait for all ordered extents to complete below. in btrfs_sync_file()
2171 * An ordered extent might have started before and completed in btrfs_sync_file()
2223 * If any of the ordered extents had an error, just return it to user in btrfs_sync_file()
2229 * just like in the non fast fsync path, where we check for the ordered in btrfs_sync_file()
2232 * therefore we need to check for errors in the ordered operations, in btrfs_sync_file()
2448 struct btrfs_ordered_extent *ordered; in btrfs_punch_hole_lock_range() local
2455 ordered = btrfs_lookup_first_ordered_extent(inode, lockend); in btrfs_punch_hole_lock_range()
2458 * We need to make sure we have no ordered extents in this range in btrfs_punch_hole_lock_range()
2462 if ((!ordered || in btrfs_punch_hole_lock_range()
2463 (ordered->file_offset + ordered->len <= lockstart || in btrfs_punch_hole_lock_range()
2464 ordered->file_offset > lockend)) && in btrfs_punch_hole_lock_range()
2467 if (ordered) in btrfs_punch_hole_lock_range()
2468 btrfs_put_ordered_extent(ordered); in btrfs_punch_hole_lock_range()
2471 if (ordered) in btrfs_punch_hole_lock_range()
2472 btrfs_put_ordered_extent(ordered); in btrfs_punch_hole_lock_range()
3119 * wait for ordered IO before we have any locks. We'll loop again in btrfs_fallocate()
3135 struct btrfs_ordered_extent *ordered; in btrfs_fallocate() local
3137 /* the extent lock is ordered inside the running in btrfs_fallocate()
3142 ordered = btrfs_lookup_first_ordered_extent(inode, locked_end); in btrfs_fallocate()
3144 if (ordered && in btrfs_fallocate()
3145 ordered->file_offset + ordered->len > alloc_start && in btrfs_fallocate()
3146 ordered->file_offset < alloc_end) { in btrfs_fallocate()
3147 btrfs_put_ordered_extent(ordered); in btrfs_fallocate()
3160 if (ordered) in btrfs_fallocate()
3161 btrfs_put_ordered_extent(ordered); in btrfs_fallocate()
3396 * from there. We have to do this otherwise we'll miss the ordered in btrfs_fdatawrite_range()