[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20231215093720.18774-1-donald.hunter@gmail.com>
Date: Fri, 15 Dec 2023 09:37:07 +0000
From: Donald Hunter <donald.hunter@...il.com>
To: netdev@...r.kernel.org,
Jakub Kicinski <kuba@...nel.org>,
"David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Paolo Abeni <pabeni@...hat.com>,
Jonathan Corbet <corbet@....net>,
linux-doc@...r.kernel.org,
Jacob Keller <jacob.e.keller@...el.com>,
Breno Leitao <leitao@...ian.org>
Cc: donald.hunter@...hat.com,
Donald Hunter <donald.hunter@...il.com>
Subject: [PATCH net-next v5 00/13] tools/net/ynl: Add 'sub-message' support to ynl
This patchset adds a 'sub-message' attribute type to the netlink-raw
schema and implements it in ynl. This provides support for kind-specific
options attributes as used in rt_link and tc raw netlink families.
A description of the new 'sub-message' attribute type and the
corresponding sub-message definitions is provided in patch 3.
The patchset includes updates to the rt_link spec and a new tc spec that
make use of the new 'sub-message' attribute type.
As mentioned in patch 4, encode support is not yet implemented in ynl
and support for sub-message selectors at a different nest level from the
key attribute is not yet supported. I plan to work on these in follow-up
patches.
Patches 1 is code cleanup in ynl
Patches 2-4 add sub-message support to the schema and ynl with
documentation updates.
Patch 5 adds binary and pad support to structs in netlink-raw.
Patches 6-8 contain specs that use the sub-message attribute type.
Patches 9-13 update ynl-gen-rst and its make target
Changes since v4:
- Update tc spec to remove fixed header attributes from ops
Changes since v3: (reported by Breno Leitao)
- Remove an unnecessary make dependency from the YNL_INDEX target.
Changes since v2: (reported by Jakub Kicinski and Breno Leitao)
- Fixed ynl-gen-c breakage
- Added schema constraint for pad/binary & len
- Improved description text in raw schema
- Used | for all multi-line text in schema
- Updated docs with explanation of what a sub-message is
- Reverted change in ynl-gen-rst
- Added ynl-gen-rst patches and grouped them all at end of patchset
Changes since v1: (reported by Jakub Kicinski, thanks!)
- Added cleanups for ynl and generated netlink docs
- Describe sub-messages in netlink docs
- Cleaned up unintended indent changes
- Cleaned up rt-link sub-message definitions
- Cleaned up array index expressions to follow python style
- Added sub-messages to generated netlink spec docs
Donald Hunter (13):
tools/net/ynl: Use consistent array index expression formatting
doc/netlink: Add sub-message support to netlink-raw
doc/netlink: Document the sub-message format for netlink-raw
tools/net/ynl: Add 'sub-message' attribute decoding to ynl
tools/net/ynl: Add binary and pad support to structs for tc
doc/netlink/specs: Add sub-message type to rt_link family
doc/netlink/specs: use pad in structs in rt_link
doc/netlink/specs: Add a spec for tc
doc/netlink: Regenerate netlink .rst files if ynl-gen-rst changes
tools/net/ynl-gen-rst: Add sub-messages to generated docs
tools/net/ynl-gen-rst: Sort the index of generated netlink specs
tools/net/ynl-gen-rst: Remove bold from attribute-set headings
tools/net/ynl-gen-rst: Remove extra indentation from generated docs
Documentation/Makefile | 6 +-
Documentation/netlink/netlink-raw.yaml | 65 +-
Documentation/netlink/specs/rt_link.yaml | 449 +++-
Documentation/netlink/specs/tc.yaml | 2031 +++++++++++++++++
.../userspace-api/netlink/netlink-raw.rst | 96 +-
tools/net/ynl/lib/nlspec.py | 55 +
tools/net/ynl/lib/ynl.py | 94 +-
tools/net/ynl/ynl-gen-rst.py | 31 +-
8 files changed, 2782 insertions(+), 45 deletions(-)
create mode 100644 Documentation/netlink/specs/tc.yaml
--
2.42.0
Powered by blists - more mailing lists