/linux-6.8/tools/testing/selftests/drivers/net/netdevsim/ |
D | nexthop.sh | 213 $IP nexthop add id 10 group 1/2 type resilient buckets 4 214 …nexthop_check "id 10" "id 10 group 1/2 type resilient buckets 4 idle_timer 120 unbalanced_timer 0 … 218 check_err $? "Wrong nexthop buckets count" 220 check_err $? "Wrong nexthop buckets count" 229 $IP nexthop add id 10 group 1,3/2,2 type resilient buckets 5 230 …nexthop_check "id 10" "id 10 group 1,3/2,2 type resilient buckets 5 idle_timer 120 unbalanced_time… 234 check_err $? "Wrong nexthop buckets count" 236 check_err $? "Wrong nexthop buckets count" 259 $IP nexthop add id 10 group 1/2 type resilient buckets 4 &> /dev/null 325 $IP nexthop add id 10 group 1/2 type resilient buckets 6 [all …]
|
/linux-6.8/fs/bcachefs/ |
D | movinggc.c | 14 #include "buckets.h" 144 move_buckets *buckets) in bch2_copygc_get_buckets() argument 180 ret2 = darray_push(buckets, b); in bch2_copygc_get_buckets() 186 ret2 = buckets->nr >= nr_to_get; in bch2_copygc_get_buckets() 191 pr_debug("have: %zu (%zu) saw %zu in flight %zu not movable %zu got %zu (%zu)/%zu buckets ret %i", in bch2_copygc_get_buckets() 193 saw, in_flight, not_movable, buckets->nr, sectors, nr_to_get, ret); in bch2_copygc_get_buckets() 208 move_buckets buckets = { 0 }; in bch2_copygc() local 213 ret = bch2_copygc_get_buckets(ctxt, buckets_in_flight, &buckets); in bch2_copygc() 217 darray_for_each(buckets, i) { in bch2_copygc() 240 darray_exit(&buckets); in bch2_copygc() [all …]
|
D | journal_sb.c | 39 b[i] = le64_to_cpu(journal->buckets[i]); in bch2_sb_journal_validate() 62 prt_printf(err, "duplicate journal buckets %llu", b[i]); in bch2_sb_journal_validate() 78 prt_printf(out, "Buckets: "); in bch2_sb_journal_to_text() 80 prt_printf(out, " %llu", le64_to_cpu(journal->buckets[i])); in bch2_sb_journal_to_text() 147 prt_printf(err, "duplicate journal buckets in ranges %llu-%llu, %llu-%llu", in bch2_sb_journal_v2_validate() 165 prt_printf(out, "Buckets: "); in bch2_sb_journal_v2_to_text() 179 u64 *buckets, unsigned nr) in bch2_journal_buckets_to_sb() argument 194 if (buckets[i] + 1 != buckets[i + 1]) in bch2_journal_buckets_to_sb() 204 j->d[dst].start = cpu_to_le64(buckets[0]); in bch2_journal_buckets_to_sb() 208 if (buckets[i] == buckets[i - 1] + 1) { in bch2_journal_buckets_to_sb() [all …]
|
D | journal_reclaim.c | 7 #include "buckets.h" 83 unsigned sectors, buckets, unwritten; in journal_dev_space_available() local 92 buckets = bch2_journal_dev_buckets_available(j, ja, from); in journal_dev_space_available() 112 if (!buckets) { in journal_dev_space_available() 117 buckets--; in journal_dev_space_available() 124 if (sectors < ca->mi.bucket_size && buckets) { in journal_dev_space_available() 125 buckets--; in journal_dev_space_available() 131 .total = sectors + buckets * ca->mi.bucket_size, in journal_dev_space_available() 256 * Advance ja->discard_idx as long as it points to buckets that are no longer 274 ja->buckets[ja->discard_idx]), in bch2_journal_do_discards() [all …]
|
D | buckets.h | 95 struct bucket_array *buckets = gc_bucket_array(ca); in gc_bucket() local 97 BUG_ON(b < buckets->first_bucket || b >= buckets->nbuckets); in gc_bucket() 98 return buckets->b + b; in gc_bucket() 240 usage.d[BCH_DATA_free].buckets - in dev_buckets_free() 250 usage.d[BCH_DATA_free].buckets in __dev_buckets_available() 251 + usage.d[BCH_DATA_cached].buckets in __dev_buckets_available() 252 + usage.d[BCH_DATA_need_gc_gens].buckets in __dev_buckets_available() 253 + usage.d[BCH_DATA_need_discard].buckets in __dev_buckets_available()
|
/linux-6.8/Documentation/networking/ |
D | nexthop-group-resilient.rst | 54 continuous. With a hash table, mapping between the hash table buckets and 56 the buckets that held it are simply reassigned to other next hops:: 70 choose a subset of buckets that are currently not used for forwarding 72 keeping the "busy" buckets intact. This way, established flows are ideally 80 certain number of buckets, according to its weight and the number of 81 buckets in the hash table. In accordance with the source code, we will call 86 Next hops that have fewer buckets than their wants count, are called 95 be considered "idle". Buckets that are not idle are busy. 98 buckets: 105 underweight next hops. If, after considering all buckets in this manner, [all …]
|
/linux-6.8/drivers/md/bcache/ |
D | alloc.c | 7 * Allocation in bcache is done in terms of buckets: 17 * of buckets on disk, with a pointer to them in the journal header. 25 * batch this up: We fill up the free_inc list with freshly invalidated buckets, 26 * call prio_write(), and when prio_write() finishes we pull buckets off the 31 * smaller freelist, and buckets on that list are always ready to be used. 36 * There is another freelist, because sometimes we have buckets that we know 38 * priorities to be rewritten. These come from freed btree nodes and buckets 40 * them (because they were overwritten). That's the unused list - buckets on the 57 * buckets are ready. 59 * invalidate_buckets_(lru|fifo)() find buckets that are available to be [all …]
|
D | bcache.h | 35 * BUCKETS/ALLOCATION: 42 * To do this, we first divide the cache device up into buckets. A bucket is the 47 * it. The gens and priorities for all the buckets are stored contiguously and 48 * packed on disk (in a linked list of buckets - aside from the superblock, all 49 * of bcache's metadata is stored in buckets). 56 * The generation is used for invalidating buckets. Each pointer also has an 8 62 * Bcache is entirely COW - we never write twice to a bucket, even buckets that 113 * (If buckets are really big we'll only use part of the bucket for a btree node 143 * Thus, the primary purpose of garbage collection is to find buckets to reuse. 145 * allocation can reuse buckets sooner when they've been mostly overwritten. [all …]
|
/linux-6.8/block/ |
D | blk-stat.h | 16 * buckets by @bucket_fn and added to a per-cpu buffer, @cpu_stat. When the 31 * @cpu_stat: Per-cpu statistics buckets. 43 * @buckets: Number of statistics buckets. 45 unsigned int buckets; member 48 * @stat: Array of statistics buckets. 79 * @buckets: Number of statistics buckets. 89 unsigned int buckets, void *data);
|
D | blk-stat.c | 86 for (bucket = 0; bucket < cb->buckets; bucket++) in blk_stat_timer_fn() 93 for (bucket = 0; bucket < cb->buckets; bucket++) { in blk_stat_timer_fn() 105 unsigned int buckets, void *data) in blk_stat_alloc_callback() argument 113 cb->stat = kmalloc_array(buckets, sizeof(struct blk_rq_stat), in blk_stat_alloc_callback() 119 cb->cpu_stat = __alloc_percpu(buckets * sizeof(struct blk_rq_stat), in blk_stat_alloc_callback() 130 cb->buckets = buckets; in blk_stat_alloc_callback() 147 for (bucket = 0; bucket < cb->buckets; bucket++) in blk_stat_add_callback()
|
/linux-6.8/drivers/s390/scsi/ |
D | zfcp_reqlist.h | 16 /* number of hash buckets */ 22 * @buckets: Array of hashbuckets, each is a list of requests in this bucket 26 struct list_head buckets[ZFCP_REQ_LIST_BUCKETS]; member 52 INIT_LIST_HEAD(&rl->buckets[i]); in zfcp_reqlist_alloc() 68 if (!list_empty(&rl->buckets[i])) in zfcp_reqlist_isempty() 92 list_for_each_entry(req, &rl->buckets[i], list) in _zfcp_reqlist_find() 165 list_add_tail(&req->list, &rl->buckets[i]); in zfcp_reqlist_add() 182 list_splice_init(&rl->buckets[i], list); in zfcp_reqlist_move() 209 list_for_each_entry(req, &rl->buckets[i], list) in zfcp_reqlist_apply_for_all()
|
/linux-6.8/tools/testing/selftests/net/ |
D | fib_nexthops.sh | 355 local buckets=$2 364 # create a resilient group with $buckets buckets and dump them 366 run_cmd "$IP nexthop add id 1000 group 100 type resilient buckets $buckets" 368 log_test $? 0 "Dump large (x$buckets) nexthop buckets" 942 # migration of nexthop buckets - equal weights 946 run_cmd "$IP nexthop add id 102 group 62/63 type resilient buckets 2 idle_timer 0" 950 "id 102 group 62 type resilient buckets 2 idle_timer 0 unbalanced_timer 0 unbalanced_time 0" 954 log_test $? 0 "Nexthop buckets updated when entry is deleted" 957 run_cmd "$IP nexthop replace id 102 group 62/63 type resilient buckets 2 idle_timer 0" 959 "id 102 group 62/63 type resilient buckets 2 idle_timer 0 unbalanced_timer 0 unbalanced_time 0" [all …]
|
/linux-6.8/net/netfilter/ipvs/ |
D | ip_vs_dh.c | 64 struct ip_vs_dh_bucket buckets[IP_VS_DH_TAB_SIZE]; member 90 return rcu_dereference(s->buckets[ip_vs_dh_hashkey(af, addr)].dest); in ip_vs_dh_get() 95 * Assign all the hash buckets of the specified table with the service. 106 b = &s->buckets[0]; in ip_vs_dh_reassign() 132 * Flush all the hash buckets of the specified table. 140 b = &s->buckets[0]; in ip_vs_dh_flush() 166 /* assign the hash buckets with current dests */ in ip_vs_dh_init_svc() 177 /* got to clean up hash buckets here */ in ip_vs_dh_done_svc() 192 /* assign the hash buckets with the updated service */ in ip_vs_dh_dest_changed()
|
D | ip_vs_sh.c | 70 struct ip_vs_sh_bucket buckets[IP_VS_SH_TAB_SIZE]; member 108 struct ip_vs_dest *dest = rcu_dereference(s->buckets[hash].dest); in ip_vs_sh_get() 130 dest = rcu_dereference(s->buckets[ihash].dest); in ip_vs_sh_get_fallback() 145 dest = rcu_dereference(s->buckets[hash].dest); in ip_vs_sh_get_fallback() 160 * Assign all the hash buckets of the specified table with the service. 172 b = &s->buckets[0]; in ip_vs_sh_reassign() 208 * Flush all the hash buckets of the specified table. 216 b = &s->buckets[0]; in ip_vs_sh_flush() 242 /* assign the hash buckets with current dests */ in ip_vs_sh_init_svc() 253 /* got to clean up hash buckets here */ in ip_vs_sh_done_svc() [all …]
|
/linux-6.8/tools/lib/bpf/ |
D | hashmap.c | 21 /* start with 4 buckets */ 45 map->buckets = NULL; in hashmap__init() 71 free(map->buckets); in hashmap__clear() 72 map->buckets = NULL; in hashmap__clear() 124 free(map->buckets); in hashmap_grow() 125 map->buckets = new_buckets; in hashmap_grow() 137 if (!map->buckets) in hashmap_find_entry() 140 for (prev_ptr = &map->buckets[hash], cur = *prev_ptr; in hashmap_find_entry() 200 hashmap_add_entry(&map->buckets[h], entry); in hashmap_insert()
|
D | hashmap.h | 77 struct hashmap_entry **buckets; member 170 for (cur = map->buckets[bkt]; cur; cur = cur->next) 182 for (cur = map->buckets[bkt]; \ 193 for (cur = map->buckets \ 194 ? map->buckets[hash_bits(map->hash_fn((_key), map->ctx), map->cap_bits)] \ 201 for (cur = map->buckets \ 202 ? map->buckets[hash_bits(map->hash_fn((_key), map->ctx), map->cap_bits)] \
|
/linux-6.8/tools/perf/util/ |
D | hashmap.c | 21 /* start with 4 buckets */ 45 map->buckets = NULL; in hashmap__init() 71 free(map->buckets); in hashmap__clear() 72 map->buckets = NULL; in hashmap__clear() 124 free(map->buckets); in hashmap_grow() 125 map->buckets = new_buckets; in hashmap_grow() 137 if (!map->buckets) in hashmap_find_entry() 140 for (prev_ptr = &map->buckets[hash], cur = *prev_ptr; in hashmap_find_entry() 200 hashmap_add_entry(&map->buckets[h], entry); in hashmap_insert()
|
D | hashmap.h | 77 struct hashmap_entry **buckets; member 170 for (cur = map->buckets[bkt]; cur; cur = cur->next) 182 for (cur = map->buckets[bkt]; \ 193 for (cur = map->buckets \ 194 ? map->buckets[hash_bits(map->hash_fn((_key), map->ctx), map->cap_bits)] \ 201 for (cur = map->buckets \ 202 ? map->buckets[hash_bits(map->hash_fn((_key), map->ctx), map->cap_bits)] \
|
/linux-6.8/drivers/net/ethernet/mellanox/mlx5/core/lag/ |
D | port_sel.h | 13 /* Each port has ldev->buckets number of rules and they are arrange in 14 * [port * buckets .. port * buckets + buckets) locations
|
/linux-6.8/lib/ |
D | hashtable_test.c | 189 int buckets[2]; in hashtable_test_hash_for_each_possible() local 219 /* Save the buckets for the different keys. */ in hashtable_test_hash_for_each_possible() 223 buckets[y->key] = bkt; in hashtable_test_hash_for_each_possible() 230 if (buckets[0] == buckets[1]) { in hashtable_test_hash_for_each_possible() 244 int buckets[2]; in hashtable_test_hash_for_each_possible_safe() local 277 /* Save the buckets for the different keys. */ in hashtable_test_hash_for_each_possible_safe() 281 buckets[y->key] = bkt; in hashtable_test_hash_for_each_possible_safe() 288 if (buckets[0] == buckets[1]) { in hashtable_test_hash_for_each_possible_safe()
|
/linux-6.8/net/netfilter/ |
D | nft_set_pipapo.h | 18 /* Bits to be grouped together in table buckets depending on set size */ 49 /* Number of buckets given by 2 ^ n, with n bucket bits */ 55 /* Use the rest of mapping table buckets for rule indices, but it makes no sense 116 * @bb: Number of bits grouped together in lookup table buckets 117 * @lt: Lookup table: 'groups' rows of buckets 193 * pipapo_and_field_buckets_4bit() - Intersect 4-bit buckets 196 * @data: Input data selecting table buckets 221 * pipapo_and_field_buckets_8bit() - Intersect 8-bit buckets 224 * @data: Input data selecting table buckets
|
/linux-6.8/net/ceph/crush/ |
D | crush.c | 110 /* buckets */ in crush_destroy() 111 if (map->buckets) { in crush_destroy() 114 if (map->buckets[b] == NULL) in crush_destroy() 116 crush_destroy_bucket(map->buckets[b]); in crush_destroy() 118 kfree(map->buckets); in crush_destroy()
|
/linux-6.8/net/sched/ |
D | sch_hhf.c | 19 * Flows are classified into two buckets: non-heavy-hitter and heavy-hitter 20 * buckets. Initially, a new flow starts as non-heavy-hitter. Once classified 22 * The buckets are dequeued by a Weighted Deficit Round Robin (WDRR) scheduler, 103 #define WDRR_BUCKET_CNT 2 /* two buckets for Weighted DRR */ 128 struct wdrr_bucket buckets[WDRR_BUCKET_CNT]; member 147 struct list_head new_buckets; /* list of new buckets */ 148 struct list_head old_buckets; /* list of old buckets */ 244 /* Assigns packets to WDRR buckets. Implements a multi-stage filter to 355 bucket = &q->buckets[WDRR_BUCKET_FOR_HH]; in hhf_drop() 357 bucket = &q->buckets[WDRR_BUCKET_FOR_NON_HH]; in hhf_drop() [all …]
|
/linux-6.8/fs/nfs/ |
D | pnfs_nfs.c | 102 p = kmalloc(struct_size(p, buckets, n), gfp_flags); in pnfs_alloc_commit_array() 109 for (b = &p->buckets[0]; n != 0; b++, n--) { in pnfs_alloc_commit_array() 259 struct pnfs_commit_bucket *buckets, in pnfs_bucket_scan_array() argument 267 cnt = pnfs_bucket_scan_ds_commit_list(&buckets[i], cinfo, max); in pnfs_bucket_scan_array() 288 cnt = pnfs_bucket_scan_array(cinfo, array->buckets, in pnfs_generic_scan_commit_lists() 304 struct pnfs_commit_bucket *buckets, in pnfs_bucket_recover_commit_reqs() argument 314 for (i = 0, b = buckets; i < nbuckets; i++, b++) { in pnfs_bucket_recover_commit_reqs() 343 array->buckets, in pnfs_generic_recover_commit_reqs() 355 pnfs_bucket_search_commit_reqs(struct pnfs_commit_bucket *buckets, in pnfs_bucket_search_commit_reqs() argument 364 for (i = 0, b = buckets; i < nbuckets; i++, b++) { in pnfs_bucket_search_commit_reqs() [all …]
|
/linux-6.8/include/uapi/linux/netfilter/ |
D | xt_hashlimit.h | 38 __u32 size; /* how many buckets */ 62 __u32 size; /* how many buckets */ 76 __u32 size; /* how many buckets */ 90 __u32 size; /* how many buckets */
|