node_check
.check = node_check
struct ref_node_check *node_check)
.type = ref_type_from_disk_ref_type(node_check->type),
.action = node_check->action,
.parent = node_check->parent,
.ref_root = node_check->root,
.bytenr = node_check->bytenr,
btrfs_init_tree_ref(&ref, node_check->owner, node_check->root,
btrfs_init_data_ref(&ref, node_check->owner, node_check->offset,
node_check->root, true);
if (validate_ref_node(node, node_check))
struct ref_node_check node_check = {
if (simple_test(trans, &head_check, &node_check)) {
node_check.type = BTRFS_EXTENT_DATA_REF_KEY;
node_check.owner = FAKE_INO;
node_check.offset = FAKE_FILE_OFFSET;
if (simple_test(trans, &head_check, &node_check)) {
node_check.parent = FAKE_PARENT;
node_check.type = BTRFS_SHARED_BLOCK_REF_KEY;
node_check.owner = FAKE_LEVEL;
node_check.offset = 0;
if (simple_test(trans, &head_check, &node_check)) {
node_check.type = BTRFS_SHARED_DATA_REF_KEY;
node_check.owner = FAKE_INO;
node_check.offset = FAKE_FILE_OFFSET;
if (simple_test(trans, &head_check, &node_check)) {
node_check.action = BTRFS_DROP_DELAYED_REF;
node_check.type = BTRFS_TREE_BLOCK_REF_KEY;
node_check.owner = FAKE_LEVEL;
node_check.offset = 0;
node_check.parent = 0;
if (simple_test(trans, &head_check, &node_check)) {
node_check.type = BTRFS_EXTENT_DATA_REF_KEY;
node_check.owner = FAKE_INO;
node_check.offset = FAKE_FILE_OFFSET;
if (simple_test(trans, &head_check, &node_check)) {
node_check.parent = FAKE_PARENT;
node_check.type = BTRFS_SHARED_BLOCK_REF_KEY;
node_check.owner = FAKE_LEVEL;
node_check.offset = 0;
if (simple_test(trans, &head_check, &node_check)) {
node_check.type = BTRFS_SHARED_DATA_REF_KEY;
node_check.owner = FAKE_INO;
node_check.offset = FAKE_FILE_OFFSET;
if (simple_test(trans, &head_check, &node_check)) {
struct ref_node_check node_check = {
node_check.type = BTRFS_TREE_BLOCK_REF_KEY;
node_check.owner = FAKE_LEVEL;
node_check.type = BTRFS_EXTENT_DATA_REF_KEY;
node_check.owner = FAKE_INO;
node_check.offset = FAKE_FILE_OFFSET;
if (validate_ref_node(node, &node_check)) {
node_check.action = BTRFS_DROP_DELAYED_REF;
if (validate_ref_node(node, &node_check)) {
if (validate_ref_node(node, &node_check)) {
node_check.action = BTRFS_ADD_DELAYED_REF;
if (validate_ref_node(node, &node_check)) {
struct ref_node_check node_check = {
node_check.root = FAKE_ROOT_OBJECTID + 1;
if (validate_ref_node(node, &node_check)) {
node_check.action = BTRFS_DROP_DELAYED_REF;
node_check.root = FAKE_ROOT_OBJECTID;
if (validate_ref_node(node, &node_check)) {
node_check.action = BTRFS_ADD_DELAYED_REF;
node_check.root = FAKE_ROOT_OBJECTID + 2;
if (validate_ref_node(node, &node_check)) {
node_check.action = BTRFS_DROP_DELAYED_REF;
node_check.root = FAKE_ROOT_OBJECTID;
if (validate_ref_node(node, &node_check)) {