Lines Matching full:snapshot
20 #include "snapshot.h"
288 unpacked->bi_snapshot = k.k->p.snapshot; in bch2_inode_unpack_slowpath()
330 unpacked->bi_snapshot = k.k->p.snapshot; in bch2_inode_unpack()
343 u32 snapshot; in __bch2_inode_peek() local
344 int ret = __bch2_subvolume_get_snapshot(trans, inum.subvol, &snapshot, warn); in __bch2_inode_peek()
349 SPOS(0, inum.inum, snapshot), in __bch2_inode_peek()
383 inode_p->inode.k.p.snapshot = iter->snapshot; in bch2_inode_write_flags()
396 inode_p->inode.k.p.snapshot = inode->bi_snapshot; in __bch2_fsck_write_inode()
626 if (bch2_snapshot_is_ancestor(c, pos.snapshot, k.k->p.snapshot)) in bch2_bkey_get_iter_snapshot_parent()
661 if (bch2_snapshot_is_ancestor(c, k.k->p.snapshot, pos.snapshot) && in __bch2_inode_has_child_snapshots()
753 * If we're creating or deleting an inode at this snapshot ID, in bch2_trigger_inode()
754 * and there might be an inode in a parent snapshot ID, we might in bch2_trigger_inode()
761 bch2_snapshot_parent(c, new.k->p.snapshot)) { in bch2_trigger_inode()
769 * When an inode is first updated in a new snapshot, we may need in bch2_trigger_inode()
927 u32 snapshot, u64 cpu) in bch2_inode_create() argument
951 * We don't need to iterate over keys in every snapshot once in bch2_inode_create()
975 bch2_btree_iter_set_pos(trans, iter, SPOS(0, pos, snapshot)); in bch2_inode_create()
996 u32 snapshot; in bch2_inode_delete_keys() local
1009 ret = bch2_subvolume_get_snapshot(trans, inum.subvol, &snapshot); in bch2_inode_delete_keys()
1013 bch2_btree_iter_set_snapshot(trans, &iter, snapshot); in bch2_inode_delete_keys()
1048 u32 snapshot; in bch2_inode_rm() local
1067 ret = bch2_subvolume_get_snapshot(trans, inum.subvol, &snapshot); in bch2_inode_rm()
1072 SPOS(0, inum.inum, snapshot), in bch2_inode_rm()
1081 inum.inum, snapshot); in bch2_inode_rm()
1097 ret = delete_ancestor_snapshot_inodes(trans, SPOS(0, inum.inum, snapshot)); in bch2_inode_rm()
1243 static noinline int __bch2_inode_rm_snapshot(struct btree_trans *trans, u64 inum, u32 snapshot) in __bch2_inode_rm_snapshot() argument
1254 SPOS(inum, 0, snapshot), in __bch2_inode_rm_snapshot()
1255 SPOS(inum, U64_MAX, snapshot), in __bch2_inode_rm_snapshot()
1258 SPOS(inum, 0, snapshot), in __bch2_inode_rm_snapshot()
1259 SPOS(inum, U64_MAX, snapshot), in __bch2_inode_rm_snapshot()
1262 SPOS(inum, 0, snapshot), in __bch2_inode_rm_snapshot()
1263 SPOS(inum, U64_MAX, snapshot), in __bch2_inode_rm_snapshot()
1272 SPOS(0, inum, snapshot), BTREE_ITER_intent); in __bch2_inode_rm_snapshot()
1280 inum, snapshot); in __bch2_inode_rm_snapshot()
1333 ret = __bch2_inode_rm_snapshot(trans, pos.offset, pos.snapshot); in delete_ancestor_snapshot_inodes()
1339 int bch2_inode_rm_snapshot(struct btree_trans *trans, u64 inum, u32 snapshot) in bch2_inode_rm_snapshot() argument
1341 return __bch2_inode_rm_snapshot(trans, inum, snapshot) ?: in bch2_inode_rm_snapshot()
1342 delete_ancestor_snapshot_inodes(trans, SPOS(0, inum, snapshot)); in bch2_inode_rm_snapshot()
1366 pos.offset, pos.snapshot)) in may_delete_deleted_inode()
1374 ret = bch2_empty_dir_snapshot(trans, pos.offset, 0, pos.snapshot); in may_delete_deleted_inode()
1378 pos.offset, pos.snapshot)) in may_delete_deleted_inode()
1387 pos.offset, pos.snapshot)) in may_delete_deleted_inode()
1393 pos.offset, pos.snapshot)) in may_delete_deleted_inode()
1418 pos.offset, pos.snapshot)) { in may_delete_deleted_inode()
1463 k.k->p.offset, k.k->p.snapshot); in bch2_delete_dead_inodes()
1465 ret = bch2_inode_rm_snapshot(trans, k.k->p.offset, k.k->p.snapshot); in bch2_delete_dead_inodes()