Hi Dave,
This patchset contains misc bug fixes from the team
to the mlx4 Core and Eth drivers.
Series generated against net commit:
32f1bc0f3d26 Revert "ipv4: restore rt->fi for reference counting"
Thanks,
Tariq.
Jack Morgenstein (1):
net/mlx4_core: Reduce harmless SRIOV error message to debug level
Kamal Heib (1):
net/mlx4_en: Change the error print to debug print
Talat Batheesh (1):
net/mlx4_en: Avoid adding steering rules with invalid ring
drivers/net/ethernet/mellanox/mlx4/cmd.c | 14 +++++++++++---
drivers/net/ethernet/mellanox/mlx4/en_ethtool.c | 5 +++++
drivers/net/ethernet/mellanox/mlx4/en_rx.c | 3 ++-
drivers/net/ethernet/mellanox/mlx4/resource_tracker.c | 2 +-
4 files changed, 19 insertions(+), 5 deletions(-)
--
1.8.3.1
From: Jack Morgenstein <redacted>
Under SRIOV resource management, extra counters are allocated to VFs
from a free pool. If that pool is empty, the ALLOC_RES command for
a counter resource fails -- and this generates a misleading error
message in the message log.
Under SRIOV, each VF is allocated (i.e., guaranteed) 2 counters --
one counter per port. For ETH ports, the RoCE driver requests an
additional counter (above the guaranteed counters). If that request
fails, the VF RoCE driver simply uses the default (i.e., guaranteed)
counter for that port.
Thus, failing to allocate an additional counter does not constitute
a problem, and the error message on the PF when this occurs should
be reduced to debug level.
Finally, to identify the situation that the reason for the failure is
that no resources are available to grant to the VF, we modified the
error returned by mlx4_grant_resource to -EDQUOT (Quota exceeded),
which more accurately describes the error.
Fixes: c3abb51bdb0e ("IB/mlx4: Add RoCE/IB dedicated counters")
Signed-off-by: Jack Morgenstein <redacted>
Signed-off-by: Tariq Toukan <redacted>
---
drivers/net/ethernet/mellanox/mlx4/cmd.c | 14 +++++++++++---
drivers/net/ethernet/mellanox/mlx4/resource_tracker.c | 2 +-
2 files changed, 12 insertions(+), 4 deletions(-)
@@ -1789,9 +1789,17 @@ static int mlx4_master_process_vhcr(struct mlx4_dev *dev, int slave,}if(err){-if(!(dev->persist->state&MLX4_DEVICE_STATE_INTERNAL_ERROR))-mlx4_warn(dev,"vhcr command:0x%x slave:%d failed with error:%d, status %d\n",-vhcr->op,slave,vhcr->errno,err);+if(!(dev->persist->state&MLX4_DEVICE_STATE_INTERNAL_ERROR)){+if(vhcr->op==MLX4_CMD_ALLOC_RES&&+(vhcr->in_modifier&0xff)==RES_COUNTER&&+err==-EDQUOT)+mlx4_dbg(dev,+"Unable to allocate counter for slave %d (%d)\n",+slave,err);+else+mlx4_warn(dev,"vhcr command:0x%x slave:%d failed with error:%d, status %d\n",+vhcr->op,slave,vhcr->errno,err);+}vhcr_cmd->status=mlx4_errno_to_status(err);gotoout_status;}
This patchset contains misc bug fixes from the team
to the mlx4 Core and Eth drivers.
Series generated against net commit:
32f1bc0f3d26 Revert "ipv4: restore rt->fi for reference counting"
From: Or Gerlitz <hidden> Date: 2017-05-10 16:55:24
On Tue, May 9, 2017 at 2:45 PM, Tariq Toukan [off-list ref] wrote:
From: Talat Batheesh <redacted>
Inserting steering rules with illegal ring is an invalid operation, block it.
Hi Dave,
I realized today that the patch introduced a regression, Tariq will
see if to revert it as a whole or fix the regression.
Just wanted to drop you a note and to make sure you don't further
carry it to -stable,
xxit happens :(
Or.