mbox series

[iproute2-next,v2,0/7] dcb: Support APP, DCBX objects

Message ID cover.1609544200.git.me@pmachata.org (mailing list archive)
Headers show
Series dcb: Support APP, DCBX objects | expand

Message

Petr Machata Jan. 2, 2021, 12:03 a.m. UTC
Add support to the dcb tool for the following two DCB objects:

- APP, which allows configuration of traffic prioritization rules based on
  several possible packet headers.

- DCBX, which is a 1-byte bitfield of flags that configure whether the DCBX
  protocol is implemented in the device or in the host, and which version
  of the protocol should be used.

Patch #1 adds a new helper for finding a name of a given dsfield value.
This is useful for APP DSCP-to-priority rules, which can use human-readable
DSCP names.

Patches #2, #3 and #4 extend existing interfaces for, respectively, parsing
of the X:Y mappings, for setting a DCB object, and for getting a DCB
object.

In patch #5, support for the command line argument -N / --Numeric is
added. The APP tool later uses it to decide whether to format DSCP values
as human-readable strings or as plain numbers.

Patches #6 and #7 add the subtools themselves and their man pages.

v2:
- Two patches dropped and sent to iproute2 branch as "dcb: Fixes".
  This patch set now depends on that one.
- Patch #5:
    - Make it -N / --Numeric instead of -n / --no-nice-names
    - Rename the flag from no_nice_names to numeric as well
- Patch #6:
    - Adjust to s/no_nice_names/numeric/ from another patch.

Petr Machata (7):
  lib: rt_names: Add rtnl_dsfield_get_name()
  lib: Generalize parse_mapping()
  dcb: Generalize dcb_set_attribute()
  dcb: Generalize dcb_get_attribute()
  dcb: Support -N to suppress translation to human-readable names
  dcb: Add a subtool for the DCB APP object
  dcb: Add a subtool for the DCBX object

 dcb/Makefile        |   8 +-
 dcb/dcb.c           | 193 +++++++++--
 dcb/dcb.h           |  20 ++
 dcb/dcb_app.c       | 796 ++++++++++++++++++++++++++++++++++++++++++++
 dcb/dcb_dcbx.c      | 192 +++++++++++
 include/rt_names.h  |   1 +
 include/utils.h     |   5 +
 lib/rt_names.c      |  20 +-
 lib/utils.c         |  37 +-
 man/man8/dcb-app.8  | 237 +++++++++++++
 man/man8/dcb-dcbx.8 | 108 ++++++
 man/man8/dcb.8      |  12 +-
 12 files changed, 1591 insertions(+), 38 deletions(-)
 create mode 100644 dcb/dcb_app.c
 create mode 100644 dcb/dcb_dcbx.c
 create mode 100644 man/man8/dcb-app.8
 create mode 100644 man/man8/dcb-dcbx.8

Comments

David Ahern Jan. 18, 2021, 4:13 a.m. UTC | #1
On 1/1/21 5:03 PM, Petr Machata wrote:
> Add support to the dcb tool for the following two DCB objects:
> 
> - APP, which allows configuration of traffic prioritization rules based on
>   several possible packet headers.
> 
> - DCBX, which is a 1-byte bitfield of flags that configure whether the DCBX
>   protocol is implemented in the device or in the host, and which version
>   of the protocol should be used.
> 
> Patch #1 adds a new helper for finding a name of a given dsfield value.
> This is useful for APP DSCP-to-priority rules, which can use human-readable
> DSCP names.
> 
> Patches #2, #3 and #4 extend existing interfaces for, respectively, parsing
> of the X:Y mappings, for setting a DCB object, and for getting a DCB
> object.
> 
> In patch #5, support for the command line argument -N / --Numeric is
> added. The APP tool later uses it to decide whether to format DSCP values
> as human-readable strings or as plain numbers.
> 
> Patches #6 and #7 add the subtools themselves and their man pages.
> 

applied to iproute2-next.