Home
last modified time | relevance | path

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

12

/Linux-v6.6/drivers/net/ethernet/sfc/
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; 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) ? in efx_mcdi_filter_remove_internal()
617 new_spec.rss_context = 0; in efx_mcdi_filter_remove_internal()
620 &efx->rss_context, in efx_mcdi_filter_remove_internal()
767 filter_flags = efx_rss_active(&efx->rss_context) ? EFX_FILTER_FLAG_RX_RSS : 0; in efx_mcdi_filter_insert_addr_list()
836 filter_flags = efx_rss_active(&efx->rss_context) ? EFX_FILTER_FLAG_RX_RSS : 0; in efx_mcdi_filter_insert_def()
1407 if (spec->rss_context) in efx_mcdi_filter_table_restore()
[all …]
Dethtool_common.c646 u32 *rss_context) in efx_ethtool_get_class_rule() argument
804 *rss_context = spec.rss_context; in efx_ethtool_get_class_rule()
814 u32 rss_context = 0; in efx_ethtool_get_rxnfc() local
823 struct efx_rss_context *ctx = &efx->rss_context; in efx_ethtool_get_rxnfc()
827 if (info->flow_type & FLOW_RSS && info->rss_context) { in efx_ethtool_get_rxnfc()
828 ctx = efx_find_rss_context_entry(efx, info->rss_context); in efx_ethtool_get_rxnfc()
883 rc = efx_ethtool_get_class_rule(efx, &info->fs, &rss_context); in efx_ethtool_get_rxnfc()
887 info->rss_context = rss_context; in efx_ethtool_get_rxnfc()
918 u32 rss_context) in efx_ethtool_set_class_rule() argument
960 spec.rss_context = rss_context; in efx_ethtool_set_class_rule()
[all …]
Dethtool_common.h52 u8 *key, u8 *hfunc, u32 rss_context);
55 const u8 hfunc, u32 *rss_context,
Dfilter.h158 u32 rss_context; member
186 spec->rss_context = 0; in efx_filter_init_rx()
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()
Defx.c300 netdev_rss_key_fill(efx->rss_context.rx_hash_key, in efx_probe_nic()
301 sizeof(efx->rss_context.rx_hash_key)); in efx_probe_nic()
302 efx_set_default_rx_indir_table(efx, &efx->rss_context); in efx_probe_nic()
Defx_common.c1003 INIT_LIST_HEAD(&efx->rss_context.list); in efx_init_struct()
1004 efx->rss_context.context_id = EFX_MCDI_RSS_CONTEXT_INVALID; in efx_init_struct()
/Linux-v6.6/drivers/net/ethernet/sfc/siena/
Dethtool_common.c646 u32 *rss_context) in efx_ethtool_get_class_rule() argument
804 *rss_context = spec.rss_context; in efx_ethtool_get_class_rule()
814 u32 rss_context = 0; in efx_siena_ethtool_get_rxnfc() local
823 struct efx_rss_context *ctx = &efx->rss_context; in efx_siena_ethtool_get_rxnfc()
827 if (info->flow_type & FLOW_RSS && info->rss_context) { in efx_siena_ethtool_get_rxnfc()
829 info->rss_context); in efx_siena_ethtool_get_rxnfc()
884 rc = efx_ethtool_get_class_rule(efx, &info->fs, &rss_context); in efx_siena_ethtool_get_rxnfc()
888 info->rss_context = rss_context; in efx_siena_ethtool_get_rxnfc()
919 u32 rss_context) in efx_ethtool_set_class_rule() argument
961 spec.rss_context = rss_context; in efx_ethtool_set_class_rule()
[all …]
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 …]
Dethtool_common.h49 u8 *key, u8 *hfunc, u32 rss_context);
52 const u8 hfunc, u32 *rss_context,
Dfilter.h159 u32 rss_context; member
186 spec->rss_context = 0; in efx_filter_init_rx()
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()
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()
Defx_common.c1019 INIT_LIST_HEAD(&efx->rss_context.list); in efx_siena_init_struct()
1020 efx->rss_context.context_id = EFX_MCDI_RSS_CONTEXT_INVALID; in efx_siena_init_struct()
/Linux-v6.6/net/ethtool/
Drss.c8 u32 rss_context; member
38 request->rss_context = nla_get_u32(tb[ETHTOOL_A_RSS_CONTEXT]); in rss_parse_request()
62 if (request->rss_context && !ops->get_rxfh_context) in rss_prepare_data()
90 if (request->rss_context) in rss_prepare_data()
92 &dev_hfunc, request->rss_context); in rss_prepare_data()
Dioctl.c1200 if (rxfh.rss_context && !ops->get_rxfh_context) in ethtool_get_rxfh()
1224 if (rxfh.rss_context) in ethtool_get_rxfh()
1227 rxfh.rss_context); in ethtool_get_rxfh()
1276 if (rxfh.rss_context && !ops->set_rxfh_context) in ethtool_set_rxfh()
1316 if (rxfh.rss_context == 0) { in ethtool_set_rxfh()
1335 if (rxfh.rss_context) in ethtool_set_rxfh()
1337 &rxfh.rss_context, delete); in ethtool_set_rxfh()
1343 if (copy_to_user(useraddr + offsetof(struct ethtool_rxfh, rss_context), in ethtool_set_rxfh()
1344 &rxfh.rss_context, sizeof(rxfh.rss_context))) in ethtool_set_rxfh()
1347 if (!rxfh.rss_context) { in ethtool_set_rxfh()
/Linux-v6.6/drivers/net/ethernet/marvell/octeontx2/nic/
Dotx2_ethtool.c814 u32 *rss_context) in otx2_rss_ctx_create() argument
829 *rss_context = ctx; in otx2_rss_ctx_create()
837 u32 *rss_context, bool delete) in otx2_set_rxfh_context() argument
847 if (*rss_context != ETH_RXFH_CONTEXT_ALLOC && in otx2_set_rxfh_context()
848 *rss_context >= MAX_RSS_GROUPS) in otx2_set_rxfh_context()
863 return otx2_rss_ctx_delete(pfvf, *rss_context); in otx2_set_rxfh_context()
865 if (*rss_context == ETH_RXFH_CONTEXT_ALLOC) { in otx2_set_rxfh_context()
866 ret = otx2_rss_ctx_create(pfvf, rss_context); in otx2_set_rxfh_context()
871 rss_ctx = rss->rss_ctx[*rss_context]; in otx2_set_rxfh_context()
875 otx2_set_rss_table(pfvf, *rss_context); in otx2_set_rxfh_context()
[all …]
/Linux-v6.6/drivers/net/ethernet/mellanox/mlx5/core/
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()
905 rss_idx = nfc->rss_context; in mlx5e_set_rss_hash_opt()
951 rss_idx = nfc->rss_context; in mlx5e_get_rss_hash_opt()
982 err = mlx5e_ethtool_flow_replace(priv, &cmd->fs, cmd->rss_context); in mlx5e_ethtool_set_rxnfc()
Den_ethtool.c1261 u8 *key, u8 *hfunc, u32 rss_context) in mlx5e_get_rxfh_context() argument
1267 err = mlx5e_rx_res_rss_get_rxfh(priv->rx_res, rss_context, indir, key, hfunc); in mlx5e_get_rxfh_context()
1274 u32 *rss_context, bool delete) in mlx5e_set_rxfh_context() argument
1281 err = mlx5e_rx_res_rss_destroy(priv->rx_res, *rss_context); in mlx5e_set_rxfh_context()
1285 if (*rss_context == ETH_RXFH_CONTEXT_ALLOC) { in mlx5e_set_rxfh_context()
1288 err = mlx5e_rx_res_rss_init(priv->rx_res, rss_context, count); in mlx5e_set_rxfh_context()
1293 err = mlx5e_rx_res_rss_set_rxfh(priv->rx_res, *rss_context, indir, key, in mlx5e_set_rxfh_context()
/Linux-v6.6/drivers/net/ethernet/sfc/falcon/
Dfilter.h133 u32 rss_context; member
160 spec->rss_context = EF4_FILTER_RSS_CONTEXT_DEFAULT; in ef4_filter_init_rx()
/Linux-v6.6/drivers/net/ethernet/mellanox/mlx4/
Den_rx.c1197 struct mlx4_rss_context *rss_context; in mlx4_en_config_rss_steer() local
1261 rss_context = ptr; in mlx4_en_config_rss_steer()
1262 rss_context->base_qpn = cpu_to_be32(ilog2(rss_rings) << 24 | in mlx4_en_config_rss_steer()
1264 rss_context->default_qpn = cpu_to_be32(rss_map->base_qpn); in mlx4_en_config_rss_steer()
1267 rss_context->base_qpn_udp = rss_context->default_qpn; in mlx4_en_config_rss_steer()
1275 rss_context->flags = rss_mask; in mlx4_en_config_rss_steer()
1276 rss_context->hash_fn = MLX4_RSS_HASH_TOP; in mlx4_en_config_rss_steer()
1278 rss_context->hash_fn = MLX4_RSS_HASH_XOR; in mlx4_en_config_rss_steer()
1280 rss_context->hash_fn = MLX4_RSS_HASH_TOP; in mlx4_en_config_rss_steer()
1281 memcpy(rss_context->rss_key, priv->rss_key, in mlx4_en_config_rss_steer()
/Linux-v6.6/include/linux/
Dethtool.h852 u8 *hfunc, u32 rss_context);
855 u32 *rss_context, bool delete);
/Linux-v6.6/include/uapi/linux/
Dethtool.h1227 __u32 rss_context; member
1284 __u32 rss_context; member
/Linux-v6.6/drivers/net/ethernet/intel/ice/
Dice_ethtool.c3117 u8 *key, u8 *hfunc, u32 rss_context) in ice_get_rxfh_context() argument
3131 if (rss_context && !ice_is_adq_active(pf)) { in ice_get_rxfh_context()
3136 qcount = vsi->mqprio_qopt.qopt.count[rss_context]; in ice_get_rxfh_context()
3137 offset = vsi->mqprio_qopt.qopt.offset[rss_context]; in ice_get_rxfh_context()
3139 if (rss_context && ice_is_adq_active(pf)) { in ice_get_rxfh_context()
3141 if (rss_context >= num_tc) { in ice_get_rxfh_context()
3143 rss_context, num_tc); in ice_get_rxfh_context()
3147 vsi = vsi->tc_map_vsi[rss_context]; in ice_get_rxfh_context()
/Linux-v6.6/drivers/infiniband/hw/mlx4/
Dqp.c2090 struct mlx4_rss_context *rss_context; in fill_qp_rss_context() local
2092 rss_context = (void *)context + offsetof(struct mlx4_qp_context, in fill_qp_rss_context()
2095 rss_context->base_qpn = cpu_to_be32(qp->rss_ctx->base_qpn_tbl_sz); in fill_qp_rss_context()
2096 rss_context->default_qpn = in fill_qp_rss_context()
2099 rss_context->base_qpn_udp = rss_context->default_qpn; in fill_qp_rss_context()
2100 rss_context->flags = qp->rss_ctx->flags; in fill_qp_rss_context()
2102 rss_context->hash_fn = MLX4_RSS_HASH_TOP; in fill_qp_rss_context()
2104 memcpy(rss_context->rss_key, qp->rss_ctx->rss_key, in fill_qp_rss_context()

12