All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH net-next 00/14] mlxsw: Shared buffer improvements
@ 2019-04-22 12:08 Ido Schimmel
  2019-04-22 12:08 ` [PATCH net-next 01/14] net: devlink: Add extack to shared buffer operations Ido Schimmel
                   ` (15 more replies)
  0 siblings, 16 replies; 20+ messages in thread
From: Ido Schimmel @ 2019-04-22 12:08 UTC (permalink / raw)
  To: netdev@vger.kernel.org
  Cc: davem@davemloft.net, Jiri Pirko, Petr Machata, Alex Kushnarov,
	mlxsw, Ido Schimmel

This patchset includes two improvements with regards to shared buffer
configuration in mlxsw.

The first part of this patchset forbids the user from performing illegal
shared buffer configuration that can result in unnecessary packet loss.
In order to better communicate these configuration failures to the user,
extack is propagated from devlink towards drivers. This is done in
patches #1-#8.

The second part of the patchset deals with the shared buffer
configuration of the CPU port. When a packet is trapped by the device,
it is sent across the PCI bus to the attached host CPU. From the
device's perspective, it is as if the packet is transmitted through the
CPU port.

While testing traffic directed at the CPU it became apparent that for
certain packet sizes and certain burst sizes, the current shared buffer
configuration of the CPU port is inadequate and results in packet drops.
The configuration is adjusted by patches #9-#14 that create two new pools
- ingress & egress - which are dedicated for CPU traffic.

Ido Schimmel (14):
  net: devlink: Add extack to shared buffer operations
  mlxsw: spectrum_buffers: Add extack messages for invalid
    configurations
  mlxsw: spectrum_buffers: Use defines for pool indices
  mlxsw: spectrum_buffers: Add ability to veto pool's configuration
  mlxsw: spectrum_buffers: Add ability to veto TC's configuration
  mlxsw: spectrum_buffers: Forbid configuration of multicast pool
  mlxsw: spectrum_buffers: Forbid changing threshold type of first
    egress pool
  mlxsw: spectrum_buffers: Forbid changing multicast TCs' attributes
  mlxsw: spectrum_buffers: Remove assumption about pool order
  mlxsw: spectrum_buffers: Add pools for CPU traffic
  mlxsw: spectrum_buffers: Use new CPU ingress pool for control packets
  mlxsw: spectrum_buffers: Split business logic from
    mlxsw_sp_port_sb_pms_init()
  mlxsw: spectrum_buffers: Allow skipping ingress port quota
    configuration
  mlxsw: spectrum_buffers: Adjust CPU port shared buffer egress quotas

 drivers/net/ethernet/mellanox/mlxsw/core.c    |  16 +-
 drivers/net/ethernet/mellanox/mlxsw/core.h    |   8 +-
 .../net/ethernet/mellanox/mlxsw/spectrum.h    |   8 +-
 .../mellanox/mlxsw/spectrum_buffers.c         | 388 ++++++++++++------
 .../net/ethernet/netronome/nfp/nfp_devlink.c  |   3 +-
 include/net/devlink.h                         |   8 +-
 net/core/devlink.c                            |  22 +-
 7 files changed, 300 insertions(+), 153 deletions(-)

-- 
2.20.1


^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2019-04-23 16:31 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-04-22 12:08 [PATCH net-next 00/14] mlxsw: Shared buffer improvements Ido Schimmel
2019-04-22 12:08 ` [PATCH net-next 01/14] net: devlink: Add extack to shared buffer operations Ido Schimmel
2019-04-22 12:08 ` [PATCH net-next 02/14] mlxsw: spectrum_buffers: Add extack messages for invalid configurations Ido Schimmel
2019-04-22 12:08 ` [PATCH net-next 03/14] mlxsw: spectrum_buffers: Use defines for pool indices Ido Schimmel
2019-04-22 12:08 ` [PATCH net-next 04/14] mlxsw: spectrum_buffers: Add ability to veto pool's configuration Ido Schimmel
2019-04-22 12:08 ` [PATCH net-next 05/14] mlxsw: spectrum_buffers: Add ability to veto TC's configuration Ido Schimmel
2019-04-22 12:08 ` [PATCH net-next 06/14] mlxsw: spectrum_buffers: Forbid configuration of multicast pool Ido Schimmel
2019-04-22 12:08 ` [PATCH net-next 07/14] mlxsw: spectrum_buffers: Forbid changing threshold type of first egress pool Ido Schimmel
2019-04-22 12:08 ` [PATCH net-next 08/14] mlxsw: spectrum_buffers: Forbid changing multicast TCs' attributes Ido Schimmel
2019-04-22 12:08 ` [PATCH net-next 09/14] mlxsw: spectrum_buffers: Remove assumption about pool order Ido Schimmel
2019-04-22 12:08 ` [PATCH net-next 10/14] mlxsw: spectrum_buffers: Add pools for CPU traffic Ido Schimmel
2019-04-22 12:08 ` [PATCH net-next 11/14] mlxsw: spectrum_buffers: Use new CPU ingress pool for control packets Ido Schimmel
2019-04-22 12:08 ` [PATCH net-next 12/14] mlxsw: spectrum_buffers: Split business logic from mlxsw_sp_port_sb_pms_init() Ido Schimmel
2019-04-22 12:08 ` [PATCH net-next 13/14] mlxsw: spectrum_buffers: Allow skipping ingress port quota configuration Ido Schimmel
2019-04-22 12:08 ` [PATCH net-next 14/14] mlxsw: spectrum_buffers: Adjust CPU port shared buffer egress quotas Ido Schimmel
2019-04-22 21:17 ` [PATCH net-next 00/14] mlxsw: Shared buffer improvements Jakub Kicinski
2019-04-23  5:26   ` Ido Schimmel
2019-04-23  7:28     ` Jiri Pirko
2019-04-23 16:31       ` Jakub Kicinski
2019-04-23  5:12 ` David Miller

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.