Home
last modified time | relevance | path

Searched refs:rss_context (Results 1 – 25 of 31) sorted by relevance

12

/linux/net/ethtool/
H A Drss.c10 u32 rss_context; member
75 request->rss_context = nla_get_u32(tb[ETHTOOL_A_RSS_CONTEXT]); in rss_parse_request()
94 if (req->rss_context && !dev->ethtool_ops->rxfh_per_ctx_fields) in rss_prepare_flow_hash()
101 .rss_context = req->rss_context, in rss_prepare_flow_hash()
211 ctx = xa_load(&dev->ethtool->rss_ctx, request->rss_context); in rss_prepare_ctx()
250 if (request->rss_context) in rss_prepare()
270 if (request->rss_context && !ops->create_rxfh_context) in rss_prepare_data()
302 if (request->rss_context && in rss_fill_reply()
303 nla_put_u32(skb, ETHTOOL_A_RSS_CONTEXT, request->rss_context)) in rss_fill_reply()
399 struct net_device *dev, u32 rss_context) in rss_dump_one_ctx() argument
[all …]
H A Dioctl.c1105 if (info.flow_type & FLOW_RSS && info.rss_context && in ethtool_set_rxfh_fields()
1125 fields.rss_context = info.rss_context; in ethtool_set_rxfh_fields()
1133 ethtool_rss_notify(dev, ETHTOOL_MSG_RSS_NTF, fields.rss_context); in ethtool_set_rxfh_fields()
1153 if (info.flow_type & FLOW_RSS && info.rss_context && in ethtool_get_rxfh_fields()
1159 fields.rss_context = info.rss_context; in ethtool_get_rxfh_fields()
1195 if (info.rss_context && in ethtool_set_rxnfc()
1196 !xa_load(&dev->ethtool->rss_ctx, info.rss_context)) in ethtool_set_rxnfc()
1448 if (rxfh.rss_context && !ops->create_rxfh_context) in ethtool_get_rxfh()
1473 if (rxfh.rss_context) { in ethtool_get_rxfh()
1474 ctx = xa_load(&dev->ethtool->rss_ctx, rxfh.rss_context); in ethtool_get_rxfh()
[all …]
H A Dcommon.c719 rule_info.rss_context); in ethtool_get_max_rxnfc_channel()
828 int ethtool_check_rss_ctx_busy(struct net_device *dev, u32 rss_context) in ethtool_check_rss_ctx_busy() argument
865 rule_info.rss_context == rss_context) { in ethtool_check_rss_ctx_busy()
/linux/drivers/net/ethernet/sfc/
H A Dmcdi_filters.c385 if (spec->rss_context) in efx_mcdi_filter_insert_locked()
386 ctx = efx_find_rss_context_entry(efx, spec->rss_context); in efx_mcdi_filter_insert_locked()
388 ctx = &efx->rss_context.priv; in efx_mcdi_filter_insert_locked()
492 saved_spec->rss_context = spec->rss_context; in efx_mcdi_filter_insert_locked()
614 (efx_rss_active(&efx->rss_context.priv) ? in efx_mcdi_filter_remove_internal()
617 new_spec.rss_context = 0; in efx_mcdi_filter_remove_internal()
620 &efx->rss_context.priv, in efx_mcdi_filter_remove_internal()
767 filter_flags = efx_rss_active(&efx->rss_context.priv) ? EFX_FILTER_FLAG_RX_RSS : 0; in efx_mcdi_filter_insert_addr_list()
836 filter_flags = efx_rss_active(&efx->rss_context.priv) ? EFX_FILTER_FLAG_RX_RSS : 0; in efx_mcdi_filter_insert_def()
1407 if (spec->rss_context) in efx_mcdi_filter_table_restore()
[all …]
H A Dethtool_common.c639 u32 *rss_context) in efx_ethtool_get_class_rule() argument
797 *rss_context = spec.rss_context; in efx_ethtool_get_class_rule()
811 ctx = &efx->rss_context.priv; in efx_ethtool_get_rxfh_fields()
813 if (info->rss_context) { in efx_ethtool_get_rxfh_fields()
814 ctx = efx_find_rss_context_entry(efx, info->rss_context); in efx_ethtool_get_rxfh_fields()
864 u32 rss_context = 0; in efx_ethtool_get_rxnfc() local
880 rc = efx_ethtool_get_class_rule(efx, &info->fs, &rss_context); in efx_ethtool_get_rxnfc()
884 info->rss_context = rss_context; in efx_ethtool_get_rxnfc()
915 u32 rss_context) in efx_ethtool_set_class_rule() argument
957 spec.rss_context = rss_context; in efx_ethtool_set_class_rule()
[all …]
H A Dfilter.h158 u32 rss_context; member
186 spec->rss_context = 0; in efx_filter_init_rx()
H A Def100_netdev.c475 netdev_rss_key_fill(efx->rss_context.rx_hash_key, in ef100_probe_netdev()
476 sizeof(efx->rss_context.rx_hash_key)); in ef100_probe_netdev()
H A Defx.c301 netdev_rss_key_fill(efx->rss_context.rx_hash_key, in efx_probe_nic()
302 sizeof(efx->rss_context.rx_hash_key)); in efx_probe_nic()
303 efx_set_default_rx_indir_table(efx, efx->rss_context.rx_indir_table); in efx_probe_nic()
H A Dnet_driver.h1093 struct efx_rss_context rss_context; member
/linux/drivers/net/ethernet/sfc/siena/
H A Dethtool_common.c640 u32 *rss_context) in efx_ethtool_get_class_rule() argument
798 *rss_context = spec.rss_context; in efx_ethtool_get_class_rule()
811 if (!efx_rss_active(&efx->rss_context)) /* No RSS */ in efx_siena_ethtool_get_rxfh_fields()
817 if (efx->rss_context.rx_hash_udp_4tuple) in efx_siena_ethtool_get_rxfh_fields()
855 u32 rss_context = 0; in efx_siena_ethtool_get_rxnfc() local
871 rc = efx_ethtool_get_class_rule(efx, &info->fs, &rss_context); in efx_siena_ethtool_get_rxnfc()
875 info->rss_context = rss_context; in efx_siena_ethtool_get_rxnfc()
906 u32 rss_context) in efx_ethtool_set_class_rule() argument
948 spec.rss_context = rss_context; in efx_ethtool_set_class_rule()
1127 info->rss_context); in efx_siena_ethtool_set_rxnfc()
[all …]
H A Dsiena.c358 memcpy(efx->rss_context.rx_hash_key, &temp, sizeof(temp)); in siena_rx_pull_rss_config()
360 memcpy(efx->rss_context.rx_hash_key + sizeof(temp), &temp, sizeof(temp)); in siena_rx_pull_rss_config()
362 memcpy(efx->rss_context.rx_hash_key + 2 * sizeof(temp), &temp, in siena_rx_pull_rss_config()
375 memcpy(efx->rss_context.rx_hash_key, key, sizeof(temp)); in siena_rx_push_rss_config()
376 memcpy(&temp, efx->rss_context.rx_hash_key, sizeof(temp)); in siena_rx_push_rss_config()
380 BUILD_BUG_ON(sizeof(efx->rss_context.rx_hash_key) < in siena_rx_push_rss_config()
383 memcpy(&temp, efx->rss_context.rx_hash_key, sizeof(temp)); in siena_rx_push_rss_config()
385 memcpy(&temp, efx->rss_context.rx_hash_key + sizeof(temp), sizeof(temp)); in siena_rx_push_rss_config()
389 memcpy(&temp, efx->rss_context.rx_hash_key + 2 * sizeof(temp), in siena_rx_push_rss_config()
393 memcpy(efx->rss_context.rx_indir_table, rx_indir_table, in siena_rx_push_rss_config()
[all …]
H A Dfilter.h159 u32 rss_context; member
186 spec->rss_context = 0; in efx_filter_init_rx()
H A Defx.c310 netdev_rss_key_fill(efx->rss_context.rx_hash_key, in efx_probe_nic()
311 sizeof(efx->rss_context.rx_hash_key)); in efx_probe_nic()
312 efx_siena_set_default_rx_indir_table(efx, &efx->rss_context); in efx_probe_nic()
H A Dfarch.c1634 BUILD_BUG_ON(ARRAY_SIZE(efx->rss_context.rx_indir_table) != in efx_farch_rx_push_indir_table()
1639 efx->rss_context.rx_indir_table[i]); in efx_farch_rx_push_indir_table()
1651 BUILD_BUG_ON(ARRAY_SIZE(efx->rss_context.rx_indir_table) != in efx_farch_rx_pull_indir_table()
1658 efx->rss_context.rx_indir_table[i] = EFX_DWORD_FIELD(dword, FRF_BZ_IT_QUEUE); in efx_farch_rx_pull_indir_table()
2038 if ((gen_spec->flags & EFX_FILTER_FLAG_RX_RSS) && gen_spec->rss_context) in efx_farch_filter_from_gen_spec()
H A Dnet_driver.h1012 struct efx_rss_context rss_context; member
/linux/drivers/net/ethernet/mellanox/mlx5/core/
H A Den_fs_ethtool.c425 u32 rss_context, u32 *tirn) in flow_get_tirn() argument
434 rss = mlx5e_rx_res_rss_get(priv->rx_res, rss_context); in flow_get_tirn()
460 struct ethtool_rx_flow_spec *fs, u32 rss_context) in add_ethtool_flow_rule() argument
485 err = flow_get_tirn(priv, eth_rule, fs, rss_context, &dst->tir_num); in add_ethtool_flow_rule()
725 struct ethtool_rx_flow_spec *fs, u32 rss_context) in mlx5e_ethtool_flow_replace() argument
753 rule = add_ethtool_flow_rule(priv, eth_rule, eth_ft->ft, fs, rss_context); in mlx5e_ethtool_flow_replace()
812 info->rss_context = index; in mlx5e_ethtool_get_flow()
907 rss_idx = nfc->rss_context; in mlx5e_ethtool_set_rxfh_fields()
952 rss_idx = nfc->rss_context; in mlx5e_ethtool_get_rxfh_fields()
983 err = mlx5e_ethtool_flow_replace(priv, &cmd->fs, cmd->rss_context); in mlx5e_ethtool_set_rxnfc()
/linux/drivers/net/ethernet/sfc/falcon/
H A Dfilter.h133 u32 rss_context; member
160 spec->rss_context = EF4_FILTER_RSS_CONTEXT_DEFAULT; in ef4_filter_init_rx()
/linux/drivers/net/ethernet/mellanox/mlx4/
H A Den_rx.c1171 struct mlx4_rss_context *rss_context; in mlx4_en_config_rss_steer() local
1235 rss_context = ptr; in mlx4_en_config_rss_steer()
1236 rss_context->base_qpn = cpu_to_be32(ilog2(rss_rings) << 24 | in mlx4_en_config_rss_steer()
1238 rss_context->default_qpn = cpu_to_be32(rss_map->base_qpn); in mlx4_en_config_rss_steer()
1241 rss_context->base_qpn_udp = rss_context->default_qpn; in mlx4_en_config_rss_steer()
1249 rss_context->flags = rss_mask; in mlx4_en_config_rss_steer()
1250 rss_context->hash_fn = MLX4_RSS_HASH_TOP; in mlx4_en_config_rss_steer()
1252 rss_context->hash_fn = MLX4_RSS_HASH_XOR; in mlx4_en_config_rss_steer()
1254 rss_context->hash_fn = MLX4_RSS_HASH_TOP; in mlx4_en_config_rss_steer()
1255 memcpy(rss_context->rss_key, priv->rss_key, in mlx4_en_config_rss_steer()
/linux/drivers/net/ethernet/marvell/octeontx2/nic/
H A Dotx2_ethtool.c842 otx2_set_rss_table(pfvf, rxfh->rss_context, ind_tbl); in otx2_create_rxfh()
863 otx2_set_rss_table(pfvf, rxfh->rss_context, rxfh->indir); in otx2_modify_rxfh()
870 u32 rss_context, in otx2_remove_rxfh() argument
880 otx2_rss_ctx_flow_del(pfvf, rss_context); in otx2_remove_rxfh()
H A Dotx2_flows.c508 nfc->rss_context = iter->rss_ctx_id; in otx2_get_flow()
1145 flow->rss_ctx_id = nfc->rss_context; in otx2_add_flow()
/linux/drivers/infiniband/hw/mlx4/
H A Dqp.c2097 struct mlx4_rss_context *rss_context; in fill_qp_rss_context() local
2099 rss_context = (void *)context + offsetof(struct mlx4_qp_context, in fill_qp_rss_context()
2102 rss_context->base_qpn = cpu_to_be32(qp->rss_ctx->base_qpn_tbl_sz); in fill_qp_rss_context()
2103 rss_context->default_qpn = in fill_qp_rss_context()
2106 rss_context->base_qpn_udp = rss_context->default_qpn; in fill_qp_rss_context()
2107 rss_context->flags = qp->rss_ctx->flags; in fill_qp_rss_context()
2109 rss_context->hash_fn = MLX4_RSS_HASH_TOP; in fill_qp_rss_context()
2111 memcpy(rss_context->rss_key, qp->rss_ctx->rss_key, in fill_qp_rss_context()
/linux/drivers/net/ethernet/meta/fbnic/
H A Dfbnic_ethtool.c822 cmd->rss_context = FIELD_GET(FBNIC_RPC_ACT_TBL0_RSS_CTXT_ID, in fbnic_get_cls_rule()
908 if (cmd->rss_context == 1) in fbnic_set_cls_rule_ins()
1439 changes = fbnic_set_indir(fbn, rxfh->rss_context, indir); in fbnic_modify_rxfh_context()
1474 struct ethtool_rxfh_context *ctx, u32 rss_context, in fbnic_remove_rxfh_context() argument
/linux/drivers/net/ethernet/marvell/mvpp2/
H A Dmvpp2_main.c5655 u32 rss_context = rxfh->rss_context; in mvpp2_ethtool_get_rxfh() local
5660 if (rss_context >= MVPP22_N_RSS_TABLES) in mvpp2_ethtool_get_rxfh()
5666 ret = mvpp22_port_rss_ctx_indir_get(port, rss_context, in mvpp2_ethtool_get_rxfh()
5701 ret = mvpp22_port_rss_ctx_create(port, rxfh->rss_context); in mvpp2_create_rxfh_context()
5706 ret = mvpp22_port_rss_ctx_indir_get(port, rxfh->rss_context, in mvpp2_create_rxfh_context()
5709 ret = mvpp22_port_rss_ctx_indir_set(port, rxfh->rss_context, in mvpp2_create_rxfh_context()
5726 ret = mvpp22_port_rss_ctx_indir_set(port, rxfh->rss_context, in mvpp2_modify_rxfh_context()
5733 u32 rss_context, in mvpp2_remove_rxfh_context() argument
5738 return mvpp22_port_rss_ctx_delete(port, rss_context); in mvpp2_remove_rxfh_context()
H A Dmvpp2_cls.c1380 input.rss_ctx = info->rss_context; in mvpp2_ethtool_cls_rule_ins()
1567 rxnfc->rss_context != port_ctx) in mvpp22_port_rss_ctx_delete()
/linux/drivers/net/ethernet/broadcom/bnxt/
H A Dbnxt_ethtool.c1222 cmd->rss_context = fltr->base.fw_vnic_id; in bnxt_grxclsrule()
1474 rss_ctx = bnxt_get_rss_ctx_from_index(bp, cmd->rss_context); in bnxt_add_ntuple_cls_rule()
1860 if (rxfh->rss_context) { in bnxt_get_rxfh()
1863 ctx = xa_load(&bp->dev->ethtool->rss_ctx, rxfh->rss_context); in bnxt_get_rxfh()
1995 rss_ctx->index = rxfh->rss_context; in bnxt_create_rxfh_context()
2024 u32 rss_context, in bnxt_remove_rxfh_context() argument

12