/linux-6.12.1/drivers/md/ |
D | dm-thin-metadata.h | 120 dm_block_t *result); 137 dm_block_t block; 147 int dm_thin_find_block(struct dm_thin_device *td, dm_block_t block, 155 dm_block_t begin, dm_block_t end, 156 dm_block_t *thin_begin, dm_block_t *thin_end, 157 dm_block_t *pool_begin, bool *maybe_shared); 162 int dm_pool_alloc_data_block(struct dm_pool_metadata *pmd, dm_block_t *result); 167 int dm_thin_insert_block(struct dm_thin_device *td, dm_block_t block, 168 dm_block_t data_block); 171 dm_block_t begin, dm_block_t end); [all …]
|
D | dm-cache-block-types.h | 21 typedef dm_block_t __bitwise dm_oblock_t; 23 typedef dm_block_t __bitwise dm_dblock_t; 25 static inline dm_oblock_t to_oblock(dm_block_t b) in to_oblock() 30 static inline dm_block_t from_oblock(dm_oblock_t b) in from_oblock() 32 return (__force dm_block_t) b; in from_oblock() 45 static inline dm_dblock_t to_dblock(dm_block_t b) in to_dblock() 50 static inline dm_block_t from_dblock(dm_dblock_t b) in from_dblock() 52 return (__force dm_block_t) b; in from_dblock()
|
D | dm-thin-metadata.c | 187 dm_block_t root; 188 dm_block_t details_root; 207 dm_block_t metadata_reserve; 308 static uint64_t pack_block_time(dm_block_t b, uint32_t t) in pack_block_time() 313 static void unpack_block_time(uint64_t v, dm_block_t *b, uint32_t *t) in unpack_block_time() 324 typedef int (*run_fn)(struct dm_space_map *, dm_block_t, dm_block_t); 942 dm_block_t total; in __set_metadata_reserve() 943 dm_block_t max_blocks = 4096; /* 16M */ in __set_metadata_reserve() 1108 dm_block_t dev_root; in __create_thin() 1184 dm_block_t origin_root; in __create_snap() [all …]
|
D | dm-era-target.c | 32 dm_block_t root; 56 unsigned int nr_bits, dm_block_t *root) in setup_on_disk_bitset() 75 static int writeset_alloc(struct writeset *ws, dm_block_t nr_blocks) in writeset_alloc() 90 dm_block_t nr_blocks) in writeset_init() 106 static bool writeset_marked(struct writeset *ws, dm_block_t block) in writeset_marked() 112 struct writeset_metadata *m, dm_block_t block, in writeset_marked_on_disk() 116 dm_block_t old = m->root; in writeset_marked_on_disk() 277 dm_block_t block_size; 290 dm_block_t writeset_tree_root; 291 dm_block_t era_array_root; [all …]
|
D | dm-thin.c | 122 dm_block_t b, dm_block_t e, struct dm_cell_key *key) in build_key() 132 static void build_data_key(struct dm_thin_device *td, dm_block_t b, in build_data_key() 138 static void build_virtual_key(struct dm_thin_device *td, dm_block_t b, in build_virtual_key() 241 dm_block_t low_water_blocks; 331 dm_block_t low_water_blocks; 372 static sector_t block_to_sectors(struct pool *pool, dm_block_t b) in block_to_sectors() 398 static int issue_discard(struct discard_op *op, dm_block_t data_b, dm_block_t data_e) in issue_discard() 672 static dm_block_t get_bio_block(struct thin_c *tc, struct bio *bio) in get_bio_block() 689 dm_block_t *begin, dm_block_t *end) in get_bio_block_range() 714 static void remap(struct thin_c *tc, struct bio *bio, dm_block_t block) in remap() [all …]
|
D | dm-clone-metadata.h | 170 int dm_clone_get_free_metadata_block_count(struct dm_clone_metadata *cmd, dm_block_t *result); 175 int dm_clone_get_metadata_dev_size(struct dm_clone_metadata *cmd, dm_block_t *result);
|
/linux-6.12.1/drivers/md/persistent-data/ |
D | dm-space-map.h | 25 int (*extend)(struct dm_space_map *sm, dm_block_t extra_blocks); 31 int (*get_nr_blocks)(struct dm_space_map *sm, dm_block_t *count); 41 int (*get_nr_free)(struct dm_space_map *sm, dm_block_t *count); 43 int (*get_count)(struct dm_space_map *sm, dm_block_t b, uint32_t *result); 44 int (*count_is_more_than_one)(struct dm_space_map *sm, dm_block_t b, 46 int (*set_count)(struct dm_space_map *sm, dm_block_t b, uint32_t count); 50 int (*inc_blocks)(struct dm_space_map *sm, dm_block_t b, dm_block_t e); 51 int (*dec_blocks)(struct dm_space_map *sm, dm_block_t b, dm_block_t e); 56 int (*new_block)(struct dm_space_map *sm, dm_block_t *b); 71 dm_block_t threshold, [all …]
|
D | dm-space-map-common.h | 51 typedef int (*load_ie_fn)(struct ll_disk *ll, dm_block_t index, struct disk_index_entry *result); 52 typedef int (*save_ie_fn)(struct ll_disk *ll, dm_block_t index, struct disk_index_entry *ie); 55 typedef dm_block_t (*max_index_entries_fn)(struct ll_disk *ll); 68 dm_block_t index; 79 dm_block_t nr_blocks; 80 dm_block_t nr_allocated; 85 dm_block_t bitmap_root; 87 dm_block_t ref_count_root; 118 int sm_ll_extend(struct ll_disk *ll, dm_block_t extra_blocks); 119 int sm_ll_lookup_bitmap(struct ll_disk *ll, dm_block_t b, uint32_t *result); [all …]
|
D | dm-btree.h | 95 int dm_btree_empty(struct dm_btree_info *info, dm_block_t *root); 101 int dm_btree_del(struct dm_btree_info *info, dm_block_t root); 110 int dm_btree_lookup(struct dm_btree_info *info, dm_block_t root, 117 int dm_btree_lookup_next(struct dm_btree_info *info, dm_block_t root, 123 int dm_btree_insert(struct dm_btree_info *info, dm_block_t root, 124 uint64_t *keys, void *value, dm_block_t *new_root) 132 int dm_btree_insert_notify(struct dm_btree_info *info, dm_block_t root, 133 uint64_t *keys, void *value, dm_block_t *new_root, 142 int dm_btree_remove(struct dm_btree_info *info, dm_block_t root, 143 uint64_t *keys, dm_block_t *new_root); [all …]
|
D | dm-bitset.h | 94 int dm_bitset_empty(struct dm_disk_bitset *info, dm_block_t *new_root); 109 int dm_bitset_new(struct dm_disk_bitset *info, dm_block_t *root, 122 int dm_bitset_resize(struct dm_disk_bitset *info, dm_block_t old_root, 124 bool default_value, dm_block_t *new_root); 129 int dm_bitset_del(struct dm_disk_bitset *info, dm_block_t root); 141 int dm_bitset_set_bit(struct dm_disk_bitset *info, dm_block_t root, 142 uint32_t index, dm_block_t *new_root); 154 int dm_bitset_clear_bit(struct dm_disk_bitset *info, dm_block_t root, 155 uint32_t index, dm_block_t *new_root); 168 int dm_bitset_test_bit(struct dm_disk_bitset *info, dm_block_t root, [all …]
|
D | dm-transaction-manager.h | 86 int dm_tm_shadow_block(struct dm_transaction_manager *tm, dm_block_t orig, 94 int dm_tm_read_lock(struct dm_transaction_manager *tm, dm_block_t b, 103 void dm_tm_inc(struct dm_transaction_manager *tm, dm_block_t b); 104 void dm_tm_inc_range(struct dm_transaction_manager *tm, dm_block_t b, dm_block_t e); 105 void dm_tm_dec(struct dm_transaction_manager *tm, dm_block_t b); 106 void dm_tm_dec_range(struct dm_transaction_manager *tm, dm_block_t b, dm_block_t e); 113 typedef void (*dm_tm_run_fn)(struct dm_transaction_manager *, dm_block_t, dm_block_t); 117 int dm_tm_ref(struct dm_transaction_manager *tm, dm_block_t b, uint32_t *result); 123 int dm_tm_block_is_shared(struct dm_transaction_manager *tm, dm_block_t b, 145 int dm_tm_create_with_sm(struct dm_block_manager *bm, dm_block_t sb_location, [all …]
|
D | dm-space-map-metadata.c | 27 dm_block_t threshold; 28 dm_block_t current_value; 39 static void set_threshold(struct threshold *t, dm_block_t value, in set_threshold() 48 static bool below_threshold(struct threshold *t, dm_block_t value) in below_threshold() 58 static void check_threshold(struct threshold *t, dm_block_t value) in check_threshold() 93 dm_block_t b; 94 dm_block_t e; 122 enum block_op_type type, dm_block_t b, dm_block_t e) in brb_push() 174 dm_block_t begin; 183 static int add_bop(struct sm_metadata *smm, enum block_op_type type, dm_block_t b, dm_block_t e) in add_bop() [all …]
|
D | dm-array.h | 93 int dm_array_empty(struct dm_array_info *info, dm_block_t *root); 110 int dm_array_resize(struct dm_array_info *info, dm_block_t root, 112 const void *value, dm_block_t *new_root) 131 int dm_array_new(struct dm_array_info *info, dm_block_t *root, 138 int dm_array_del(struct dm_array_info *info, dm_block_t root); 150 int dm_array_get_value(struct dm_array_info *info, dm_block_t root, 168 int dm_array_set_value(struct dm_array_info *info, dm_block_t root, 169 uint32_t index, const void *value, dm_block_t *new_root) 180 int dm_array_walk(struct dm_array_info *info, dm_block_t root, 206 dm_block_t root, struct dm_array_cursor *c);
|
D | dm-transaction-manager.c | 25 #define PREFETCH_SENTINEL ((dm_block_t) -1ULL) 29 dm_block_t blocks[PREFETCH_SIZE]; 32 static unsigned int prefetch_hash(dm_block_t b) in prefetch_hash() 51 static void prefetch_add(struct prefetch_set *p, dm_block_t b) in prefetch_add() 81 dm_block_t where; 105 static int is_shadow(struct dm_transaction_manager *tm, dm_block_t b) in is_shadow() 126 static void insert_shadow(struct dm_transaction_manager *tm, dm_block_t b) in insert_shadow() 244 dm_block_t new_block; in dm_tm_new_block() 268 static int __shadow_block(struct dm_transaction_manager *tm, dm_block_t orig, in __shadow_block() 273 dm_block_t new; in __shadow_block() [all …]
|
D | dm-block-manager.h | 19 typedef uint64_t dm_block_t; typedef 22 dm_block_t dm_block_location(struct dm_block *b); 42 dm_block_t dm_bm_nr_blocks(struct dm_block_manager *bm); 77 int dm_bm_read_lock(struct dm_block_manager *bm, dm_block_t b, 81 int dm_bm_write_lock(struct dm_block_manager *bm, dm_block_t b, 89 int dm_bm_read_try_lock(struct dm_block_manager *bm, dm_block_t b, 97 int dm_bm_write_lock_zero(struct dm_block_manager *bm, dm_block_t b, 117 void dm_bm_prefetch(struct dm_block_manager *bm, dm_block_t b);
|
D | dm-bitset.c | 37 int dm_bitset_empty(struct dm_disk_bitset *info, dm_block_t *root) in dm_bitset_empty() 73 int dm_bitset_new(struct dm_disk_bitset *info, dm_block_t *root, in dm_bitset_new() 86 int dm_bitset_resize(struct dm_disk_bitset *info, dm_block_t root, in dm_bitset_resize() 88 bool default_value, dm_block_t *new_root) in dm_bitset_resize() 100 int dm_bitset_del(struct dm_disk_bitset *info, dm_block_t root) in dm_bitset_del() 106 int dm_bitset_flush(struct dm_disk_bitset *info, dm_block_t root, in dm_bitset_flush() 107 dm_block_t *new_root) in dm_bitset_flush() 130 static int read_bits(struct dm_disk_bitset *info, dm_block_t root, in read_bits() 148 static int get_array_entry(struct dm_disk_bitset *info, dm_block_t root, in get_array_entry() 149 uint32_t index, dm_block_t *new_root) in get_array_entry() [all …]
|
D | dm-space-map-disk.c | 31 dm_block_t begin; 32 dm_block_t nr_allocated_this_transaction; 42 static int sm_disk_extend(struct dm_space_map *sm, dm_block_t extra_blocks) in sm_disk_extend() 49 static int sm_disk_get_nr_blocks(struct dm_space_map *sm, dm_block_t *count) in sm_disk_get_nr_blocks() 58 static int sm_disk_get_nr_free(struct dm_space_map *sm, dm_block_t *count) in sm_disk_get_nr_free() 67 static int sm_disk_get_count(struct dm_space_map *sm, dm_block_t b, in sm_disk_get_count() 75 static int sm_disk_count_is_more_than_one(struct dm_space_map *sm, dm_block_t b, in sm_disk_count_is_more_than_one() 90 static int sm_disk_set_count(struct dm_space_map *sm, dm_block_t b, in sm_disk_set_count() 104 static int sm_disk_inc_blocks(struct dm_space_map *sm, dm_block_t b, dm_block_t e) in sm_disk_inc_blocks() 117 static int sm_disk_dec_blocks(struct dm_space_map *sm, dm_block_t b, dm_block_t e) in sm_disk_dec_blocks() [all …]
|
D | dm-space-map-common.c | 237 int sm_ll_extend(struct ll_disk *ll, dm_block_t extra_blocks) in sm_ll_extend() 240 dm_block_t i, nr_blocks, nr_indexes; in sm_ll_extend() 280 int sm_ll_lookup_bitmap(struct ll_disk *ll, dm_block_t b, uint32_t *result) in sm_ll_lookup_bitmap() 283 dm_block_t index = b; in sm_ll_lookup_bitmap() 309 static int sm_ll_lookup_big_ref_count(struct ll_disk *ll, dm_block_t b, in sm_ll_lookup_big_ref_count() 324 int sm_ll_lookup(struct ll_disk *ll, dm_block_t b, uint32_t *result) in sm_ll_lookup() 337 int sm_ll_find_free_block(struct ll_disk *ll, dm_block_t begin, in sm_ll_find_free_block() 338 dm_block_t end, dm_block_t *result) in sm_ll_find_free_block() 342 dm_block_t i, index_begin = begin; in sm_ll_find_free_block() 343 dm_block_t index_end = dm_sector_div_up(end, ll->entries_per_block); in sm_ll_find_free_block() [all …]
|
D | dm-btree-internal.h | 49 int bn_read_lock(struct dm_btree_info *info, dm_block_t b, 73 int ro_step(struct ro_spine *s, dm_block_t new_child); 83 dm_block_t root; 89 int shadow_step(struct shadow_spine *s, dm_block_t b, 104 dm_block_t shadow_root(struct shadow_spine *s); 158 int btree_get_overwrite_leaf(struct dm_btree_info *info, dm_block_t root, 160 dm_block_t *new_root, struct dm_block **leaf);
|
D | dm-array.c | 218 static int get_ablock(struct dm_array_info *info, dm_block_t b, in get_ablock() 251 static int lookup_ablock(struct dm_array_info *info, dm_block_t root, in lookup_ablock() 270 struct dm_block *block, dm_block_t *root) in insert_ablock() 280 static int __shadow_ablock(struct dm_array_info *info, dm_block_t b, in __shadow_ablock() 301 struct dm_block *block, dm_block_t b, in __reinsert_ablock() 302 dm_block_t *root) in __reinsert_ablock() 325 static int shadow_ablock(struct dm_array_info *info, dm_block_t *root, in shadow_ablock() 331 dm_block_t b; in shadow_ablock() 352 const void *value, dm_block_t *root) in insert_new_ablock() 372 dm_block_t *root) in insert_full_ablocks() [all …]
|
D | dm-btree.c | 129 int dm_btree_empty(struct dm_btree_info *info, dm_block_t *root) in dm_btree_empty() 211 static int push_frame(struct del_stack *s, dm_block_t b, unsigned int level) in push_frame() 273 int dm_btree_del(struct dm_btree_info *info, dm_block_t root) in dm_btree_del() 297 dm_block_t b; in dm_btree_del() 343 static int btree_lookup_raw(struct ro_spine *s, dm_block_t block, uint64_t key, in btree_lookup_raw() 374 int dm_btree_lookup(struct dm_btree_info *info, dm_block_t root, in dm_btree_lookup() 419 static int dm_btree_lookup_next_single(struct dm_btree_info *info, dm_block_t root, in dm_btree_lookup_next_single() 470 int dm_btree_lookup_next(struct dm_btree_info *info, dm_block_t root, in dm_btree_lookup_next() 712 dm_block_t root; in shadow_child() 973 static int get_node_free_space(struct dm_btree_info *info, dm_block_t b, unsigned int *space) in get_node_free_space() [all …]
|
D | dm-btree-spine.c | 92 int bn_read_lock(struct dm_btree_info *info, dm_block_t b, in bn_read_lock() 98 static int bn_shadow(struct dm_btree_info *info, dm_block_t orig, in bn_shadow() 140 int ro_step(struct ro_spine *s, dm_block_t new_child) in ro_step() 190 int shadow_step(struct shadow_spine *s, dm_block_t b, in shadow_step() 231 dm_block_t shadow_root(struct shadow_spine *s) in shadow_root()
|
D | dm-space-map-metadata.h | 35 dm_block_t nr_blocks, 36 dm_block_t superblock);
|
D | dm-block-manager.c | 302 static void report_recursive_bug(dm_block_t b, int r) in report_recursive_bug() 335 dm_block_t dm_block_location(struct dm_block *b) in dm_block_location() 436 dm_block_t dm_bm_nr_blocks(struct dm_block_manager *bm) in dm_bm_nr_blocks() 469 int dm_bm_read_lock(struct dm_block_manager *bm, dm_block_t b, in dm_bm_read_lock() 503 dm_block_t b, const struct dm_block_validator *v, in dm_bm_write_lock() 539 dm_block_t b, const struct dm_block_validator *v, in dm_bm_read_try_lock() 572 dm_block_t b, const struct dm_block_validator *v, in dm_bm_write_lock_zero() 625 void dm_bm_prefetch(struct dm_block_manager *bm, dm_block_t b) in dm_bm_prefetch()
|
D | dm-btree-remove.c | 166 dm_block_t root; in init_child() 493 dm_block_t b = value64(n, 0); in rebalance_children() 545 struct dm_btree_value_type *vt, dm_block_t root, in remove_raw() 594 int dm_btree_remove(struct dm_btree_info *info, dm_block_t root, in dm_btree_remove() 595 uint64_t *keys, dm_block_t *new_root) in dm_btree_remove() 639 struct dm_btree_value_type *vt, dm_block_t root, in remove_nearest() 692 static int remove_one(struct dm_btree_info *info, dm_block_t root, in remove_one() 694 dm_block_t *new_root, unsigned int *nr_removed) in remove_one() 749 int dm_btree_remove_leaves(struct dm_btree_info *info, dm_block_t root, in dm_btree_remove_leaves() 751 dm_block_t *new_root, unsigned int *nr_removed) in dm_btree_remove_leaves()
|