net/mlx4_en: fix mlx4 ethtool -N insertion
authorLuigi Rizzo <lrizzo@google.com>
Fri, 15 Nov 2019 20:12:25 +0000 (12:12 -0800)
committerDavid S. Miller <davem@davemloft.net>
Sun, 17 Nov 2019 18:28:52 +0000 (10:28 -0800)
ethtool expects ETHTOOL_GRXCLSRLALL to set ethtool_rxnfc->data with the
total number of entries in the rx classifier table.  Surprisingly, mlx4
is missing this part (in principle ethtool could still move forward and
try the insert).

Tested: compiled and run command:
phh13:~# ethtool -N eth1 flow-type udp4  queue 4
Added rule with ID 255

Signed-off-by: Luigi Rizzo <lrizzo@google.com>
Reviewed-by: Tariq Toukan <tariqt@mellanox.com>
drivers/net/ethernet/mellanox/mlx4/en_ethtool.c

index d8313e2..c12da02 100644 (file)
@@ -1745,6 +1745,7 @@ static int mlx4_en_get_rxnfc(struct net_device *dev, struct ethtool_rxnfc *cmd,
                err = mlx4_en_get_flow(dev, cmd, cmd->fs.location);
                break;
        case ETHTOOL_GRXCLSRLALL:
+               cmd->data = MAX_NUM_OF_FS_RULES;
                while ((!err || err == -ENOENT) && priority < cmd->rule_cnt) {
                        err = mlx4_en_get_flow(dev, cmd, i);
                        if (!err)