/linux-4.1.27/drivers/md/bcache/ |
H A D | extents.h | 7 struct bkey; 10 void bch_extent_to_text(char *, size_t, const struct bkey *); 11 bool __bch_btree_ptr_invalid(struct cache_set *, const struct bkey *); 12 bool __bch_extent_invalid(struct cache_set *, const struct bkey *);
|
H A D | bset.h | 13 * A bkey contains a key, a size field, a variable number of pointers, and some 34 * front or the back of a bkey - this is mainly used for fixing overlapping 171 struct bkey end; 191 struct bkey *(*sort_fixup)(struct btree_iter *, struct bkey *); 192 bool (*insert_fixup)(struct btree_keys *, struct bkey *, 193 struct btree_iter *, struct bkey *); 195 const struct bkey *); 196 bool (*key_bad)(struct btree_keys *, const struct bkey *); 198 struct bkey *, struct bkey *); 199 void (*key_to_text)(char *, size_t, const struct bkey *); 200 void (*key_dump)(struct btree_keys *, const struct bkey *); 236 static inline bool bkey_written(struct btree_keys *b, struct bkey *k) bkey_written() 289 void bch_bset_fix_invalidated_key(struct btree_keys *, struct bkey *); 290 bool bch_bkey_try_merge(struct btree_keys *, struct bkey *, struct bkey *); 291 void bch_bset_insert(struct btree_keys *, struct bkey *, struct bkey *); 292 unsigned bch_btree_insert_key(struct btree_keys *, struct bkey *, 293 struct bkey *); 311 struct bkey *k, *end; 315 typedef bool (*ptr_filter_fn)(struct btree_keys *, const struct bkey *); 317 struct bkey *bch_btree_iter_next(struct btree_iter *); 318 struct bkey *bch_btree_iter_next_filter(struct btree_iter *, 321 void bch_btree_iter_push(struct btree_iter *, struct bkey *, struct bkey *); 322 struct bkey *bch_btree_iter_init(struct btree_keys *, struct btree_iter *, 323 struct bkey *); 325 struct bkey *__bch_bset_search(struct btree_keys *, struct bset_tree *, 326 const struct bkey *); 331 static inline struct bkey *bch_bset_search(struct btree_keys *b, bch_bset_search() 333 const struct bkey *search) bch_bset_search() 383 #define bset_bkey_last(i) bkey_idx((struct bkey *) (i)->d, (i)->keys) 385 static inline struct bkey *bset_bkey_idx(struct bset *i, unsigned idx) bset_bkey_idx() 390 static inline void bkey_init(struct bkey *k) bkey_init() 395 static __always_inline int64_t bkey_cmp(const struct bkey *l, bkey_cmp() 396 const struct bkey *r) bkey_cmp() 403 void bch_bkey_copy_single_ptr(struct bkey *, const struct bkey *, 405 bool __bch_cut_front(const struct bkey *, struct bkey *); 406 bool __bch_cut_back(const struct bkey *, struct bkey *); 408 static inline bool bch_cut_front(const struct bkey *where, struct bkey *k) bch_cut_front() 414 static inline bool bch_cut_back(const struct bkey *where, struct bkey *k) bch_cut_back() 422 struct bkey *_ret = NULL; \ 435 static inline bool bch_ptr_invalid(struct btree_keys *b, const struct bkey *k) bch_ptr_invalid() 440 static inline bool bch_ptr_bad(struct btree_keys *b, const struct bkey *k) bch_ptr_bad() 446 size_t size, const struct bkey *k) bch_bkey_to_text() 451 static inline bool bch_bkey_equal_header(const struct bkey *l, bch_bkey_equal_header() 452 const struct bkey *r) bch_bkey_equal_header() 463 struct bkey *keys; 467 struct bkey *top; 481 static inline void bch_keylist_init_single(struct keylist *l, struct bkey *k) bch_keylist_init_single() 492 static inline void bch_keylist_add(struct keylist *l, struct bkey *k) bch_keylist_add() 524 struct bkey *bch_keylist_pop(struct keylist *);
|
H A D | extents.c | 46 static bool __ptr_invalid(struct cache_set *c, const struct bkey *k) __ptr_invalid() 67 static const char *bch_ptr_status(struct cache_set *c, const struct bkey *k) bch_ptr_status() 96 void bch_extent_to_text(char *buf, size_t size, const struct bkey *k) bch_extent_to_text() 125 static void bch_bkey_dump(struct btree_keys *keys, const struct bkey *k) bch_bkey_dump() 148 bool __bch_btree_ptr_invalid(struct cache_set *c, const struct bkey *k) __bch_btree_ptr_invalid() 165 static bool bch_btree_ptr_invalid(struct btree_keys *bk, const struct bkey *k) bch_btree_ptr_invalid() 171 static bool btree_ptr_bad_expensive(struct btree *b, const struct bkey *k) btree_ptr_bad_expensive() 203 static bool bch_btree_ptr_bad(struct btree_keys *bk, const struct bkey *k) bch_btree_ptr_bad() 226 struct bkey *insert, bch_btree_ptr_insert_fixup() 228 struct bkey *replace_key) bch_btree_ptr_insert_fixup() 264 static struct bkey *bch_extent_sort_fixup(struct btree_iter *iter, bch_extent_sort_fixup() 265 struct bkey *tmp) bch_extent_sort_fixup() 311 static void bch_subtract_dirty(struct bkey *k, bch_subtract_dirty() 322 struct bkey *insert, bch_extent_insert_fixup() 324 struct bkey *replace_key) bch_extent_insert_fixup() 335 struct bkey *k = bch_btree_iter_next(iter); bch_extent_insert_fixup() 402 struct bkey *top; bch_extent_insert_fixup() 477 bool __bch_extent_invalid(struct cache_set *c, const struct bkey *k) __bch_extent_invalid() 497 static bool bch_extent_invalid(struct btree_keys *bk, const struct bkey *k) bch_extent_invalid() 503 static bool bch_extent_bad_expensive(struct btree *b, const struct bkey *k, bch_extent_bad_expensive() 533 static bool bch_extent_bad(struct btree_keys *bk, const struct bkey *k) bch_extent_bad() 572 static uint64_t merge_chksums(struct bkey *l, struct bkey *r) merge_chksums() 578 static bool bch_extent_merge(struct btree_keys *bk, struct bkey *l, struct bkey *r) bch_extent_merge()
|
H A D | bset.c | 21 struct bkey *k, *next; bch_dump_bset() 56 struct bkey *k; __bch_count_data() 67 struct bkey *k, *p = NULL; __bch_check_keys() 111 struct bkey *k = iter->data->k, *next = bkey_next(k); bch_btree_iter_next_check() 156 struct bkey *bch_keylist_pop(struct keylist *l) bch_keylist_pop() 158 struct bkey *k = l->keys; bch_keylist_pop() 180 void bch_bkey_copy_single_ptr(struct bkey *dest, const struct bkey *src, bch_bkey_copy_single_ptr() 193 bool __bch_cut_front(const struct bkey *where, struct bkey *k) __bch_cut_front() 213 bool __bch_cut_back(const struct bkey *where, struct bkey *k) __bch_cut_back() 485 * Cacheline/offset <-> bkey pointer arithmetic: 503 static struct bkey *cacheline_to_bkey(struct bset_tree *t, unsigned cacheline, cacheline_to_bkey() 509 static unsigned bkey_to_cacheline(struct bset_tree *t, struct bkey *k) bkey_to_cacheline() 516 struct bkey *k) bkey_to_cacheline_offset() 521 static struct bkey *tree_to_bkey(struct bset_tree *t, unsigned j) tree_to_bkey() 526 static struct bkey *tree_to_prev_bkey(struct bset_tree *t, unsigned j) tree_to_prev_bkey() 535 static struct bkey *table_to_bkey(struct bset_tree *t, unsigned cacheline) table_to_bkey() 547 static inline unsigned bfloat_mantissa(const struct bkey *k, bfloat_mantissa() 557 struct bkey *m = tree_to_bkey(t, j); make_bfloat() 558 struct bkey *p = tree_to_prev_bkey(t, j); make_bfloat() 560 struct bkey *l = is_power_of_2(j) make_bfloat() 564 struct bkey *r = is_power_of_2(j + 1) make_bfloat() 637 struct bkey *prev = NULL, *k = t->data->start; bch_bset_build_written_tree() 681 void bch_bset_fix_invalidated_key(struct btree_keys *b, struct bkey *k) bch_bset_fix_invalidated_key() 729 struct bkey *k) bch_bset_fix_lookup_table() 781 bool bch_bkey_try_merge(struct btree_keys *b, struct bkey *l, struct bkey *r) bch_bkey_try_merge() 799 void bch_bset_insert(struct btree_keys *b, struct bkey *where, bch_bset_insert() 800 struct bkey *insert) bch_bset_insert() 819 unsigned bch_btree_insert_key(struct btree_keys *b, struct bkey *k, bch_btree_insert_key() 820 struct bkey *replace_key) bch_btree_insert_key() 824 struct bkey *m, *prev = NULL; bch_btree_insert_key() 868 struct bkey *l, *r; 872 const struct bkey *search) bset_search_write_set() 892 const struct bkey *search) bset_search_tree() 894 struct bkey *l, *r; bset_search_tree() 952 struct bkey *__bch_bset_search(struct btree_keys *b, struct bset_tree *t, __bch_bset_search() 953 const struct bkey *search) __bch_bset_search() 1032 void bch_btree_iter_push(struct btree_iter *iter, struct bkey *k, bch_btree_iter_push() 1033 struct bkey *end) bch_btree_iter_push() 1041 static struct bkey *__bch_btree_iter_init(struct btree_keys *b, __bch_btree_iter_init() 1043 struct bkey *search, __bch_btree_iter_init() 1046 struct bkey *ret = NULL; __bch_btree_iter_init() 1062 struct bkey *bch_btree_iter_init(struct btree_keys *b, bch_btree_iter_init() 1064 struct bkey *search) bch_btree_iter_init() 1070 static inline struct bkey *__bch_btree_iter_next(struct btree_iter *iter, __bch_btree_iter_next() 1074 struct bkey *ret = NULL; __bch_btree_iter_next() 1096 struct bkey *bch_btree_iter_next(struct btree_iter *iter) bch_btree_iter_next() 1103 struct bkey *bch_btree_iter_next_filter(struct btree_iter *iter, bch_btree_iter_next_filter() 1106 struct bkey *ret; bch_btree_iter_next_filter() 1143 struct bkey *k, *last = NULL; btree_mergesort() 1145 bool (*bad)(struct btree_keys *, const struct bkey *) = remove_stale btree_mergesort()
|
H A D | btree.h | 11 * In the interior nodes, a struct bkey always points to a child btree node, and 196 void bkey_put(struct cache_set *c, struct bkey *k); 248 struct bkey *, int, bool, struct btree *); 251 struct bkey *); 253 atomic_t *, struct bkey *); 259 void bch_initial_mark_key(struct cache_set *, int, struct bkey *); 277 struct bkey *, btree_map_nodes_fn *, int); 280 struct bkey *from, btree_map_nodes_fn *fn) bch_btree_map_nodes() 287 struct bkey *from, bch_btree_map_leaf_nodes() 294 struct bkey *); 296 struct bkey *, btree_map_keys_fn *, int); 298 typedef bool (keybuf_pred_fn)(struct keybuf *, struct bkey *); 302 struct bkey *, keybuf_pred_fn *); 303 bool bch_keybuf_check_overlapping(struct keybuf *, struct bkey *, 304 struct bkey *); 308 struct bkey *, keybuf_pred_fn *);
|
H A D | btree.c | 178 void bkey_put(struct cache_set *c, struct bkey *k) bkey_put() 581 static unsigned btree_order(struct bkey *k) btree_order() 586 static void mca_data_alloc(struct btree *b, struct bkey *k, gfp_t gfp) mca_data_alloc() 601 struct bkey *k, gfp_t gfp) mca_bucket_alloc() 818 static struct hlist_head *mca_hash(struct cache_set *c, struct bkey *k) mca_hash() 823 static struct btree *mca_find(struct cache_set *c, struct bkey *k) mca_find() 853 struct bkey *k) mca_cannibalize() 889 struct bkey *k, int level) mca_alloc() 969 struct bkey *k, int level, bool write, bch_btree_node_get() 1026 static void btree_node_prefetch(struct btree *parent, struct bkey *k) btree_node_prefetch() 1128 static void make_btree_freeing_key(struct btree *b, struct bkey *k) make_btree_freeing_key() 1172 struct bkey *k) __bch_btree_mark_key() 1225 void bch_initial_mark_key(struct cache_set *c, int level, struct bkey *k) bch_initial_mark_key() 1249 struct bkey *k; btree_gc_mark_node() 1295 struct keylist *, atomic_t *, struct bkey *); 1304 struct bkey *k; btree_gc_coalesce() 1345 struct bkey *k, *last = NULL; btree_gc_coalesce() 1502 struct bkey *k; btree_gc_count_keys() 1517 struct bkey *k; btree_gc_recurse() 1812 struct bkey *k, *p = NULL; bch_btree_check_recurse() 1886 static bool btree_insert_key(struct btree *b, struct bkey *k, btree_insert_key() 1887 struct bkey *replace_key) btree_insert_key() 1920 struct bkey *replace_key) bch_btree_insert_keys() 1926 struct bkey *k = insert_keys->keys; bch_btree_insert_keys() 1962 struct bkey *replace_key) btree_split() 2097 struct bkey *replace_key) bch_btree_insert_node() 2151 struct bkey *check_key) bch_btree_insert_check_key() 2192 struct bkey *replace_key; 2209 atomic_t *journal_ref, struct bkey *replace_key) bch_btree_insert() 2230 struct bkey *k; bch_btree_insert() 2269 struct bkey *from, bch_btree_map_nodes_recurse() 2275 struct bkey *k; bch_btree_map_nodes_recurse() 2298 struct bkey *from, btree_map_nodes_fn *fn, int flags) __bch_btree_map_nodes() 2304 struct bkey *from, btree_map_keys_fn *fn, bch_btree_map_keys_recurse() 2308 struct bkey *k; bch_btree_map_keys_recurse() 2331 struct bkey *from, btree_map_keys_fn *fn, int flags) bch_btree_map_keys() 2358 struct bkey *end; 2363 struct bkey *k) refill_keybuf_fn() 2407 struct bkey *end, keybuf_pred_fn *pred) bch_refill_keybuf() 2409 struct bkey start = buf->last_scanned; bch_refill_keybuf() 2458 bool bch_keybuf_check_overlapping(struct keybuf *buf, struct bkey *start, bch_keybuf_check_overlapping() 2459 struct bkey *end) bch_keybuf_check_overlapping() 2505 struct bkey *end, bch_keybuf_next_rescan()
|
H A D | writeback.c | 324 static bool dirty_pred(struct keybuf *buf, struct bkey *k) dirty_pred() 385 struct bkey start = KEY(dc->disk.id, 0, 0); refill_dirty() 386 struct bkey end = KEY(dc->disk.id, MAX_KEY_OFFSET, 0); refill_dirty() 387 struct bkey start_pos; refill_dirty() 477 struct bkey *k) sectors_dirty_init_fn()
|
H A D | bcache.h | 229 struct bkey last_scanned; 237 struct bkey start; 238 struct bkey end; 603 struct bkey gc_done; 687 struct bkey key; 733 const struct bkey *k, PTR_CACHE() 740 const struct bkey *k, PTR_BUCKET_NR() 747 const struct bkey *k, PTR_BUCKET() 759 static inline uint8_t ptr_stale(struct cache_set *c, const struct bkey *k, ptr_stale() 765 static inline bool ptr_available(struct cache_set *c, const struct bkey *k, ptr_available() 878 void bch_submit_bbio(struct bio *, struct cache_set *, struct bkey *, unsigned); 887 void bch_bucket_free(struct cache_set *, struct bkey *); 891 struct bkey *, int, bool); 893 struct bkey *, int, bool); 894 bool bch_alloc_sectors(struct cache_set *, struct bkey *, unsigned,
|
H A D | alloc.c | 453 void bch_bucket_free(struct cache_set *c, struct bkey *k) bch_bucket_free() 463 struct bkey *k, int n, bool wait) __bch_bucket_alloc_set() 496 struct bkey *k, int n, bool wait) bch_bucket_alloc_set() 534 const struct bkey *search, pick_data_bucket() 536 struct bkey *alloc) pick_data_bucket() 571 bool bch_alloc_sectors(struct cache_set *c, struct bkey *k, unsigned sectors, bch_alloc_sectors()
|
H A D | request.c | 38 static void bio_csum(struct bio *bio, struct bkey *k) bio_csum() 59 struct bkey *replace_key = op->replace ? &op->replace_key : NULL; bch_data_insert_keys() 156 struct bkey *src = op->insert_keys.keys, *dst = op->insert_keys.keys; bch_data_insert_error() 159 struct bkey *n = bkey_next(src); bch_data_insert_error() 212 struct bkey *k; bch_data_insert_start() 502 static int cache_lookup_fn(struct btree_op *op, struct btree *b, struct bkey *k) cache_lookup_fn() 506 struct bkey *bio_key; cache_lookup_fn() 871 struct bkey start = KEY(dc->disk.id, bio->bi_iter.bi_sector, 0); cached_dev_write() 872 struct bkey end = KEY(dc->disk.id, bio_end_sector(bio), 0); cached_dev_write()
|
H A D | debug.c | 156 static bool dump_pred(struct keybuf *buf, struct bkey *k) dump_pred()
|
H A D | io.c | 145 struct bkey *k, unsigned ptr) bch_submit_bbio()
|
H A D | journal.c | 269 struct bkey *k; bch_journal_mark() 315 struct bkey *k; bch_journal_replay() 469 struct bkey *k = &c->journal.key; journal_reclaim() 585 struct bkey *k = &c->journal.key;
|
H A D | movinggc.c | 21 static bool moving_pred(struct keybuf *buf, struct bkey *k) moving_pred()
|
H A D | super.c | 360 struct bkey *k, struct closure *parent) uuid_io() 401 struct bkey *k = &j->uuid_bucket; uuid_read() 1584 struct bkey *k; run_cache_set()
|
H A D | sysfs.c | 447 struct bkey *k; bch_root_usage()
|
/linux-4.1.27/include/uapi/linux/ |
H A D | bcache.h | 22 struct bkey { struct 29 BITMASK(name, struct bkey, field, offset, size) 32 static inline __u64 name(const struct bkey *k, unsigned i) \ 35 static inline void SET_##name(struct bkey *k, unsigned i, __u64 v) \ 55 static inline __u64 KEY_OFFSET(const struct bkey *k) KEY_OFFSET() 60 static inline void SET_KEY_OFFSET(struct bkey *k, __u64 v) SET_KEY_OFFSET() 71 ((struct bkey) { \ 98 static inline unsigned long bkey_u64s(const struct bkey *k) bkey_u64s() 100 return (sizeof(struct bkey) / sizeof(__u64)) + KEY_PTRS(k); bkey_u64s() 103 static inline unsigned long bkey_bytes(const struct bkey *k) bkey_bytes() 110 static inline void bkey_copy_key(struct bkey *dest, const struct bkey *src) bkey_copy_key() 116 static inline struct bkey *bkey_next(const struct bkey *k) bkey_next() 119 return (struct bkey *) (d + bkey_u64s(k)); bkey_next() 122 static inline struct bkey *bkey_idx(const struct bkey *k, unsigned nr_keys) bkey_idx() 125 return (struct bkey *) (d + nr_keys); bkey_idx() 131 union { struct bkey key; __u64 key ## _pad[BKEY_PAD]; } 291 struct bkey start[0]; 356 struct bkey start[0];
|
/linux-4.1.27/include/trace/events/ |
H A D | bcache.h | 40 DECLARE_EVENT_CLASS(bkey, 41 TP_PROTO(struct bkey *k), 186 DEFINE_EVENT(bkey, bcache_cache_insert, 187 TP_PROTO(struct bkey *k), 208 DEFINE_EVENT(bkey, bcache_journal_replay_key, 209 TP_PROTO(struct bkey *k), 299 DEFINE_EVENT(bkey, bcache_gc_copy, 300 TP_PROTO(struct bkey *k), 304 DEFINE_EVENT(bkey, bcache_gc_copy_collision, 305 TP_PROTO(struct bkey *k), 310 TP_PROTO(struct btree *b, struct bkey *k, unsigned op, unsigned status), 469 DEFINE_EVENT(bkey, bcache_writeback, 470 TP_PROTO(struct bkey *k), 474 DEFINE_EVENT(bkey, bcache_writeback_collision, 475 TP_PROTO(struct bkey *k),
|
/linux-4.1.27/lib/ |
H A D | btree.c | 148 static unsigned long *bkey(struct btree_geo *geo, unsigned long *node, int n) bkey() function 161 longcpy(bkey(geo, node, n), key, geo->keylen); setkey() 172 longset(bkey(geo, node, n), 0, geo->keylen); clearpair() 219 longcpy(key, bkey(geo, node, 0), geo->keylen); btree_last() 227 return longcmp(bkey(geo, node, pos), key, geo->keylen); keycmp() 338 retry_key = bkey(geo, oldnode, i); btree_get_prev() 347 longcpy(__key, bkey(geo, node, i), geo->keylen); btree_get_prev() 424 setkey(geo, node, 0, bkey(geo, head->node, fill - 1)); btree_grow() 477 bkey(geo, node, fill / 2 - 1), btree_insert_level() 484 setkey(geo, new, i, bkey(geo, node, i)); btree_insert_level() 486 setkey(geo, node, i, bkey(geo, node, i + fill / 2)); btree_insert_level() 491 setkey(geo, node, i, bkey(geo, node, fill - 1)); btree_insert_level() 501 setkey(geo, node, i, bkey(geo, node, i - 1)); btree_insert_level() 529 setkey(geo, left, lfill + i, bkey(geo, right, i)); merge() 536 btree_remove_level(head, geo, bkey(geo, parent, lpos), level + 1); merge() 614 setkey(geo, node, i, bkey(geo, node, i + 1)); btree_remove_level() 694 func(child, opaque, bkey(geo, node, i), count++, __btree_for_each()
|
/linux-4.1.27/arch/s390/include/asm/ |
H A D | qdio.h | 31 * @bkey: access key for SL 41 u32 bkey : 4; member in struct:qdesfmt0
|
/linux-4.1.27/fs/hfs/ |
H A D | hfs.h | 145 /* Cast to a pointer to a generic bkey */
|
/linux-4.1.27/drivers/s390/cio/ |
H A D | qdio_setup.c | 410 irq_ptr->qdr->qdf0[i + nr].bkey = PAGE_DEFAULT_KEY >> 4; __qdio_allocate_fill_qdr()
|