/linux/drivers/net/ethernet/mellanox/mlx5/core/en/ |
H A D | rss.c | 84 void mlx5e_rss_params_indir_modify_actual_size(struct mlx5e_rss *rss, u32 num_channels) in mlx5e_rss_params_indir_modify_actual_size() argument 86 rss->indir.actual_table_size = mlx5e_rqt_size(rss->mdev, num_channels); in mlx5e_rss_params_indir_modify_actual_size() 130 struct mlx5e_rss *rss; in mlx5e_rss_init_copy() local 133 rss = kvzalloc(sizeof(*rss), GFP_KERNEL); in mlx5e_rss_init_copy() 134 if (!rss) in mlx5e_rss_init_copy() 137 err = mlx5e_rss_params_indir_init(&rss->indir, from->mdev, from->indir.actual_table_size, in mlx5e_rss_init_copy() 142 err = mlx5e_rss_copy(rss, from); in mlx5e_rss_init_copy() 146 return rss; in mlx5e_rss_init_copy() 149 mlx5e_rss_params_indir_cleanup(&rss->indir); in mlx5e_rss_init_copy() 151 kvfree(rss); in mlx5e_rss_init_copy() [all …]
|
H A D | rx_res.c | 19 struct mlx5e_rss *rss[MLX5E_MAX_NUM_RSS]; member 50 if (res->rss[i]) in mlx5e_rx_res_rss_update_num_channels() 51 mlx5e_rss_params_indir_modify_actual_size(res->rss[i], nch); in mlx5e_rx_res_rss_update_num_channels() 59 struct mlx5e_rss *rss; in mlx5e_rx_res_rss_init_def() local 61 if (WARN_ON(res->rss[0])) in mlx5e_rx_res_rss_init_def() 64 rss = mlx5e_rss_init(res->mdev, inner_ft_support, res->drop_rqn, in mlx5e_rx_res_rss_init_def() 66 if (IS_ERR(rss)) in mlx5e_rx_res_rss_init_def() 67 return PTR_ERR(rss); in mlx5e_rx_res_rss_init_def() 69 mlx5e_rss_set_indir_uniform(rss, init_nch); in mlx5e_rx_res_rss_init_def() 71 res->rss[0] = rss; in mlx5e_rx_res_rss_init_def() [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.h | 61 int mlx5e_rx_res_rss_index(struct mlx5e_rx_res *res, struct mlx5e_rss *rss);
|
/linux/drivers/net/ethernet/amazon/ena/ |
H A D | ena_com.c | 1037 return ena_dev->rss.hash_func; in ena_com_get_current_hash_function() 1043 (ena_dev->rss).hash_key; in ena_com_hash_key_fill_default_key() 1054 struct ena_rss *rss = &ena_dev->rss; in ena_com_hash_key_allocate() local 1059 rss->hash_key = dma_alloc_coherent(ena_dev->dmadev, sizeof(*rss->hash_key), in ena_com_hash_key_allocate() 1060 &rss->hash_key_dma_addr, GFP_KERNEL); in ena_com_hash_key_allocate() 1062 if (unlikely(!rss->hash_key)) in ena_com_hash_key_allocate() 1070 struct ena_rss *rss = &ena_dev->rss; in ena_com_hash_key_destroy() local 1072 if (rss->hash_key) in ena_com_hash_key_destroy() 1073 dma_free_coherent(ena_dev->dmadev, sizeof(*rss->hash_key), rss->hash_key, in ena_com_hash_key_destroy() 1074 rss->hash_key_dma_addr); in ena_com_hash_key_destroy() [all …]
|
/linux/drivers/net/ethernet/marvell/octeontx2/nic/ |
H A D | otx2_ethtool.c | 565 struct otx2_rss_info *rss = &pfvf->hw.rss_info; in otx2_get_rss_hash_opts() local 567 if (!(rss->flowkey_cfg & in otx2_get_rss_hash_opts() 573 if (rss->flowkey_cfg & NIX_FLOW_KEY_TYPE_VLAN) in otx2_get_rss_hash_opts() 579 if (rss->flowkey_cfg & NIX_FLOW_KEY_TYPE_TCP) in otx2_get_rss_hash_opts() 584 if (rss->flowkey_cfg & NIX_FLOW_KEY_TYPE_UDP) in otx2_get_rss_hash_opts() 589 if (rss->flowkey_cfg & NIX_FLOW_KEY_TYPE_SCTP) in otx2_get_rss_hash_opts() 594 if (rss->flowkey_cfg & NIX_FLOW_KEY_TYPE_ESP) in otx2_get_rss_hash_opts() 615 struct otx2_rss_info *rss = &pfvf->hw.rss_info; in otx2_set_rss_hash_opts() local 617 u32 rss_cfg = rss->flowkey_cfg; in otx2_set_rss_hash_opts() 619 if (!rss->enable) { in otx2_set_rss_hash_opts() [all …]
|
/linux/include/linux/ |
H A D | percpu-rwsem.h | 13 struct rcu_sync rss; member 32 .rss = __RCU_SYNC_INITIALIZER(name.rss), \ 62 if (likely(rcu_sync_is_idle(&sem->rss))) in percpu_down_read() 81 if (likely(rcu_sync_is_idle(&sem->rss))) in percpu_down_read_trylock() 105 if (likely(rcu_sync_is_idle(&sem->rss))) { in percpu_up_read()
|
/linux/drivers/net/ethernet/intel/iavf/ |
H A D | iavf_adv_rss.c | 156 struct iavf_adv_rss *rss; in iavf_find_adv_rss_cfg_by_hdrs() local 158 list_for_each_entry(rss, &adapter->adv_rss_list_head, list) in iavf_find_adv_rss_cfg_by_hdrs() 159 if (rss->packet_hdrs == packet_hdrs) in iavf_find_adv_rss_cfg_by_hdrs() 160 return rss; in iavf_find_adv_rss_cfg_by_hdrs() 175 iavf_print_adv_rss_cfg(struct iavf_adapter *adapter, struct iavf_adv_rss *rss, in iavf_print_adv_rss_cfg() argument 178 u32 packet_hdrs = rss->packet_hdrs; in iavf_print_adv_rss_cfg() 179 u64 hash_flds = rss->hash_flds; in iavf_print_adv_rss_cfg()
|
H A D | iavf_virtchnl.c | 1938 struct iavf_adv_rss *rss; in iavf_add_adv_rss_cfg() local 1955 list_for_each_entry(rss, &adapter->adv_rss_list_head, list) { in iavf_add_adv_rss_cfg() 1956 if (rss->state == IAVF_ADV_RSS_ADD_REQUEST) { in iavf_add_adv_rss_cfg() 1958 rss->state = IAVF_ADV_RSS_ADD_PENDING; in iavf_add_adv_rss_cfg() 1959 memcpy(rss_cfg, &rss->cfg_msg, len); in iavf_add_adv_rss_cfg() 1960 iavf_print_adv_rss_cfg(adapter, rss, in iavf_add_adv_rss_cfg() 1989 struct iavf_adv_rss *rss; in iavf_del_adv_rss_cfg() local 2006 list_for_each_entry(rss, &adapter->adv_rss_list_head, list) { in iavf_del_adv_rss_cfg() 2007 if (rss->state == IAVF_ADV_RSS_DEL_REQUEST) { in iavf_del_adv_rss_cfg() 2009 rss->state = IAVF_ADV_RSS_DEL_PENDING; in iavf_del_adv_rss_cfg() [all …]
|
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_type.h | 197 __le32 rss; /* RSS Hash */ member 227 __le32 rss; /* RSS Hash */ member
|
/linux/drivers/net/ethernet/mellanox/mlx4/ |
H A D | en_resources.c | 41 int is_tx, int rss, int qpn, int cqn, in mlx4_en_fill_qp_context() argument 48 context->flags = cpu_to_be32(7 << 16 | rss << MLX4_RSS_QPC_FLAG_OFFSET); in mlx4_en_fill_qp_context() 51 if (!is_tx && !rss) in mlx4_en_fill_qp_context() 74 if (!rss && in mlx4_en_fill_qp_context() 87 if (!is_tx && !rss && in mlx4_en_fill_qp_context()
|
/linux/kernel/locking/ |
H A D | percpu-rwsem.c | 21 rcu_sync_init(&sem->rss); in __percpu_init_rwsem() 42 rcu_sync_dtor(&sem->rss); in percpu_free_rwsem() 232 rcu_sync_enter(&sem->rss); in percpu_down_write() 285 rcu_sync_exit(&sem->rss); in percpu_up_write()
|
/linux/drivers/net/ethernet/mellanox/mlx5/core/ |
H A D | en_fs_ethtool.c | 66 struct mlx5e_rss *rss; member 429 struct mlx5e_rss *rss; in flow_get_tirn() local 434 rss = mlx5e_rx_res_rss_get(priv->rx_res, rss_context); in flow_get_tirn() 435 if (!rss) in flow_get_tirn() 444 err = mlx5e_rss_obtain_tirn(rss, tt, &pkt_merge_param, false, tirn); in flow_get_tirn() 447 eth_rule->rss = rss; in flow_get_tirn() 448 mlx5e_rss_refcnt_inc(eth_rule->rss); in flow_get_tirn() 514 if (eth_rule->rss) in del_ethtool_rule() 515 mlx5e_rss_refcnt_dec(eth_rule->rss); in del_ethtool_rule() 807 if (!eth_rule->rss) in mlx5e_ethtool_get_flow() [all …]
|
/linux/drivers/net/ethernet/cavium/thunder/ |
H A D | nicvf_ethtool.c | 566 struct nicvf_rss_info *rss = &nic->rss_info; in nicvf_set_rss_hash_opts() local 569 if (!rss->enable) in nicvf_set_rss_hash_opts() 660 struct nicvf_rss_info *rss = &nic->rss_info; in nicvf_get_rxfh() local 664 for (idx = 0; idx < rss->rss_size; idx++) in nicvf_get_rxfh() 665 rxfh->indir[idx] = rss->ind_tbl[idx]; in nicvf_get_rxfh() 669 memcpy(rxfh->key, rss->key, RSS_HASH_KEY_SIZE * sizeof(u64)); in nicvf_get_rxfh() 681 struct nicvf_rss_info *rss = &nic->rss_info; in nicvf_set_rxfh() local 688 if (!rss->enable) { in nicvf_set_rxfh() 695 for (idx = 0; idx < rss->rss_size; idx++) in nicvf_set_rxfh() 696 rss->ind_tbl[idx] = rxfh->indir[idx]; in nicvf_set_rxfh() [all …]
|
H A D | nicvf_main.c | 336 struct nicvf_rss_info *rss = &nic->rss_info; in nicvf_config_rss() local 337 int ind_tbl_len = rss->rss_size; in nicvf_config_rss() 341 mbx.rss_cfg.hash_bits = rss->hash_bits; in nicvf_config_rss() 350 mbx.rss_cfg.ind_tbl[i] = rss->ind_tbl[nextq++]; in nicvf_config_rss() 360 struct nicvf_rss_info *rss = &nic->rss_info; in nicvf_set_rss_key() local 365 nicvf_reg_write(nic, key_addr, rss->key[idx]); in nicvf_set_rss_key() 372 struct nicvf_rss_info *rss = &nic->rss_info; in nicvf_rss_init() local 378 rss->enable = false; in nicvf_rss_init() 379 rss->hash_bits = 0; in nicvf_rss_init() 383 rss->enable = true; in nicvf_rss_init() [all …]
|
/linux/drivers/net/ethernet/chelsio/cxgb4vf/ |
H A D | t4vf_hw.c | 1017 struct rss_params *rss = &adapter->params.rss; in t4vf_get_rss_glb_config() local 1040 rss->mode = FW_RSS_GLB_CONFIG_CMD_MODE_G( in t4vf_get_rss_glb_config() 1042 switch (rss->mode) { in t4vf_get_rss_glb_config() 1047 rss->u.basicvirtual.synmapen = in t4vf_get_rss_glb_config() 1049 rss->u.basicvirtual.syn4tupenipv6 = in t4vf_get_rss_glb_config() 1051 rss->u.basicvirtual.syn2tupenipv6 = in t4vf_get_rss_glb_config() 1053 rss->u.basicvirtual.syn4tupenipv4 = in t4vf_get_rss_glb_config() 1055 rss->u.basicvirtual.syn2tupenipv4 = in t4vf_get_rss_glb_config() 1058 rss->u.basicvirtual.ofdmapen = in t4vf_get_rss_glb_config() 1061 rss->u.basicvirtual.tnlmapen = in t4vf_get_rss_glb_config() [all …]
|
/linux/drivers/net/ethernet/qlogic/qed/ |
H A D | qed_l2.c | 2375 struct qed_rss_params *rss) in qed_update_vport_rss() argument 2380 rss->update_rss_config = 1; in qed_update_vport_rss() 2381 rss->rss_enable = 1; in qed_update_vport_rss() 2382 rss->update_rss_capabilities = 1; in qed_update_vport_rss() 2383 rss->update_rss_ind_table = 1; in qed_update_vport_rss() 2384 rss->update_rss_key = 1; in qed_update_vport_rss() 2385 rss->rss_caps = input->rss_caps; in qed_update_vport_rss() 2386 memcpy(rss->rss_key, input->rss_key, QED_RSS_KEY_SIZE * sizeof(u32)); in qed_update_vport_rss() 2395 memcpy(rss->rss_ind_table, in qed_update_vport_rss() 2398 rss->rss_table_size_log = 7; in qed_update_vport_rss() [all …]
|
/linux/drivers/net/ethernet/broadcom/bnx2x/ |
H A D | bnx2x_vfpf.c | 1984 struct bnx2x_config_rss_params rss; in bnx2x_vf_mbx_update_rss() local 1996 memset(&rss, 0, sizeof(struct bnx2x_config_rss_params)); in bnx2x_vf_mbx_update_rss() 1999 memcpy(rss.ind_table, rss_tlv->ind_table, in bnx2x_vf_mbx_update_rss() 2001 memcpy(rss.rss_key, rss_tlv->rss_key, sizeof(rss_tlv->rss_key)); in bnx2x_vf_mbx_update_rss() 2002 rss.rss_obj = &vf->rss_conf_obj; in bnx2x_vf_mbx_update_rss() 2003 rss.rss_result_mask = rss_tlv->rss_result_mask; in bnx2x_vf_mbx_update_rss() 2006 rss.rss_flags = 0; in bnx2x_vf_mbx_update_rss() 2007 rss.ramrod_flags = 0; in bnx2x_vf_mbx_update_rss() 2010 __set_bit(BNX2X_RSS_MODE_DISABLED, &rss.rss_flags); in bnx2x_vf_mbx_update_rss() 2012 __set_bit(BNX2X_RSS_MODE_REGULAR, &rss.rss_flags); in bnx2x_vf_mbx_update_rss() [all …]
|
/linux/mm/ |
H A D | memory.c | 475 static inline void init_rss_vec(int *rss) in init_rss_vec() argument 477 memset(rss, 0, sizeof(int) * NR_MM_COUNTERS); in init_rss_vec() 480 static inline void add_mm_rss_vec(struct mm_struct *mm, int *rss) in add_mm_rss_vec() argument 485 if (rss[i]) in add_mm_rss_vec() 486 add_mm_counter(mm, i, rss[i]); in add_mm_rss_vec() 793 struct vm_area_struct *src_vma, unsigned long addr, int *rss) in copy_nonpresent_pte() argument 819 rss[MM_SWAPENTS]++; in copy_nonpresent_pte() 823 rss[mm_counter(folio)]++; in copy_nonpresent_pte() 855 rss[mm_counter(folio)]++; in copy_nonpresent_pte() 914 pte_t *dst_pte, pte_t *src_pte, unsigned long addr, int *rss, in copy_present_page() argument [all …]
|
/linux/drivers/net/ethernet/stmicro/stmmac/ |
H A D | stmmac_selftests.c | 824 if (!priv->dma_cap.rssen || !priv->rss.enable) in stmmac_test_rss() 1345 if (priv->rss.enable) { in __stmmac_test_l3filt() 1346 old_enable = priv->rss.enable; in __stmmac_test_l3filt() 1347 priv->rss.enable = false; in __stmmac_test_l3filt() 1419 priv->rss.enable = old_enable; in __stmmac_test_l3filt() 1420 stmmac_rss_configure(priv, priv->hw, &priv->rss, in __stmmac_test_l3filt() 1471 if (priv->rss.enable) { in __stmmac_test_l4filt() 1472 old_enable = priv->rss.enable; in __stmmac_test_l4filt() 1473 priv->rss.enable = false; in __stmmac_test_l4filt() 1550 priv->rss.enable = old_enable; in __stmmac_test_l4filt() [all …]
|
/linux/drivers/net/ethernet/intel/igc/ |
H A D | igc_base.h | 73 __le32 rss; /* RSS Hash */ member
|
/linux/arch/sparc/mm/ |
H A D | tsb.c | 396 void tsb_grow(struct mm_struct *mm, unsigned long tsb_index, unsigned long rss) in tsb_grow() argument 411 if (new_rss_limit > rss) in tsb_grow() 487 (rss < mm->context.tsb_block[tsb_index].tsb_rss_limit))) { in tsb_grow()
|
/linux/drivers/net/ |
H A D | virtio_net.c | 424 struct virtio_net_ctrl_rss rss; member 526 static int rss_indirection_table_alloc(struct virtio_net_ctrl_rss *rss, u16 indir_table_size) in rss_indirection_table_alloc() argument 529 rss->indirection_table = NULL; in rss_indirection_table_alloc() 533 rss->indirection_table = kmalloc_array(indir_table_size, sizeof(u16), GFP_KERNEL); in rss_indirection_table_alloc() 534 if (!rss->indirection_table) in rss_indirection_table_alloc() 540 static void rss_indirection_table_free(struct virtio_net_ctrl_rss *rss) in rss_indirection_table_free() argument 542 kfree(rss->indirection_table); in rss_indirection_table_free() 3579 vi->rss.indirection_table[i] = indir_val; in virtnet_rss_update_by_qpairs() 3581 vi->rss.max_tx_vq = queue_pairs; in virtnet_rss_update_by_qpairs() 3602 memcpy(&old_rss, &vi->rss, sizeof(old_rss)); in virtnet_set_queues() [all …]
|
/linux/Documentation/devicetree/bindings/net/ |
H A D | hisilicon-hns-dsaf.txt | 9 "6port-16rss", 60 mode = "6port-16rss";
|