Merge branch 'ethtool-rssh-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/bwh/net-next
Ben Hutchings says:
====================
Pull request: Fixes for new ethtool RSS commands
This addresses several problems I previously identified with the new
ETHTOOL_{G,S}RSSH commands:
1. Missing validation of reserved parameters
2. Vague documentation
3. Use of unnamed magic number
4. No consolidation with existing driver operations
I don't currently have access to suitable network hardware, but have
tested these changes with a dummy driver that can support various
combinations of operations and sizes, together with (a) Debian's ethtool
3.13 (b) ethtool 3.14 with the submitted patch to use ETHTOOL_{G,S}RSSH
and minor adjustment for fixes 1 and 3.
v2: Update RSS operations in vmxnet3 too
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
@@ -12532,7 +12532,7 @@ static u32 tg3_get_rxfh_indir_size(struct net_device *dev)
|
||||
return size;
|
||||
}
|
||||
|
||||
static int tg3_get_rxfh_indir(struct net_device *dev, u32 *indir)
|
||||
static int tg3_get_rxfh(struct net_device *dev, u32 *indir, u8 *key)
|
||||
{
|
||||
struct tg3 *tp = netdev_priv(dev);
|
||||
int i;
|
||||
@@ -12543,7 +12543,7 @@ static int tg3_get_rxfh_indir(struct net_device *dev, u32 *indir)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int tg3_set_rxfh_indir(struct net_device *dev, const u32 *indir)
|
||||
static int tg3_set_rxfh(struct net_device *dev, const u32 *indir, const u8 *key)
|
||||
{
|
||||
struct tg3 *tp = netdev_priv(dev);
|
||||
size_t i;
|
||||
@@ -14075,8 +14075,8 @@ static const struct ethtool_ops tg3_ethtool_ops = {
|
||||
.get_sset_count = tg3_get_sset_count,
|
||||
.get_rxnfc = tg3_get_rxnfc,
|
||||
.get_rxfh_indir_size = tg3_get_rxfh_indir_size,
|
||||
.get_rxfh_indir = tg3_get_rxfh_indir,
|
||||
.set_rxfh_indir = tg3_set_rxfh_indir,
|
||||
.get_rxfh = tg3_get_rxfh,
|
||||
.set_rxfh = tg3_set_rxfh,
|
||||
.get_channels = tg3_get_channels,
|
||||
.set_channels = tg3_set_channels,
|
||||
.get_ts_info = tg3_get_ts_info,
|
||||
|
||||
Reference in New Issue
Block a user