mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-23 00:20:52 -05:00
doc/netlink: Describe nested structs in netlink raw docs
Add a description and example of nested struct definitions to the netlink raw documentation. Signed-off-by: Donald Hunter <donald.hunter@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Link: https://lore.kernel.org/r/20240129223458.52046-12-donald.hunter@gmail.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
bf08f32c8c
commit
9d6429c339
1 changed files with 34 additions and 0 deletions
|
@ -158,3 +158,37 @@ alongside a sub-message selector and also in a top level ``attribute-set``, then
|
||||||
the selector will be resolved using the value 'closest' to the selector. If the
|
the selector will be resolved using the value 'closest' to the selector. If the
|
||||||
value is not present in the message at the same level as defined in the spec
|
value is not present in the message at the same level as defined in the spec
|
||||||
then this is an error.
|
then this is an error.
|
||||||
|
|
||||||
|
Nested struct definitions
|
||||||
|
-------------------------
|
||||||
|
|
||||||
|
Many raw netlink families such as :doc:`tc<../../networking/netlink_spec/tc>`
|
||||||
|
make use of nested struct definitions. The ``netlink-raw`` schema makes it
|
||||||
|
possible to embed a struct within a struct definition using the ``struct``
|
||||||
|
property. For example, the following struct definition embeds the
|
||||||
|
``tc-ratespec`` struct definition for both the ``rate`` and the ``peakrate``
|
||||||
|
members of ``struct tc-tbf-qopt``.
|
||||||
|
|
||||||
|
.. code-block:: yaml
|
||||||
|
|
||||||
|
-
|
||||||
|
name: tc-tbf-qopt
|
||||||
|
type: struct
|
||||||
|
members:
|
||||||
|
-
|
||||||
|
name: rate
|
||||||
|
type: binary
|
||||||
|
struct: tc-ratespec
|
||||||
|
-
|
||||||
|
name: peakrate
|
||||||
|
type: binary
|
||||||
|
struct: tc-ratespec
|
||||||
|
-
|
||||||
|
name: limit
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: buffer
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: mtu
|
||||||
|
type: u32
|
||||||
|
|
Loading…
Reference in a new issue