| /linux/Documentation/networking/ |
| H A 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 98 buckets: 105 underweight next hops. If, after considering all buckets in this manner, 109 There may not be enough "idle" buckets to satisfy the updated wants counts [all …]
|
| /linux/drivers/s390/scsi/ |
| H A D | zfcp_reqlist.h | 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/tools/testing/selftests/bpf/ |
| H A D | bpf_arena_htab.h | 14 htab_bucket_t *buckets; member 21 htab_bucket_t *b = htab->buckets; in __select_bucket() 95 void __arena *buckets = bpf_arena_alloc_pages(&arena, NULL, 2, NUMA_NO_NODE, 0); in htab_init() local 97 cast_user(buckets); in htab_init() 98 htab->buckets = buckets; in htab_init()
|
| /linux/tools/lib/bpf/ |
| H A 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)] \
|
| H A D | hashmap.c | 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()
|
| /linux/tools/perf/util/ |
| H A 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)] \
|
| H A D | hashmap.c | 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()
|
| /linux/block/ |
| H A D | blk-stat.c | 83 for (bucket = 0; bucket < cb->buckets; bucket++) in blk_stat_timer_fn() 90 for (bucket = 0; bucket < cb->buckets; bucket++) { in blk_stat_timer_fn() 102 unsigned int buckets, void *data) in blk_stat_alloc_callback() argument 110 cb->stat = kmalloc_objs(struct blk_rq_stat, buckets); in blk_stat_alloc_callback() 115 cb->cpu_stat = __alloc_percpu(buckets * sizeof(struct blk_rq_stat), in blk_stat_alloc_callback() 126 cb->buckets = buckets; in blk_stat_alloc_callback() 143 for (bucket = 0; bucket < cb->buckets; bucket++) in blk_stat_add_callback()
|
| /linux/drivers/md/dm-vdo/ |
| H A D | priority-table.c | 44 struct bucket buckets[]; member 69 struct bucket *bucket = &table->buckets[priority]; in vdo_make_priority_table() 116 list_del_init(&table->buckets[priority].queue); in vdo_reset_priority_table() 134 list_move_tail(entry, &table->buckets[priority].queue); in vdo_priority_table_enqueue() 173 bucket = &table->buckets[top_priority]; in vdo_priority_table_dequeue()
|
| H A D | int-map.c | 102 struct bucket *buckets; member 168 "struct int_map buckets", &map->buckets); in allocate_buckets() 220 vdo_free(vdo_forget(map->buckets)); in vdo_int_map_free() 307 return &map->buckets[(hash * map->capacity) >> 32]; in select_bucket() 391 struct bucket *entry = &old_map.buckets[i]; in resize_buckets() 399 vdo_free(vdo_forget(map->buckets)); in resize_buckets() 406 vdo_free(vdo_forget(old_map.buckets)); in resize_buckets() 429 ptrdiff_t remaining = &map->buckets[map->bucket_count] - bucket; in find_empty_bucket()
|
| /linux/tools/testing/selftests/drivers/net/netdevsim/ |
| H A D | nexthop.sh | 213 $IP nexthop add id 10 group 1/2 type resilient buckets 4 229 $IP nexthop add id 10 group 1,3/2,2 type resilient buckets 5 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 353 $IP nexthop add id 10 group 1/2 type resilient buckets 6 408 $IP nexthop add id 10 group 1/2 type resilient buckets 8 idle_timer 4 434 type resilient buckets 8 idle_timer 6 469 $IP nexthop add id 10 group 1/2 type resilient buckets 8 $timer 4 504 $IP nexthop add id 10 group 1/2 type resilient buckets 8 $timer 8 535 type resilient buckets 8 $timer 4 [all …]
|
| /linux/lib/tests/ |
| H A D | hashtable_test.c | 189 int buckets[2]; in hashtable_test_hash_for_each_possible() local 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 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/drivers/pwm/ |
| H A D | pwm-airoha.c | 95 struct airoha_pwm_bucket buckets[AIROHA_PWM_NUM_BUCKETS]; member 206 for (i = 0; i < ARRAY_SIZE(pc->buckets); i++) { in airoha_pwm_get_generator() 207 struct airoha_pwm_bucket *bucket = &pc->buckets[i]; in airoha_pwm_get_generator() 278 pc->buckets[bucket].used--; in airoha_pwm_release_bucket_config() 338 if (!pc->buckets[bucket].used) in airoha_pwm_consume_generator() 340 pc->buckets[bucket].used++; in airoha_pwm_consume_generator() 343 pc->buckets[bucket].period_ticks = period_ticks; in airoha_pwm_consume_generator() 344 pc->buckets[bucket].duty_ticks = duty_ticks; in airoha_pwm_consume_generator() 349 pc->buckets[bucket].used--; in airoha_pwm_consume_generator() 462 pc->buckets[bucket].used--; in airoha_pwm_config()
|
| /linux/tools/perf/ |
| H A D | builtin-ftrace.c | 853 static void make_histogram(struct perf_ftrace *ftrace, int buckets[], in make_histogram() argument 930 buckets[i]++; in make_histogram() 942 static void display_histogram(struct perf_ftrace *ftrace, int buckets[]) in display_histogram() argument 954 total += buckets[i]; in display_histogram() 964 bar_len = buckets[0] * bar_total / total; in display_histogram() 966 if (!ftrace->hide_empty || buckets[0]) in display_histogram() 969 buckets[0], bar_len, bar, bar_total - bar_len, ""); in display_histogram() 975 if (ftrace->hide_empty && !buckets[i]) in display_histogram() 1006 bar_len = buckets[i] * bar_total / total; in display_histogram() 1007 printf(" %s | %10d | %.*s%*s |\n", unit, buckets[i], bar_len, bar, in display_histogram() [all …]
|
| /linux/net/ceph/crush/ |
| H A D | crush.c | 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()
|
| H A D | mapper.c | 531 itemtype = map->buckets[-1-item]->type; in crush_choose_firstn() 544 in = map->buckets[-1-item]; in crush_choose_firstn() 568 map->buckets[-1-item], in crush_choose_firstn() 744 itemtype = map->buckets[-1-item]->type; in crush_choose_indep() 761 in = map->buckets[-1-item]; in crush_choose_indep() 781 map->buckets[-1-item], in crush_choose_indep() 868 if (!map->buckets[b]) in crush_init_workspace() 872 switch (map->buckets[b]->alg) { in crush_init_workspace() 880 v += map->buckets[b]->size * sizeof(__u32); in crush_init_workspace() 951 map->buckets[-1-curstep->arg1])) { in crush_do_rule() [all …]
|
| /linux/net/netfilter/ipvs/ |
| H A D | ip_vs_sh.c | 69 struct ip_vs_sh_bucket buckets[IP_VS_SH_TAB_SIZE]; member 107 struct ip_vs_dest *dest = rcu_dereference(s->buckets[hash].dest); in ip_vs_sh_get() 129 dest = rcu_dereference(s->buckets[ihash].dest); in ip_vs_sh_get_fallback() 144 dest = rcu_dereference(s->buckets[hash].dest); in ip_vs_sh_get_fallback() 171 b = &s->buckets[0]; in ip_vs_sh_reassign() 215 b = &s->buckets[0]; in ip_vs_sh_flush()
|
| H A D | ip_vs_dh.c | 63 struct ip_vs_dh_bucket buckets[IP_VS_DH_TAB_SIZE]; member 89 return rcu_dereference(s->buckets[ip_vs_dh_hashkey(af, addr)].dest); in ip_vs_dh_get() 105 b = &s->buckets[0]; in ip_vs_dh_reassign() 139 b = &s->buckets[0]; in ip_vs_dh_flush()
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/ipoib/ |
| H A D | ipoib_vlan.c | 45 struct hlist_head buckets[1 << MLX5I_MAX_LOG_PKEY_SUP]; member 71 static struct qpn_to_netdev *mlx5i_find_qpn_to_netdev_node(struct hlist_head *buckets, in mlx5i_find_qpn_to_netdev_node() argument 74 struct hlist_head *h = &buckets[hash_32(qpn, MLX5I_MAX_LOG_PKEY_SUP)]; in mlx5i_find_qpn_to_netdev_node() 99 hlist_add_head(&new_node->hlist, &ht->buckets[key]); in mlx5i_pkey_add_qpn() 112 node = mlx5i_find_qpn_to_netdev_node(ht->buckets, qpn); in mlx5i_pkey_del_qpn() 131 node = mlx5i_find_qpn_to_netdev_node(ipriv->qpn_htbl->buckets, qpn); in mlx5i_pkey_get_netdev()
|
| /linux/drivers/md/ |
| H A D | dm-region-hash.c | 73 struct list_head *buckets; member 209 rh->buckets = vmalloc_array(nr_buckets, sizeof(*rh->buckets)); in dm_region_hash_create() 210 if (!rh->buckets) { in dm_region_hash_create() 217 INIT_LIST_HEAD(rh->buckets + i); in dm_region_hash_create() 231 vfree(rh->buckets); in dm_region_hash_create() 247 list_for_each_entry_safe(reg, nreg, rh->buckets + h, in dm_region_hash_destroy() 258 vfree(rh->buckets); in dm_region_hash_destroy() 277 struct list_head *bucket = rh->buckets + rh_hash(rh, region); in __rh_lookup() 288 list_add(®->hash_list, rh->buckets + rh_hash(rh, reg->key)); in __rh_insert()
|
| /linux/tools/testing/selftests/bpf/prog_tests/ |
| H A D | arena_htab.c | 20 printf("htab %p buckets %p n_buckets %d\n", htab, htab->buckets, htab->n_buckets); in test_arena_htab_common() 21 ASSERT_OK_PTR(htab->buckets, "htab->buckets shouldn't be NULL"); in test_arena_htab_common() 22 for (i = 0; htab->buckets && i < 16; i += 4) { in test_arena_htab_common()
|
| /linux/drivers/md/persistent-data/ |
| H A D | dm-transaction-manager.c | 99 struct rb_root buckets[DM_HASH_SIZE]; member 113 node = &tm->buckets[bucket].rb_node; in is_shadow() 147 node = &tm->buckets[bucket].rb_node; in insert_shadow() 159 rb_insert_color(&si->node, &tm->buckets[bucket]); in insert_shadow() 170 while (!RB_EMPTY_ROOT(&tm->buckets[i])) { in wipe_shadow_table() 172 rb_entry(tm->buckets[i].rb_node, struct shadow_info, node); in wipe_shadow_table() 173 rb_erase(&si->node, &tm->buckets[i]); in wipe_shadow_table() 199 tm->buckets[i] = RB_ROOT; in dm_tm_create()
|
| /linux/fs/nfs/ |
| H A D | pnfs_nfs.c | 104 p = kmalloc_flex(*p, buckets, n, gfp_flags); in pnfs_alloc_commit_array() 111 for (b = &p->buckets[0]; n != 0; b++, n--) { in pnfs_alloc_commit_array() 261 struct pnfs_commit_bucket *buckets, in pnfs_bucket_scan_array() argument 269 cnt = pnfs_bucket_scan_ds_commit_list(&buckets[i], cinfo, max); in pnfs_bucket_scan_array() 290 cnt = pnfs_bucket_scan_array(cinfo, array->buckets, in pnfs_generic_scan_commit_lists() 306 struct pnfs_commit_bucket *buckets, in pnfs_bucket_recover_commit_reqs() argument 316 for (i = 0, b = buckets; i < nbuckets; i++, b++) { in pnfs_bucket_recover_commit_reqs() 345 array->buckets, in pnfs_generic_recover_commit_reqs() 385 static void pnfs_generic_retry_commit(struct pnfs_commit_bucket *buckets, in pnfs_generic_retry_commit() argument 394 for (bucket = buckets; idx < nbuckets; bucket++, idx++) { in pnfs_generic_retry_commit() [all …]
|
| H A D | nfs42xattr.c | 70 struct nfs4_xattr_bucket buckets[NFS4_XATTR_HASH_SIZE]; member 111 INIT_HLIST_HEAD(&cache->buckets[i].hlist); in nfs4_xattr_hash_init() 112 spin_lock_init(&cache->buckets[i].lock); in nfs4_xattr_hash_init() 113 cache->buckets[i].cache = cache; in nfs4_xattr_hash_init() 114 cache->buckets[i].draining = false; in nfs4_xattr_hash_init() 276 if (WARN_ON(!hlist_empty(&cache->buckets[i].hlist))) in nfs4_xattr_free_cache_cb() 278 cache->buckets[i].draining = false; in nfs4_xattr_free_cache_cb() 394 bucket = &cache->buckets[i]; in nfs4_xattr_discard_cache() 506 return &cache->buckets[jhash(name, strlen(name), 0) & in nfs4_xattr_hash_bucket() 507 (ARRAY_SIZE(cache->buckets) - 1)]; in nfs4_xattr_hash_bucket() [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/lag/ |
| H A D | port_sel.c | 54 ft_attr.max_fte = ldev->ports * ldev->buckets; in mlx5_lag_create_port_sel_table() 81 for (j = 0; j < ldev->buckets; j++) { in mlx5_lag_create_port_sel_table() 84 idx = i * ldev->buckets + j; in mlx5_lag_create_port_sel_table() 96 idx = k * ldev->buckets + j; in mlx5_lag_create_port_sel_table() 99 j = ldev->buckets; in mlx5_lag_create_port_sel_table() 361 for (j = 0; j < ldev->buckets; j++) { in mlx5_lag_destroy_definer() 362 idx = i * ldev->buckets + j; in mlx5_lag_destroy_definer() 592 for (j = 0; j < ldev->buckets; j++) { in __mlx5_lag_modify_definers_destinations() 593 idx = i * ldev->buckets + j; in __mlx5_lag_modify_definers_destinations()
|