/linux-master/drivers/net/ethernet/mellanox/mlx5/core/en/ |
H A D | rss.c | 4 #include "rss.h" 84 void mlx5e_rss_params_indir_modify_actual_size(struct mlx5e_rss *rss, u32 num_channels) argument 86 rss->indir.actual_table_size = mlx5e_rqt_size(rss->mdev, num_channels); 130 struct mlx5e_rss *rss; local 133 rss = kvzalloc(sizeof(*rss), GFP_KERNEL); 134 if (!rss) 137 err = mlx5e_rss_params_indir_init(&rss->indir, from->mdev, from->indir.actual_table_size, 142 err = mlx5e_rss_copy(rss, fro 155 mlx5e_rss_params_init(struct mlx5e_rss *rss) argument 167 rss_get_tirp(struct mlx5e_rss *rss, enum mlx5_traffic_types tt, bool inner) argument 173 rss_get_tir(struct mlx5e_rss *rss, enum mlx5_traffic_types tt, bool inner) argument 180 mlx5e_rss_get_tt_config(struct mlx5e_rss *rss, enum mlx5_traffic_types tt) argument 189 mlx5e_rss_create_tir(struct mlx5e_rss *rss, enum mlx5_traffic_types tt, const struct mlx5e_packet_merge_param *init_pkt_merge_param, bool inner) argument 245 mlx5e_rss_destroy_tir(struct mlx5e_rss *rss, enum mlx5_traffic_types tt, bool inner) argument 261 mlx5e_rss_create_tirs(struct mlx5e_rss *rss, const struct mlx5e_packet_merge_param *init_pkt_merge_param, bool inner) argument 283 mlx5e_rss_destroy_tirs(struct mlx5e_rss *rss, bool inner) argument 291 mlx5e_rss_update_tir(struct mlx5e_rss *rss, enum mlx5_traffic_types tt, bool inner) argument 316 mlx5e_rss_update_tirs(struct mlx5e_rss *rss) argument 346 mlx5e_rss_init_no_tirs(struct mlx5e_rss *rss) argument 360 struct mlx5e_rss *rss; local 408 mlx5e_rss_cleanup(struct mlx5e_rss *rss) argument 425 mlx5e_rss_refcnt_inc(struct mlx5e_rss *rss) argument 430 mlx5e_rss_refcnt_dec(struct mlx5e_rss *rss) argument 435 mlx5e_rss_refcnt_read(struct mlx5e_rss *rss) argument 440 mlx5e_rss_get_tirn(struct mlx5e_rss *rss, enum mlx5_traffic_types tt, bool inner) argument 455 mlx5e_rss_obtain_tirn(struct mlx5e_rss *rss, enum mlx5_traffic_types tt, const struct mlx5e_packet_merge_param *init_pkt_merge_param, bool inner, u32 *tirn) argument 476 mlx5e_rss_apply(struct mlx5e_rss *rss, u32 *rqns, u32 *vhca_ids, unsigned int num_rqns) argument 488 mlx5e_rss_enable(struct mlx5e_rss *rss, u32 *rqns, u32 *vhca_ids, unsigned int num_rqns) argument 494 mlx5e_rss_disable(struct mlx5e_rss *rss) argument 505 mlx5e_rss_packet_merge_set_param(struct mlx5e_rss *rss, struct mlx5e_packet_merge_param *pkt_merge_param) argument 554 mlx5e_rss_get_rxfh(struct mlx5e_rss *rss, u32 *indir, u8 *key, u8 *hfunc) argument 570 mlx5e_rss_set_rxfh(struct mlx5e_rss *rss, const u32 *indir, const u8 *key, const u8 *hfunc, u32 *rqns, u32 *vhca_ids, unsigned int num_rqns) argument 629 mlx5e_rss_get_hash(struct mlx5e_rss *rss) argument 634 mlx5e_rss_get_hash_fields(struct mlx5e_rss *rss, enum mlx5_traffic_types tt) argument 639 mlx5e_rss_set_hash_fields(struct mlx5e_rss *rss, enum mlx5_traffic_types tt, u8 rx_hash_fields) argument 682 mlx5e_rss_set_indir_uniform(struct mlx5e_rss *rss, unsigned int nch) argument [all...] |
H A D | rss.h | 24 void mlx5e_rss_params_indir_modify_actual_size(struct mlx5e_rss *rss, u32 num_channels); 29 int mlx5e_rss_cleanup(struct mlx5e_rss *rss); 31 void mlx5e_rss_refcnt_inc(struct mlx5e_rss *rss); 32 void mlx5e_rss_refcnt_dec(struct mlx5e_rss *rss); 33 unsigned int mlx5e_rss_refcnt_read(struct mlx5e_rss *rss); 35 u32 mlx5e_rss_get_tirn(struct mlx5e_rss *rss, enum mlx5_traffic_types tt, 37 int mlx5e_rss_obtain_tirn(struct mlx5e_rss *rss, 42 void mlx5e_rss_enable(struct mlx5e_rss *rss, u32 *rqns, u32 *vhca_ids, unsigned int num_rqns); 43 void mlx5e_rss_disable(struct mlx5e_rss *rss); 45 int mlx5e_rss_packet_merge_set_param(struct mlx5e_rss *rss, [all...] |
H A D | rx_res.c | 19 struct mlx5e_rss *rss[MLX5E_MAX_NUM_RSS]; member in struct:mlx5e_rx_res 50 if (res->rss[i]) 51 mlx5e_rss_params_indir_modify_actual_size(res->rss[i], nch); 59 struct mlx5e_rss *rss; local 61 if (WARN_ON(res->rss[0])) 64 rss = mlx5e_rss_init(res->mdev, inner_ft_support, res->drop_rqn, 66 if (IS_ERR(rss)) 67 return PTR_ERR(rss); 69 mlx5e_rss_set_indir_uniform(rss, init_nch); 71 res->rss[ 79 struct mlx5e_rss *rss; local 110 struct mlx5e_rss *rss = res->rss[rss_idx]; local 124 struct mlx5e_rss *rss; local 141 struct mlx5e_rss *rss = res->rss[i]; local 166 struct mlx5e_rss *rss = res->rss[i]; local 183 struct mlx5e_rss *rss = res->rss[i]; local 201 struct mlx5e_rss *rss; local 217 struct mlx5e_rss *rss; local 233 struct mlx5e_rss *rss; local 248 struct mlx5e_rss *rss; local 272 mlx5e_rx_res_rss_index(struct mlx5e_rx_res *res, struct mlx5e_rss *rss) argument 507 struct mlx5e_rss *rss = res->rss[0]; local 514 struct mlx5e_rss *rss = res->rss[0]; local 648 struct mlx5e_rss *rss = res->rss[ix]; local [all...] |
H A D | rx_res.h | 11 #include "rss.h" 61 int mlx5e_rx_res_rss_index(struct mlx5e_rx_res *res, struct mlx5e_rss *rss);
|
/linux-master/include/linux/ |
H A D | percpu-rwsem.h | 13 struct rcu_sync rss; member in struct:percpu_rw_semaphore 32 .rss = __RCU_SYNC_INITIALIZER(name.rss), \ 62 if (likely(rcu_sync_is_idle(&sem->rss))) 81 if (likely(rcu_sync_is_idle(&sem->rss))) 105 if (likely(rcu_sync_is_idle(&sem->rss))) {
|
/linux-master/drivers/net/ethernet/amazon/ena/ |
H A D | ena_com.c | 1057 return ena_dev->rss.hash_func; 1063 (ena_dev->rss).hash_key; 1074 struct ena_rss *rss = &ena_dev->rss; local 1079 rss->hash_key = dma_alloc_coherent(ena_dev->dmadev, sizeof(*rss->hash_key), 1080 &rss->hash_key_dma_addr, GFP_KERNEL); 1082 if (unlikely(!rss->hash_key)) 1090 struct ena_rss *rss = &ena_dev->rss; local 1100 struct ena_rss *rss = &ena_dev->rss; local 1113 struct ena_rss *rss = &ena_dev->rss; local 1124 struct ena_rss *rss = &ena_dev->rss; local 1173 struct ena_rss *rss = &ena_dev->rss; local 1260 struct ena_rss *rss = &ena_dev->rss; local 2234 struct ena_rss *rss = &ena_dev->rss; local 2298 struct ena_rss *rss = &ena_dev->rss; local 2345 struct ena_rss *rss = &ena_dev->rss; local 2385 struct ena_rss *rss = &ena_dev->rss; local 2405 struct ena_rss *rss = &ena_dev->rss; local 2449 struct ena_rss *rss = &ena_dev->rss; local 2513 struct ena_rss *rss = &ena_dev->rss; local 2550 struct ena_rss *rss = &ena_dev->rss; local 2566 struct ena_rss *rss = &ena_dev->rss; local 2618 struct ena_rss *rss = &ena_dev->rss; local [all...] |
/linux-master/drivers/net/ethernet/mellanox/mlx4/ |
H A D | en_resources.c | 41 int is_tx, int rss, int qpn, int cqn, 48 context->flags = cpu_to_be32(7 << 16 | rss << MLX4_RSS_QPC_FLAG_OFFSET); 51 if (!is_tx && !rss) 74 if (!rss && 87 if (!is_tx && !rss && 40 mlx4_en_fill_qp_context(struct mlx4_en_priv *priv, int size, int stride, int is_tx, int rss, int qpn, int cqn, int user_prio, struct mlx4_qp_context *context) argument
|
/linux-master/drivers/net/ethernet/intel/iavf/ |
H A D | iavf_adv_rss.c | 156 struct iavf_adv_rss *rss; local 158 list_for_each_entry(rss, &adapter->adv_rss_list_head, list) 159 if (rss->packet_hdrs == packet_hdrs) 160 return rss; 168 * @rss: pointer to the advance RSS configuration to print 175 iavf_print_adv_rss_cfg(struct iavf_adapter *adapter, struct iavf_adv_rss *rss, argument 178 u32 packet_hdrs = rss->packet_hdrs; 179 u64 hash_flds = rss->hash_flds;
|
H A D | iavf_adv_rss.h | 94 iavf_print_adv_rss_cfg(struct iavf_adapter *adapter, struct iavf_adv_rss *rss,
|
H A D | iavf_virtchnl.c | 1817 struct iavf_adv_rss *rss; local 1834 list_for_each_entry(rss, &adapter->adv_rss_list_head, list) { 1835 if (rss->state == IAVF_ADV_RSS_ADD_REQUEST) { 1837 rss->state = IAVF_ADV_RSS_ADD_PENDING; 1838 memcpy(rss_cfg, &rss->cfg_msg, len); 1839 iavf_print_adv_rss_cfg(adapter, rss, 1868 struct iavf_adv_rss *rss; local 1885 list_for_each_entry(rss, &adapter->adv_rss_list_head, list) { 1886 if (rss->state == IAVF_ADV_RSS_DEL_REQUEST) { 1888 rss 2169 struct iavf_adv_rss *rss, *rss_tmp; local 2187 struct iavf_adv_rss *rss; local 2515 struct iavf_adv_rss *rss; local 2530 struct iavf_adv_rss *rss, *rss_tmp; local [all...] |
H A D | iavf_type.h | 199 __le32 rss; /* RSS Hash */ member in union:iavf_16byte_rx_desc::__anon343::__anon344::__anon347 229 __le32 rss; /* RSS Hash */ member in union:iavf_32byte_rx_desc::__anon350::__anon351::__anon354
|
/linux-master/drivers/net/ethernet/marvell/octeontx2/nic/ |
H A D | otx2_ethtool.c | 575 struct otx2_rss_info *rss = &pfvf->hw.rss_info; local 577 if (!(rss->flowkey_cfg & 583 if (rss->flowkey_cfg & NIX_FLOW_KEY_TYPE_VLAN) 589 if (rss->flowkey_cfg & NIX_FLOW_KEY_TYPE_TCP) 594 if (rss->flowkey_cfg & NIX_FLOW_KEY_TYPE_UDP) 599 if (rss->flowkey_cfg & NIX_FLOW_KEY_TYPE_SCTP) 604 if (rss->flowkey_cfg & NIX_FLOW_KEY_TYPE_ESP) 625 struct otx2_rss_info *rss = &pfvf->hw.rss_info; local 627 u32 rss_cfg = rss->flowkey_cfg; 629 if (!rss 793 struct otx2_rss_info *rss; local 807 struct otx2_rss_info *rss = &pfvf->hw.rss_info; local 819 struct otx2_rss_info *rss = &pfvf->hw.rss_info; local 845 struct otx2_rss_info *rss; local 896 struct otx2_rss_info *rss; local [all...] |
H A D | otx2_common.c | 278 struct otx2_rss_info *rss = &pfvf->hw.rss_info; local 290 req->flowkey_cfg = rss->flowkey_cfg; 312 struct otx2_rss_info *rss = &pfvf->hw.rss_info; local 313 const int index = rss->rss_size * ctx_id; 320 rss_ctx = rss->rss_ctx[ctx_id]; 322 for (idx = 0; idx < rss->rss_size; idx++) { 340 aq->rss.rq = rss_ctx->ind_tbl[idx]; 354 struct otx2_rss_info *rss = &pfvf->hw.rss_info; local 355 u64 *key = (u64 *)&rss->key[4]; 367 (u64)(*((u32 *)&rss 377 struct otx2_rss_info *rss = &pfvf->hw.rss_info; local [all...] |
/linux-master/net/ethtool/ |
H A D | Makefile | 7 ethtool_nl-y := netlink.o bitset.o strset.o linkinfo.o linkmodes.o rss.o \
|
/linux-master/kernel/locking/ |
H A D | percpu-rwsem.c | 21 rcu_sync_init(&sem->rss); 42 rcu_sync_dtor(&sem->rss); 232 rcu_sync_enter(&sem->rss); 285 rcu_sync_exit(&sem->rss);
|
/linux-master/drivers/net/ethernet/intel/igc/ |
H A D | igc_base.h | 73 __le32 rss; /* RSS Hash */ member in union:igc_adv_rx_desc::__anon1366::__anon1367::__anon1370
|
/linux-master/drivers/net/ethernet/mellanox/mlx5/core/ |
H A D | en_fs_ethtool.c | 66 struct mlx5e_rss *rss; member in struct:mlx5e_ethtool_rule 429 struct mlx5e_rss *rss; local 434 rss = mlx5e_rx_res_rss_get(priv->rx_res, rss_context); 435 if (!rss) 444 err = mlx5e_rss_obtain_tirn(rss, tt, &pkt_merge_param, false, tirn); 447 eth_rule->rss = rss; 448 mlx5e_rss_refcnt_inc(eth_rule->rss); 514 if (eth_rule->rss) 515 mlx5e_rss_refcnt_dec(eth_rule->rss); [all...] |
/linux-master/drivers/net/ethernet/cavium/thunder/ |
H A D | nicvf_ethtool.c | 566 struct nicvf_rss_info *rss = &nic->rss_info; local 569 if (!rss->enable) 660 struct nicvf_rss_info *rss = &nic->rss_info; local 664 for (idx = 0; idx < rss->rss_size; idx++) 665 rxfh->indir[idx] = rss->ind_tbl[idx]; 669 memcpy(rxfh->key, rss->key, RSS_HASH_KEY_SIZE * sizeof(u64)); 681 struct nicvf_rss_info *rss = &nic->rss_info; local 688 if (!rss->enable) { 695 for (idx = 0; idx < rss->rss_size; idx++) 696 rss [all...] |
H A D | nicvf_main.c | 336 struct nicvf_rss_info *rss = &nic->rss_info; local 337 int ind_tbl_len = rss->rss_size; 341 mbx.rss_cfg.hash_bits = rss->hash_bits; 350 mbx.rss_cfg.ind_tbl[i] = rss->ind_tbl[nextq++]; 360 struct nicvf_rss_info *rss = &nic->rss_info; local 365 nicvf_reg_write(nic, key_addr, rss->key[idx]); 372 struct nicvf_rss_info *rss = &nic->rss_info; local 378 rss->enable = false; 379 rss->hash_bits = 0; 383 rss [all...] |
/linux-master/drivers/net/ethernet/chelsio/cxgb4vf/ |
H A D | t4vf_hw.c | 1017 struct rss_params *rss = &adapter->params.rss; local 1040 rss->mode = FW_RSS_GLB_CONFIG_CMD_MODE_G( 1042 switch (rss->mode) { 1047 rss->u.basicvirtual.synmapen = 1049 rss->u.basicvirtual.syn4tupenipv6 = 1051 rss->u.basicvirtual.syn2tupenipv6 = 1053 rss->u.basicvirtual.syn4tupenipv4 = 1055 rss->u.basicvirtual.syn2tupenipv4 = 1058 rss [all...] |
/linux-master/drivers/net/ethernet/stmicro/stmmac/ |
H A D | stmmac_ethtool.c | 1126 return sizeof(priv->rss.key); 1133 return ARRAY_SIZE(priv->rss.table); 1143 for (i = 0; i < ARRAY_SIZE(priv->rss.table); i++) 1144 rxfh->indir[i] = priv->rss.table[i]; 1148 memcpy(rxfh->key, priv->rss.key, sizeof(priv->rss.key)); 1166 for (i = 0; i < ARRAY_SIZE(priv->rss.table); i++) 1167 priv->rss.table[i] = rxfh->indir[i]; 1171 memcpy(priv->rss.key, rxfh->key, sizeof(priv->rss [all...] |
/linux-master/drivers/net/ethernet/broadcom/bnx2x/ |
H A D | bnx2x_vfpf.c | 587 /* rss */ 799 /* request pf to config rss table for vf queues*/ 841 DP(BNX2X_MSG_IOV, "rss flags %x\n", req->rss_flags); 859 "Failed to send rss message to PF over VF-PF channel [%d]\n", 1984 struct bnx2x_config_rss_params rss; local 1990 BNX2X_ERR("failing rss configuration of vf %d due to size mismatch\n", 1996 memset(&rss, 0, sizeof(struct bnx2x_config_rss_params)); 1998 /* set vfop params according to rss tlv */ 1999 memcpy(rss.ind_table, rss_tlv->ind_table, 2001 memcpy(rss [all...] |
/linux-master/mm/ |
H A D | memory.c | 468 static inline void init_rss_vec(int *rss) argument 470 memset(rss, 0, sizeof(int) * NR_MM_COUNTERS); 473 static inline void add_mm_rss_vec(struct mm_struct *mm, int *rss) argument 478 if (rss[i]) 479 add_mm_counter(mm, i, rss[i]); 781 struct vm_area_struct *src_vma, unsigned long addr, int *rss) 807 rss[MM_SWAPENTS]++; 811 rss[mm_counter(folio)]++; 834 * Update rss count even for unaddressable pages, as 838 * We will likely want to have some new rss counter 779 copy_nonpresent_pte(struct mm_struct *dst_mm, struct mm_struct *src_mm, pte_t *dst_pte, pte_t *src_pte, struct vm_area_struct *dst_vma, struct vm_area_struct *src_vma, unsigned long addr, int *rss) argument 901 copy_present_page(struct vm_area_struct *dst_vma, struct vm_area_struct *src_vma, pte_t *dst_pte, pte_t *src_pte, unsigned long addr, int *rss, struct folio **prealloc, struct page *page) argument 964 copy_present_ptes(struct vm_area_struct *dst_vma, struct vm_area_struct *src_vma, pte_t *dst_pte, pte_t *src_pte, pte_t pte, unsigned long addr, int max_nr, int *rss, struct folio **prealloc) argument 1075 int rss[NR_MM_COUNTERS]; local 1469 zap_present_folio_ptes(struct mmu_gather *tlb, struct vm_area_struct *vma, struct folio *folio, struct page *page, pte_t *pte, pte_t ptent, unsigned int nr, unsigned long addr, struct zap_details *details, int *rss, bool *force_flush, bool *force_break) argument 1521 zap_present_ptes(struct mmu_gather *tlb, struct vm_area_struct *vma, pte_t *pte, pte_t ptent, unsigned int max_nr, unsigned long addr, struct zap_details *details, int *rss, bool *force_flush, bool *force_break) argument 1575 int rss[NR_MM_COUNTERS]; local [all...] |
/linux-master/drivers/net/ethernet/qlogic/qed/ |
H A D | qed_l2.c | 485 "update rss flag %d, rss_mode = %d, update_caps = %d, capabilities = %d, update_ind = %d, update_rss_key = %d\n", 2375 struct qed_rss_params *rss) 2380 rss->update_rss_config = 1; 2381 rss->rss_enable = 1; 2382 rss->update_rss_capabilities = 1; 2383 rss->update_rss_ind_table = 1; 2384 rss->update_rss_key = 1; 2385 rss->rss_caps = input->rss_caps; 2386 memcpy(rss->rss_key, input->rss_key, QED_RSS_KEY_SIZE * sizeof(u32)); 2395 memcpy(rss 2373 qed_update_vport_rss(struct qed_dev *cdev, struct qed_update_vport_rss_params *input, struct qed_rss_params *rss) argument 2440 struct qed_rss_params *rss; local [all...] |
/linux-master/drivers/net/ethernet/synopsys/ |
H A D | dwc-xlgmac-common.c | 197 if (pdata->hw_feat.rss) 441 hw_feat->rss = XLGMAC_GET_REG_BITS(mac_hfr1, 664 pdata->hw_feat.rss ? "YES" : "NO");
|