igc: Cleanup _get|set_rxnfc ethtool ops

This patch does a trivial change in igc_ethtool_get_rxnfc() and
igc_ethtool_set_rxnfc() to simplify their logic.

Signed-off-by: Andre Guedes <andre.guedes@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
This commit is contained in:
Andre Guedes 2020-04-24 13:16:07 -07:00 committed by Jeff Kirsher
parent 4d0710c241
commit 8b9c23cdf0
1 changed files with 10 additions and 23 deletions

View File

@ -1055,31 +1055,23 @@ static int igc_get_rxnfc(struct net_device *dev, struct ethtool_rxnfc *cmd,
u32 *rule_locs)
{
struct igc_adapter *adapter = netdev_priv(dev);
int ret = -EOPNOTSUPP;
switch (cmd->cmd) {
case ETHTOOL_GRXRINGS:
cmd->data = adapter->num_rx_queues;
ret = 0;
break;
return 0;
case ETHTOOL_GRXCLSRLCNT:
cmd->rule_cnt = adapter->nfc_filter_count;
ret = 0;
break;
return 0;
case ETHTOOL_GRXCLSRULE:
ret = igc_get_ethtool_nfc_entry(adapter, cmd);
break;
return igc_get_ethtool_nfc_entry(adapter, cmd);
case ETHTOOL_GRXCLSRLALL:
ret = igc_get_ethtool_nfc_all(adapter, cmd, rule_locs);
break;
return igc_get_ethtool_nfc_all(adapter, cmd, rule_locs);
case ETHTOOL_GRXFH:
ret = igc_get_rss_hash_opts(adapter, cmd);
break;
return igc_get_rss_hash_opts(adapter, cmd);
default:
break;
return -EOPNOTSUPP;
}
return ret;
}
#define UDP_RSS_FLAGS (IGC_FLAG_RSS_FIELD_IPV4_UDP | \
@ -1418,22 +1410,17 @@ static int igc_del_ethtool_nfc_entry(struct igc_adapter *adapter,
static int igc_set_rxnfc(struct net_device *dev, struct ethtool_rxnfc *cmd)
{
struct igc_adapter *adapter = netdev_priv(dev);
int ret = -EOPNOTSUPP;
switch (cmd->cmd) {
case ETHTOOL_SRXFH:
ret = igc_set_rss_hash_opt(adapter, cmd);
break;
return igc_set_rss_hash_opt(adapter, cmd);
case ETHTOOL_SRXCLSRLINS:
ret = igc_add_ethtool_nfc_entry(adapter, cmd);
break;
return igc_add_ethtool_nfc_entry(adapter, cmd);
case ETHTOOL_SRXCLSRLDEL:
ret = igc_del_ethtool_nfc_entry(adapter, cmd);
return igc_del_ethtool_nfc_entry(adapter, cmd);
default:
break;
return -EOPNOTSUPP;
}
return ret;
}
void igc_write_rss_indir_tbl(struct igc_adapter *adapter)