Lines Matching refs:key

85 	struct btrfs_key key;  in file_extent_err()  local
89 btrfs_item_key_to_cpu(eb, &key, slot); in file_extent_err()
99 key.objectid, key.offset, &vaf); in file_extent_err()
119 struct btrfs_key *key, in file_extent_end() argument
127 end = ALIGN(key->offset + len, leaf->fs_info->sectorsize); in file_extent_end()
130 end = key->offset + len; in file_extent_end()
145 struct btrfs_key key; in dir_item_err() local
149 btrfs_item_key_to_cpu(eb, &key, slot); in dir_item_err()
159 key.objectid, &vaf); in dir_item_err()
173 struct btrfs_key *key, int slot, in check_prev_ino() argument
181 ASSERT(key->type == BTRFS_XATTR_ITEM_KEY || in check_prev_ino()
182 key->type == BTRFS_INODE_REF_KEY || in check_prev_ino()
183 key->type == BTRFS_DIR_INDEX_KEY || in check_prev_ino()
184 key->type == BTRFS_DIR_ITEM_KEY || in check_prev_ino()
185 key->type == BTRFS_EXTENT_DATA_KEY); in check_prev_ino()
194 if (key->objectid == prev_key->objectid) in check_prev_ino()
200 prev_key->objectid, key->objectid); in check_prev_ino()
204 struct btrfs_key *key, int slot, in check_extent_data_item() argument
213 if (unlikely(!IS_ALIGNED(key->offset, sectorsize))) { in check_extent_data_item()
216 key->offset, sectorsize); in check_extent_data_item()
226 if (unlikely(!check_prev_ino(leaf, key, slot, prev_key))) in check_extent_data_item()
271 if (unlikely(key->offset)) { in check_extent_data_item()
274 key->offset); in check_extent_data_item()
311 key->offset, &extent_end))) { in check_extent_data_item()
314 key->offset, in check_extent_data_item()
324 prev_key->objectid == key->objectid && in check_extent_data_item()
332 if (unlikely(prev_end > key->offset)) { in check_extent_data_item()
335 prev_end, key->offset); in check_extent_data_item()
343 static int check_csum_item(struct extent_buffer *leaf, struct btrfs_key *key, in check_csum_item() argument
350 if (unlikely(key->objectid != BTRFS_EXTENT_CSUM_OBJECTID)) { in check_csum_item()
353 key->objectid, BTRFS_EXTENT_CSUM_OBJECTID); in check_csum_item()
356 if (unlikely(!IS_ALIGNED(key->offset, sectorsize))) { in check_csum_item()
359 key->offset, sectorsize); in check_csum_item()
375 if (unlikely(prev_csum_end > key->offset)) { in check_csum_item()
378 prev_csum_end, key->offset); in check_csum_item()
389 static int check_inode_key(struct extent_buffer *leaf, struct btrfs_key *key, in check_inode_key() argument
400 if (unlikely(key->objectid != 0 || key->type != 0 || in check_inode_key()
401 key->offset != 0)) in check_inode_key()
406 if (unlikely((key->objectid < BTRFS_FIRST_FREE_OBJECTID || in check_inode_key()
407 key->objectid > BTRFS_LAST_FREE_OBJECTID) && in check_inode_key()
408 key->objectid != BTRFS_ROOT_TREE_DIR_OBJECTID && in check_inode_key()
409 key->objectid != BTRFS_FREE_INO_OBJECTID)) { in check_inode_key()
413 key->objectid, BTRFS_ROOT_TREE_DIR_OBJECTID, in check_inode_key()
420 key->objectid, BTRFS_ROOT_TREE_DIR_OBJECTID, in check_inode_key()
427 if (unlikely(key->offset != 0)) { in check_inode_key()
431 key->offset); in check_inode_key()
435 key->offset); in check_inode_key()
441 static int check_root_key(struct extent_buffer *leaf, struct btrfs_key *key, in check_root_key() argument
456 if (unlikely(is_root_item && key->objectid == BTRFS_TREE_RELOC_OBJECTID && in check_root_key()
457 !is_fstree(key->offset))) { in check_root_key()
460 key->offset); in check_root_key()
465 if (unlikely(key->objectid == 0)) { in check_root_key()
475 if (unlikely(!is_fstree(key->objectid) && !is_root_item)) { in check_root_key()
478 key->objectid, BTRFS_FIRST_FREE_OBJECTID, in check_root_key()
491 if (unlikely(key->objectid == BTRFS_TREE_RELOC_OBJECTID && in check_root_key()
492 key->offset == 0)) { in check_root_key()
500 struct btrfs_key *key, struct btrfs_key *prev_key, in check_dir_item() argument
508 if (unlikely(!check_prev_ino(leaf, key, slot, prev_key))) in check_dir_item()
559 if (unlikely(key->type == BTRFS_XATTR_ITEM_KEY && in check_dir_item()
567 key->type != BTRFS_XATTR_ITEM_KEY)) { in check_dir_item()
615 if (key->type == BTRFS_DIR_ITEM_KEY || in check_dir_item()
616 key->type == BTRFS_XATTR_ITEM_KEY) { in check_dir_item()
622 if (unlikely(key->offset != name_hash)) { in check_dir_item()
625 name_hash, key->offset); in check_dir_item()
641 struct btrfs_key key; in block_group_err() local
645 btrfs_item_key_to_cpu(eb, &key, slot); in block_group_err()
655 key.objectid, key.offset, &vaf); in block_group_err()
660 struct btrfs_key *key, int slot) in check_block_group_item() argument
673 if (unlikely(key->offset == 0)) { in check_block_group_item()
712 if (unlikely(btrfs_stack_block_group_used(&bgi) > key->offset)) { in check_block_group_item()
715 btrfs_stack_block_group_used(&bgi), key->offset); in check_block_group_item()
962 struct btrfs_key *key, int slot) in check_leaf_chunk_item() argument
967 chunk_err(leaf, chunk, key->offset, in check_leaf_chunk_item()
982 chunk_err(leaf, chunk, key->offset, in check_leaf_chunk_item()
989 return btrfs_check_chunk_valid(leaf, chunk, key->offset); in check_leaf_chunk_item()
997 struct btrfs_key key; in dev_item_err() local
1001 btrfs_item_key_to_cpu(eb, &key, slot); in dev_item_err()
1011 key.objectid, &vaf); in dev_item_err()
1016 struct btrfs_key *key, int slot) in check_dev_item() argument
1021 if (unlikely(key->objectid != BTRFS_DEV_ITEMS_OBJECTID)) { in check_dev_item()
1024 key->objectid, BTRFS_DEV_ITEMS_OBJECTID); in check_dev_item()
1035 if (unlikely(btrfs_device_id(leaf, ditem) != key->offset)) { in check_dev_item()
1038 key->offset, btrfs_device_id(leaf, ditem)); in check_dev_item()
1063 struct btrfs_key *key, int slot) in check_inode_item() argument
1075 ret = check_inode_key(leaf, key, slot); in check_inode_item()
1151 static int check_root_item(struct extent_buffer *leaf, struct btrfs_key *key, in check_root_item() argument
1160 ret = check_root_key(leaf, key, slot); in check_root_item()
1243 struct btrfs_key key; in extent_err() local
1249 btrfs_item_key_to_cpu(eb, &key, slot); in extent_err()
1250 bytenr = key.objectid; in extent_err()
1251 if (key.type == BTRFS_METADATA_ITEM_KEY || in extent_err()
1252 key.type == BTRFS_TREE_BLOCK_REF_KEY || in extent_err()
1253 key.type == BTRFS_SHARED_BLOCK_REF_KEY) in extent_err()
1256 len = key.offset; in extent_err()
1283 struct btrfs_key *key, int slot, in check_extent_item() argument
1299 if (unlikely(key->type == BTRFS_METADATA_ITEM_KEY && in check_extent_item()
1306 if (unlikely(!IS_ALIGNED(key->objectid, fs_info->sectorsize))) { in check_extent_item()
1309 key->objectid, fs_info->sectorsize); in check_extent_item()
1314 if (unlikely(key->type == BTRFS_METADATA_ITEM_KEY && in check_extent_item()
1315 key->offset >= BTRFS_MAX_LEVEL)) { in check_extent_item()
1318 key->offset, BTRFS_MAX_LEVEL - 1); in check_extent_item()
1385 if (unlikely(key->type == BTRFS_EXTENT_ITEM_KEY && in check_extent_item()
1386 key->offset != fs_info->nodesize)) { in check_extent_item()
1389 key->offset, fs_info->nodesize); in check_extent_item()
1393 if (unlikely(key->type != BTRFS_EXTENT_ITEM_KEY)) { in check_extent_item()
1396 key->type, BTRFS_EXTENT_ITEM_KEY); in check_extent_item()
1399 if (unlikely(!IS_ALIGNED(key->offset, fs_info->sectorsize))) { in check_extent_item()
1402 key->offset, fs_info->sectorsize); in check_extent_item()
1414 if (is_tree_block && key->type != BTRFS_METADATA_ITEM_KEY) { in check_extent_item()
1569 if (unlikely(prev_end > key->objectid)) { in check_extent_item()
1573 prev_key->offset, key->objectid, key->type, in check_extent_item()
1574 key->offset); in check_extent_item()
1583 struct btrfs_key *key, int slot) in check_simple_keyed_refs() argument
1587 if (key->type == BTRFS_SHARED_DATA_REF_KEY) in check_simple_keyed_refs()
1594 expect_item_size, key->type); in check_simple_keyed_refs()
1597 if (unlikely(!IS_ALIGNED(key->objectid, leaf->fs_info->sectorsize))) { in check_simple_keyed_refs()
1600 key->objectid, leaf->fs_info->sectorsize); in check_simple_keyed_refs()
1603 if (unlikely(key->type != BTRFS_TREE_BLOCK_REF_KEY && in check_simple_keyed_refs()
1604 !IS_ALIGNED(key->offset, leaf->fs_info->sectorsize))) { in check_simple_keyed_refs()
1607 key->offset, leaf->fs_info->sectorsize); in check_simple_keyed_refs()
1614 struct btrfs_key *key, int slot) in check_extent_data_ref() argument
1624 sizeof(*dref), key->type); in check_extent_data_ref()
1627 if (unlikely(!IS_ALIGNED(key->objectid, leaf->fs_info->sectorsize))) { in check_extent_data_ref()
1630 key->objectid, leaf->fs_info->sectorsize); in check_extent_data_ref()
1672 struct btrfs_key *key, struct btrfs_key *prev_key, in check_inode_ref() argument
1679 if (unlikely(!check_prev_ino(leaf, key, slot, prev_key))) in check_inode_ref()
1722 const struct btrfs_key *key, in check_dev_extent_item() argument
1748 if (unlikely(!IS_ALIGNED(key->offset, sectorsize))) { in check_dev_extent_item()
1751 key->offset, sectorsize); in check_dev_extent_item()
1770 if (slot && prev_key->objectid == key->objectid && in check_dev_extent_item()
1771 prev_key->type == key->type) { in check_dev_extent_item()
1777 if (unlikely(prev_key->offset + prev_len > key->offset)) { in check_dev_extent_item()
1780 prev_key->objectid, prev_len, key->offset); in check_dev_extent_item()
1791 struct btrfs_key *key, in check_leaf_item() argument
1798 switch (key->type) { in check_leaf_item()
1800 ret = check_extent_data_item(leaf, key, slot, prev_key); in check_leaf_item()
1803 ret = check_csum_item(leaf, key, slot, prev_key); in check_leaf_item()
1808 ret = check_dir_item(leaf, key, prev_key, slot); in check_leaf_item()
1811 ret = check_inode_ref(leaf, key, prev_key, slot); in check_leaf_item()
1814 ret = check_block_group_item(leaf, key, slot); in check_leaf_item()
1818 ret = check_leaf_chunk_item(leaf, chunk, key, slot); in check_leaf_item()
1821 ret = check_dev_item(leaf, key, slot); in check_leaf_item()
1824 ret = check_dev_extent_item(leaf, key, slot, prev_key); in check_leaf_item()
1827 ret = check_inode_item(leaf, key, slot); in check_leaf_item()
1830 ret = check_root_item(leaf, key, slot); in check_leaf_item()
1834 ret = check_extent_item(leaf, key, slot, prev_key); in check_leaf_item()
1839 ret = check_simple_keyed_refs(leaf, key, slot); in check_leaf_item()
1842 ret = check_extent_data_ref(leaf, key, slot); in check_leaf_item()
1856 struct btrfs_key key; in __btrfs_check_leaf() local
1929 btrfs_item_key_to_cpu(leaf, &key, slot); in __btrfs_check_leaf()
1932 if (unlikely(btrfs_comp_cpu_keys(&prev_key, &key) >= 0)) { in __btrfs_check_leaf()
1936 prev_key.offset, key.objectid, key.type, in __btrfs_check_leaf()
1937 key.offset); in __btrfs_check_leaf()
1994 ret = check_leaf_item(leaf, &key, slot, &prev_key); in __btrfs_check_leaf()
1999 prev_key.objectid = key.objectid; in __btrfs_check_leaf()
2000 prev_key.type = key.type; in __btrfs_check_leaf()
2001 prev_key.offset = key.offset; in __btrfs_check_leaf()
2022 struct btrfs_key key, next_key; in __btrfs_check_node() local
2044 btrfs_node_key_to_cpu(node, &key, slot); in __btrfs_check_node()
2059 if (unlikely(btrfs_comp_cpu_keys(&key, &next_key) >= 0)) { in __btrfs_check_node()
2062 key.objectid, key.type, key.offset, in __btrfs_check_node()