Home
last modified time | relevance | path

Searched refs:htbl (Results 1 - 17 of 17) sorted by relevance

/kernel/linux/linux-5.10/drivers/infiniband/ulp/ipoib/
H A Dipoib_main.c1245 static u32 ipoib_addr_hash(struct ipoib_neigh_hash *htbl, u8 *daddr) in ipoib_addr_hash() argument
1258 return hv & htbl->mask; in ipoib_addr_hash()
1265 struct ipoib_neigh_hash *htbl; in ipoib_neigh_get() local
1271 htbl = rcu_dereference_bh(ntbl->htbl); in ipoib_neigh_get()
1273 if (!htbl) in ipoib_neigh_get()
1276 hash_val = ipoib_addr_hash(htbl, daddr); in ipoib_neigh_get()
1277 for (neigh = rcu_dereference_bh(htbl->buckets[hash_val]); in ipoib_neigh_get()
1302 struct ipoib_neigh_hash *htbl; in __ipoib_reap_neigh() local
1311 htbl in __ipoib_reap_neigh()
1387 struct ipoib_neigh_hash *htbl; ipoib_neigh_alloc() local
1476 struct ipoib_neigh_hash *htbl; ipoib_neigh_free() local
1511 struct ipoib_neigh_hash *htbl; ipoib_neigh_hash_init() local
1542 struct ipoib_neigh_hash *htbl = container_of(head, neigh_hash_free_rcu() local
1557 struct ipoib_neigh_hash *htbl; ipoib_del_neighs_by_gid() local
1597 struct ipoib_neigh_hash *htbl; ipoib_flush_neighs() local
[all...]
H A Dipoib.h305 struct ipoib_neigh_hash __rcu *htbl; member
/kernel/linux/linux-6.6/drivers/infiniband/ulp/ipoib/
H A Dipoib_main.c1254 static u32 ipoib_addr_hash(struct ipoib_neigh_hash *htbl, u8 *daddr) in ipoib_addr_hash() argument
1267 return hv & htbl->mask; in ipoib_addr_hash()
1274 struct ipoib_neigh_hash *htbl; in ipoib_neigh_get() local
1280 htbl = rcu_dereference_bh(ntbl->htbl); in ipoib_neigh_get()
1282 if (!htbl) in ipoib_neigh_get()
1285 hash_val = ipoib_addr_hash(htbl, daddr); in ipoib_neigh_get()
1286 for (neigh = rcu_dereference_bh(htbl->buckets[hash_val]); in ipoib_neigh_get()
1311 struct ipoib_neigh_hash *htbl; in __ipoib_reap_neigh() local
1320 htbl in __ipoib_reap_neigh()
1396 struct ipoib_neigh_hash *htbl; ipoib_neigh_alloc() local
1485 struct ipoib_neigh_hash *htbl; ipoib_neigh_free() local
1520 struct ipoib_neigh_hash *htbl; ipoib_neigh_hash_init() local
1551 struct ipoib_neigh_hash *htbl = container_of(head, neigh_hash_free_rcu() local
1566 struct ipoib_neigh_hash *htbl; ipoib_del_neighs_by_gid() local
1606 struct ipoib_neigh_hash *htbl; ipoib_flush_neighs() local
[all...]
H A Dipoib.h305 struct ipoib_neigh_hash __rcu *htbl; member
/kernel/linux/linux-6.6/drivers/net/ethernet/mellanox/mlx5/core/steering/
H A Ddr_ste.c27 u32 mlx5dr_ste_calc_hash_index(u8 *hw_ste_p, struct mlx5dr_ste_htbl *htbl) in mlx5dr_ste_calc_hash_index() argument
29 u32 num_entries = mlx5dr_icm_pool_get_chunk_num_of_entries(htbl->chunk); in mlx5dr_ste_calc_hash_index()
37 if (num_entries == 1 || htbl->byte_mask == 0) in mlx5dr_ste_calc_hash_index()
43 if (htbl->byte_mask & bit) in mlx5dr_ste_calc_hash_index()
126 u64 base_icm_addr = mlx5dr_icm_pool_get_chunk_icm_addr(ste->htbl->chunk); in mlx5dr_ste_get_icm_addr()
127 u32 index = ste - ste->htbl->chunk->ste_arr; in mlx5dr_ste_get_icm_addr()
134 u32 index = ste - ste->htbl->chunk->ste_arr; in mlx5dr_ste_get_mr_addr()
136 return mlx5dr_icm_pool_get_chunk_mr_addr(ste->htbl->chunk) + DR_STE_SIZE * index; in mlx5dr_ste_get_mr_addr()
141 u64 index = ste - ste->htbl->chunk->ste_arr; in mlx5dr_ste_get_hw_ste()
143 return ste->htbl in mlx5dr_ste_get_hw_ste()
401 mlx5dr_ste_set_formatted_ste(struct mlx5dr_ste_ctx *ste_ctx, u16 gvmi, enum mlx5dr_domain_nic_type nic_type, struct mlx5dr_ste_htbl *htbl, u8 *formatted_ste, struct mlx5dr_htbl_connect_info *connect_info) mlx5dr_ste_set_formatted_ste() argument
427 mlx5dr_ste_htbl_init_and_postsend(struct mlx5dr_domain *dmn, struct mlx5dr_domain_rx_tx *nic_dmn, struct mlx5dr_ste_htbl *htbl, struct mlx5dr_htbl_connect_info *connect_info, bool update_hw_ste) mlx5dr_ste_htbl_init_and_postsend() argument
501 struct mlx5dr_ste_htbl *htbl; mlx5dr_ste_htbl_alloc() local
538 mlx5dr_ste_htbl_free(struct mlx5dr_ste_htbl *htbl) mlx5dr_ste_htbl_free() argument
[all...]
H A Ddr_rule.c99 ste->htbl->pointing_ste = orig_ste->htbl->pointing_ste; in dr_rule_create_collision_entry()
102 ste->htbl->chunk->miss_list = mlx5dr_ste_get_miss_list(orig_ste); in dr_rule_create_collision_entry()
207 new_ste->htbl->pointing_ste = col_ste->htbl->pointing_ste; in dr_rule_rehash_handle_collision()
210 new_ste->htbl->chunk->miss_list = mlx5dr_ste_get_miss_list(col_ste); in dr_rule_rehash_handle_collision()
338 mlx5dr_htbl_put(cur_ste->htbl); in dr_rule_rehash_copy_miss_list()
469 struct mlx5dr_ste_htbl *prev_htbl = cur_htbl->pointing_ste->htbl; in dr_rule_rehash_htbl()
564 ste->htbl->ctrl.num_of_collisions++; in dr_rule_handle_collision()
565 ste->htbl in dr_rule_handle_collision()
687 dr_rule_need_enlarge_hash(struct mlx5dr_ste_htbl *htbl, struct mlx5dr_domain *dmn, struct mlx5dr_domain_rx_tx *nic_dmn) dr_rule_need_enlarge_hash() argument
1125 struct mlx5dr_ste_htbl *htbl = NULL; dr_rule_create_rule_nic() local
[all...]
H A Ddr_types.h168 /* attached to the miss_list head at each htbl entry */
171 /* this ste is member of htbl */
172 struct mlx5dr_ste_htbl *htbl; member
233 int mlx5dr_ste_htbl_free(struct mlx5dr_ste_htbl *htbl);
235 static inline void mlx5dr_htbl_put(struct mlx5dr_ste_htbl *htbl) in mlx5dr_htbl_put() argument
237 htbl->refcount--; in mlx5dr_htbl_put()
238 if (!htbl->refcount) in mlx5dr_htbl_put()
239 mlx5dr_ste_htbl_free(htbl); in mlx5dr_htbl_put()
242 static inline void mlx5dr_htbl_get(struct mlx5dr_ste_htbl *htbl) in mlx5dr_htbl_get() argument
244 htbl in mlx5dr_htbl_get()
1261 mlx5dr_ste_htbl_increase_threshold(struct mlx5dr_ste_htbl *htbl) mlx5dr_ste_htbl_increase_threshold() argument
1271 mlx5dr_ste_htbl_may_grow(struct mlx5dr_ste_htbl *htbl) mlx5dr_ste_htbl_may_grow() argument
[all...]
H A Ddr_send.c655 struct mlx5dr_ste_htbl *htbl, in dr_get_tbl_copy_details()
661 u32 chunk_byte_size = mlx5dr_icm_pool_get_chunk_byte_size(htbl->chunk); in dr_get_tbl_copy_details()
671 *num_stes = mlx5dr_icm_pool_get_chunk_num_of_entries(htbl->chunk); in dr_get_tbl_copy_details()
707 send_info.rkey = mlx5dr_icm_pool_get_chunk_rkey(ste->htbl->chunk); in mlx5dr_send_postsend_ste()
713 struct mlx5dr_ste_htbl *htbl, in mlx5dr_send_postsend_htbl()
716 u32 byte_size = mlx5dr_icm_pool_get_chunk_byte_size(htbl->chunk); in mlx5dr_send_postsend_htbl()
724 ret = dr_get_tbl_copy_details(dmn, htbl, &data, &byte_size, in mlx5dr_send_postsend_htbl()
740 struct mlx5dr_ste *ste = &htbl->chunk->ste_arr[ste_index + j]; in mlx5dr_send_postsend_htbl()
749 htbl->chunk->hw_ste_arr + in mlx5dr_send_postsend_htbl()
766 mlx5dr_ste_get_mr_addr(htbl in mlx5dr_send_postsend_htbl()
654 dr_get_tbl_copy_details(struct mlx5dr_domain *dmn, struct mlx5dr_ste_htbl *htbl, u8 **data, u32 *byte_size, int *iterations, int *num_stes) dr_get_tbl_copy_details() argument
712 mlx5dr_send_postsend_htbl(struct mlx5dr_domain *dmn, struct mlx5dr_ste_htbl *htbl, u8 *formatted_ste, u8 *mask) mlx5dr_send_postsend_htbl() argument
780 mlx5dr_send_postsend_formatted_htbl(struct mlx5dr_domain *dmn, struct mlx5dr_ste_htbl *htbl, u8 *ste_init_data, bool update_hw_ste) mlx5dr_send_postsend_formatted_htbl() argument
[all...]
H A Ddr_icm_pool.c500 void mlx5dr_icm_pool_free_htbl(struct mlx5dr_icm_pool *pool, struct mlx5dr_ste_htbl *htbl) in mlx5dr_icm_pool_free_htbl() argument
502 kmem_cache_free(pool->dmn->htbls_kmem_cache, htbl); in mlx5dr_icm_pool_free_htbl()
/kernel/linux/linux-5.10/drivers/net/ethernet/mellanox/mlx5/core/steering/
H A Ddr_ste.c119 u32 mlx5dr_ste_calc_hash_index(u8 *hw_ste_p, struct mlx5dr_ste_htbl *htbl) in mlx5dr_ste_calc_hash_index() argument
128 if (htbl->chunk->num_of_entries == 1 || htbl->byte_mask == 0) in mlx5dr_ste_calc_hash_index()
134 if (htbl->byte_mask & bit) in mlx5dr_ste_calc_hash_index()
141 index = crc32 & (htbl->chunk->num_of_entries - 1); in mlx5dr_ste_calc_hash_index()
302 u32 index = ste - ste->htbl->ste_arr; in mlx5dr_ste_get_icm_addr()
304 return ste->htbl->chunk->icm_addr + DR_STE_SIZE * index; in mlx5dr_ste_get_icm_addr()
309 u32 index = ste - ste->htbl->ste_arr; in mlx5dr_ste_get_mr_addr()
311 return ste->htbl->chunk->mr_addr + DR_STE_SIZE * index; in mlx5dr_ste_get_mr_addr()
316 u32 index = ste - ste->htbl in mlx5dr_ste_get_miss_list()
561 mlx5dr_ste_set_formatted_ste(u16 gvmi, struct mlx5dr_domain_rx_tx *nic_dmn, struct mlx5dr_ste_htbl *htbl, u8 *formatted_ste, struct mlx5dr_htbl_connect_info *connect_info) mlx5dr_ste_set_formatted_ste() argument
578 mlx5dr_ste_htbl_init_and_postsend(struct mlx5dr_domain *dmn, struct mlx5dr_domain_rx_tx *nic_dmn, struct mlx5dr_ste_htbl *htbl, struct mlx5dr_htbl_connect_info *connect_info, bool update_hw_ste) mlx5dr_ste_htbl_init_and_postsend() argument
644 dr_ste_set_ctrl(struct mlx5dr_ste_htbl *htbl) dr_ste_set_ctrl() argument
664 struct mlx5dr_ste_htbl *htbl; mlx5dr_ste_htbl_alloc() local
703 mlx5dr_ste_htbl_free(struct mlx5dr_ste_htbl *htbl) mlx5dr_ste_htbl_free() argument
[all...]
H A Ddr_types.h128 /* attached to the miss_list head at each htbl entry */
134 /* this ste is member of htbl */
135 struct mlx5dr_ste_htbl *htbl; member
205 int mlx5dr_ste_htbl_free(struct mlx5dr_ste_htbl *htbl);
207 static inline void mlx5dr_htbl_put(struct mlx5dr_ste_htbl *htbl) in mlx5dr_htbl_put() argument
209 htbl->refcount--; in mlx5dr_htbl_put()
210 if (!htbl->refcount) in mlx5dr_htbl_put()
211 mlx5dr_ste_htbl_free(htbl); in mlx5dr_htbl_put()
214 static inline void mlx5dr_htbl_get(struct mlx5dr_ste_htbl *htbl) in mlx5dr_htbl_get() argument
216 htbl in mlx5dr_htbl_get()
[all...]
H A Ddr_send.c388 struct mlx5dr_ste_htbl *htbl, in dr_get_tbl_copy_details()
396 if (htbl->chunk->byte_size > dmn->send_ring->max_post_send_size) { in dr_get_tbl_copy_details()
397 *iterations = htbl->chunk->byte_size / in dr_get_tbl_copy_details()
404 *num_stes = htbl->chunk->num_of_entries; in dr_get_tbl_copy_details()
438 send_info.rkey = ste->htbl->chunk->rkey; in mlx5dr_send_postsend_ste()
444 struct mlx5dr_ste_htbl *htbl, in mlx5dr_send_postsend_htbl()
447 u32 byte_size = htbl->chunk->byte_size; in mlx5dr_send_postsend_htbl()
455 ret = dr_get_tbl_copy_details(dmn, htbl, &data, &byte_size, in mlx5dr_send_postsend_htbl()
469 struct mlx5dr_ste *ste = &htbl->ste_arr[ste_index + j]; in mlx5dr_send_postsend_htbl()
478 htbl in mlx5dr_send_postsend_htbl()
387 dr_get_tbl_copy_details(struct mlx5dr_domain *dmn, struct mlx5dr_ste_htbl *htbl, u8 **data, u32 *byte_size, int *iterations, int *num_stes) dr_get_tbl_copy_details() argument
443 mlx5dr_send_postsend_htbl(struct mlx5dr_domain *dmn, struct mlx5dr_ste_htbl *htbl, u8 *formatted_ste, u8 *mask) mlx5dr_send_postsend_htbl() argument
504 mlx5dr_send_postsend_formatted_htbl(struct mlx5dr_domain *dmn, struct mlx5dr_ste_htbl *htbl, u8 *ste_init_data, bool update_hw_ste) mlx5dr_send_postsend_formatted_htbl() argument
[all...]
H A Ddr_rule.c83 ste->htbl->miss_list = mlx5dr_ste_get_miss_list(orig_ste); in dr_rule_create_collision_entry()
180 new_ste->htbl->miss_list = mlx5dr_ste_get_miss_list(col_ste); in dr_rule_rehash_handle_collision()
308 mlx5dr_htbl_put(cur_ste->htbl); in dr_rule_rehash_copy_miss_list()
428 struct mlx5dr_ste_htbl *prev_htbl = cur_htbl->pointing_ste->htbl; in dr_rule_rehash_htbl()
518 ste->htbl->ctrl.num_of_collisions++; in dr_rule_handle_collision()
519 ste->htbl->ctrl.num_of_valid_entries++; in dr_rule_handle_collision()
609 static bool dr_rule_need_enlarge_hash(struct mlx5dr_ste_htbl *htbl, in dr_rule_need_enlarge_hash() argument
613 struct mlx5dr_ste_htbl_ctrl *ctrl = &htbl->ctrl; in dr_rule_need_enlarge_hash()
615 if (dmn->info.max_log_sw_icm_sz <= htbl->chunk_size) in dr_rule_need_enlarge_hash()
621 if (dr_get_bits_per_mask(htbl in dr_rule_need_enlarge_hash()
1025 struct mlx5dr_ste_htbl *htbl = NULL; dr_rule_create_rule_nic() local
[all...]
/kernel/linux/linux-5.10/drivers/media/platform/
H A Drcar_jpu.c553 static void put_htbl(u8 *p, const u8 *htbl, unsigned int len) in put_htbl() argument
559 p[i + j] = htbl[i + 3 - j]; in put_htbl()
/kernel/linux/linux-6.6/drivers/media/platform/renesas/
H A Drcar_jpu.c546 static void put_htbl(u8 *p, const u8 *htbl, unsigned int len) in put_htbl() argument
552 p[i + j] = htbl[i + 3 - j]; in put_htbl()
/kernel/linux/linux-5.10/drivers/media/platform/s5p-jpeg/
H A Djpeg-core.c642 const unsigned char *htbl, in s5p_jpeg_set_htbl()
648 writel((unsigned int)htbl[i], regs + tab + (i * 0x04)); in s5p_jpeg_set_htbl()
641 s5p_jpeg_set_htbl(void __iomem *regs, const unsigned char *htbl, unsigned long tab, int len) s5p_jpeg_set_htbl() argument
/kernel/linux/linux-6.6/drivers/media/platform/samsung/s5p-jpeg/
H A Djpeg-core.c642 const unsigned char *htbl, in s5p_jpeg_set_htbl()
648 writel((unsigned int)htbl[i], regs + tab + (i * 0x04)); in s5p_jpeg_set_htbl()
641 s5p_jpeg_set_htbl(void __iomem *regs, const unsigned char *htbl, unsigned long tab, int len) s5p_jpeg_set_htbl() argument

Completed in 34 milliseconds