All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Miller <davem@davemloft.net>
To: idosch@idosch.org
Cc: netdev@vger.kernel.org, kuba@kernel.org, jiri@nvidia.com,
	petrm@nvidia.com, mlxsw@nvidia.com, idosch@nvidia.com
Subject: Re: [PATCH net-next 00/15] mlxsw: Refactor headroom management
Date: Wed, 16 Sep 2020 15:19:53 -0700 (PDT)	[thread overview]
Message-ID: <20200916.151953.971004880688415778.davem@davemloft.net> (raw)
In-Reply-To: <20200916063528.116624-1-idosch@idosch.org>

From: Ido Schimmel <idosch@idosch.org>
Date: Wed, 16 Sep 2020 09:35:13 +0300

> From: Ido Schimmel <idosch@nvidia.com>
> 
> Petr says:
> 
> On Spectrum, port buffers, also called port headroom, is where packets are
> stored while they are parsed and the forwarding decision is being made. For
> lossless traffic flows, in case shared buffer admission is not allowed,
> headroom is also where to put the extra traffic received before the sent
> PAUSE takes effect. Another aspect of the port headroom is the so called
> internal buffer, which is used for egress mirroring.
> 
> Linux supports two DCB interfaces related to the headroom: dcbnl_setbuffer
> for configuration, and dcbnl_getbuffer for inspection. In order to make it
> possible to implement these interfaces, it is first necessary to clean up
> headroom handling, which is currently strewn in several places in the
> driver.
> 
> The end goal is an architecture whereby it is possible to take a copy of
> the current configuration, adjust parameters, and then hand the proposed
> configuration over to the system to implement it. When everything works,
> the proposed configuration is accepted and saved. First, this centralizes
> the reconfiguration handling to one function, which takes care of
> coordinating buffer size changes and priority map changes to avoid
> introducing drops. Second, the fact that the configuration is all in one
> place makes it easy to keep a backup and handle error path rollbacks, which
> were previously hard to understand.
 ...

Series applied, thank you.

      parent reply	other threads:[~2020-09-16 22:19 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-16  6:35 [PATCH net-next 00/15] mlxsw: Refactor headroom management Ido Schimmel
2020-09-16  6:35 ` [PATCH net-next 01/15] mlxsw: spectrum_buffers: Add struct mlxsw_sp_hdroom Ido Schimmel
2020-09-16  6:35 ` [PATCH net-next 02/15] mlxsw: spectrum: Unify delay handling between PFC and pause Ido Schimmel
2020-09-16  6:35 ` [PATCH net-next 03/15] mlxsw: spectrum: Track MTU in struct mlxsw_sp_hdroom Ido Schimmel
2020-09-16  6:35 ` [PATCH net-next 04/15] mlxsw: spectrum: Track priorities " Ido Schimmel
2020-09-16  6:35 ` [PATCH net-next 05/15] mlxsw: spectrum: Track lossiness " Ido Schimmel
2020-09-16  6:35 ` [PATCH net-next 06/15] mlxsw: spectrum: Track buffer sizes " Ido Schimmel
2020-09-16  6:35 ` [PATCH net-next 07/15] mlxsw: spectrum: Split headroom autoresize out of buffer configuration Ido Schimmel
2020-09-16  6:35 ` [PATCH net-next 08/15] mlxsw: spectrum_dcb: Convert ETS handler fully to mlxsw_sp_hdroom_configure() Ido Schimmel
2020-09-16  6:35 ` [PATCH net-next 09/15] mlxsw: spectrum_dcb: Convert mlxsw_sp_port_pg_prio_map() to hdroom code Ido Schimmel
2020-09-16  6:35 ` [PATCH net-next 10/15] mlxsw: spectrum: Move here the three-step headroom configuration from DCB Ido Schimmel
2020-09-16  6:35 ` [PATCH net-next 11/15] mlxsw: spectrum_buffers: Move here the new headroom code Ido Schimmel
2020-09-16  6:35 ` [PATCH net-next 12/15] mlxsw: spectrum_buffers: Inline mlxsw_sp_sb_max_headroom_cells() Ido Schimmel
2020-09-16  6:35 ` [PATCH net-next 13/15] mlxsw: spectrum_buffers: Convert mlxsw_sp_port_headroom_init() Ido Schimmel
2020-09-16  6:35 ` [PATCH net-next 14/15] mlxsw: spectrum_buffers: Introduce shared buffer ops Ido Schimmel
2020-09-16  6:35 ` [PATCH net-next 15/15] mlxsw: spectrum_buffers: Manage internal buffer in the hdroom code Ido Schimmel
2020-09-16 22:19 ` David Miller [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200916.151953.971004880688415778.davem@davemloft.net \
    --to=davem@davemloft.net \
    --cc=idosch@idosch.org \
    --cc=idosch@nvidia.com \
    --cc=jiri@nvidia.com \
    --cc=kuba@kernel.org \
    --cc=mlxsw@nvidia.com \
    --cc=netdev@vger.kernel.org \
    --cc=petrm@nvidia.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.