mirror of
https://github.com/torvalds/linux.git
synced 2026-05-30 01:53:29 +02:00
eth: ice: drop the dead code related to rss_contexts
ICE appears to have some odd form of rss_context use plumbed
in for .get_rxfh. The .set_rxfh side does not support creating
contexts, however, so this must be dead code. For at least a year
now (since commit 7964e78846 ("net: ethtool: use the tracking
array for get_rxfh on custom RSS contexts")) we have not been
calling .get_rxfh with a non-zero rss_context. We just get
the info from the RSS XArray under dev->ethtool.
Remove what must be dead code in the driver, clear the support flags.
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20250707184115.2285277-3-kuba@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
62e01d8c41
commit
be78c83a8b
|
|
@ -3591,11 +3591,10 @@ static int
|
|||
ice_get_rxfh(struct net_device *netdev, struct ethtool_rxfh_param *rxfh)
|
||||
{
|
||||
struct ice_netdev_priv *np = netdev_priv(netdev);
|
||||
u32 rss_context = rxfh->rss_context;
|
||||
struct ice_vsi *vsi = np->vsi;
|
||||
struct ice_pf *pf = vsi->back;
|
||||
u16 qcount, offset;
|
||||
int err, num_tc, i;
|
||||
int err, i;
|
||||
u8 *lut;
|
||||
|
||||
if (!test_bit(ICE_FLAG_RSS_ENA, pf->flags)) {
|
||||
|
|
@ -3603,24 +3602,8 @@ ice_get_rxfh(struct net_device *netdev, struct ethtool_rxfh_param *rxfh)
|
|||
return -EOPNOTSUPP;
|
||||
}
|
||||
|
||||
if (rss_context && !ice_is_adq_active(pf)) {
|
||||
netdev_err(netdev, "RSS context cannot be non-zero when ADQ is not configured.\n");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
qcount = vsi->mqprio_qopt.qopt.count[rss_context];
|
||||
offset = vsi->mqprio_qopt.qopt.offset[rss_context];
|
||||
|
||||
if (rss_context && ice_is_adq_active(pf)) {
|
||||
num_tc = vsi->mqprio_qopt.qopt.num_tc;
|
||||
if (rss_context >= num_tc) {
|
||||
netdev_err(netdev, "RSS context:%d > num_tc:%d\n",
|
||||
rss_context, num_tc);
|
||||
return -EINVAL;
|
||||
}
|
||||
/* Use channel VSI of given TC */
|
||||
vsi = vsi->tc_map_vsi[rss_context];
|
||||
}
|
||||
qcount = vsi->mqprio_qopt.qopt.count[0];
|
||||
offset = vsi->mqprio_qopt.qopt.offset[0];
|
||||
|
||||
rxfh->hfunc = ETH_RSS_HASH_TOP;
|
||||
if (vsi->rss_hfunc == ICE_AQ_VSI_Q_OPT_RSS_HASH_SYM_TPLZ)
|
||||
|
|
@ -3680,9 +3663,6 @@ ice_set_rxfh(struct net_device *netdev, struct ethtool_rxfh_param *rxfh,
|
|||
rxfh->hfunc != ETH_RSS_HASH_TOP)
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
if (rxfh->rss_context)
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
if (!test_bit(ICE_FLAG_RSS_ENA, pf->flags)) {
|
||||
/* RSS not supported return error here */
|
||||
netdev_warn(netdev, "RSS is not configured on this VSI!\n");
|
||||
|
|
@ -4750,12 +4730,10 @@ static int ice_repr_ethtool_reset(struct net_device *dev, u32 *flags)
|
|||
}
|
||||
|
||||
static const struct ethtool_ops ice_ethtool_ops = {
|
||||
.cap_rss_ctx_supported = true,
|
||||
.supported_coalesce_params = ETHTOOL_COALESCE_USECS |
|
||||
ETHTOOL_COALESCE_USE_ADAPTIVE |
|
||||
ETHTOOL_COALESCE_RX_USECS_HIGH,
|
||||
.supported_input_xfrm = RXH_XFRM_SYM_XOR,
|
||||
.rxfh_per_ctx_key = true,
|
||||
.get_link_ksettings = ice_get_link_ksettings,
|
||||
.set_link_ksettings = ice_set_link_ksettings,
|
||||
.get_fec_stats = ice_get_fec_stats,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user