Mon, Jan 29, 2024 at 11:34:45PM CET, donald.hunter@xxxxxxxxx wrote: >Add features to ynl for tc and update the tc spec to use them. > >Patch 1 adds an option to output json instead of python pretty printing. >Patch 2, 3 adds support and docs for sub-messages in nested attribute >spaces that reference keys from a parent space. >Patches 4 and 7-9 refactor ynl in support of nested struct definitions >Patch 5 implements sub-message encoding for write ops. >Patch 6 adds logic to set default zero values for binary blobs >Patches 10, 11 adds support and docs for nested struct definitions >Patch 12 updates the ynl doc generator to include type information for >struct members. >Patch 13 updates the tc spec - still a work in progress but more complete > >v1 -> v2 > - Use spec-led sub-message selector resolution instead of ChainMap > - Add docs for sub-message selector resolution > - Remove unused variable declaration in ynl-gen-rst > >Donald Hunter (13): > tools/net/ynl: Add --output-json arg to ynl cli > tools/net/ynl: Support sub-messages in nested attribute spaces > doc/netlink: Describe sub-message selector resolution > tools/net/ynl: Refactor fixed header encoding into separate method > tools/net/ynl: Add support for encoding sub-messages > tools/net/ynl: Encode default values for binary blobs > tools/net/ynl: Combine struct decoding logic in ynl > tools/net/ynl: Rename _fixed_header_size() to _struct_size() > tools/net/ynl: Move formatted_string method out of NlAttr > tools/net/ynl: Add support for nested structs > doc/netlink: Describe nested structs in netlink raw docs > tools/net/ynl: Add type info to struct members in generated docs > doc/netlink/specs: Update the tc spec Looks good to me in general. I didn't review all the spec changes in details though. FWIW: Reviewed-by: Jiri Pirko <jiri@xxxxxxxxxx>