mirror of
https://github.com/torvalds/linux
synced 2024-10-07 03:42:55 +00:00
netlink/specs: Add VF attributes to rt_link spec
Add support for retrieving VFs as part of link info. For example: ./tools/net/ynl/cli.py --spec Documentation/netlink/specs/rt_link.yaml \ --do getlink --json '{"ifi-index": 38, "ext-mask": ["vf", "skip-stats"]}' {'address': 'b6:75:91:f2:64:65', [snip] 'vfinfo-list': {'info': [{'broadcast': b'\xff\xff\xff\xff\xff\xff\x00\x00' b'\x00\x00\x00\x00\x00\x00\x00\x00' b'\x00\x00\x00\x00\x00\x00\x00\x00' b'\x00\x00\x00\x00\x00\x00\x00\x00', 'link-state': {'link-state': 'auto', 'vf': 0}, 'mac': {'mac': b'\x00\x00\x00\x00\x00\x00\x00\x00' b'\x00\x00\x00\x00\x00\x00\x00\x00' b'\x00\x00\x00\x00\x00\x00\x00\x00' b'\x00\x00\x00\x00\x00\x00\x00\x00', 'vf': 0}, 'rate': {'max-tx-rate': 0, 'min-tx-rate': 0, 'vf': 0}, 'rss-query-en': {'setting': 0, 'vf': 0}, 'spoofchk': {'setting': 0, 'vf': 0}, 'trust': {'setting': 0, 'vf': 0}, 'tx-rate': {'rate': 0, 'vf': 0}, 'vlan': {'qos': 0, 'vf': 0, 'vlan': 0}, 'vlan-list': {'info': [{'qos': 0, 'vf': 0, 'vlan': 0, 'vlan-proto': 0}]}}, {'broadcast': b'\xff\xff\xff\xff\xff\xff\x00\x00' b'\x00\x00\x00\x00\x00\x00\x00\x00' b'\x00\x00\x00\x00\x00\x00\x00\x00' b'\x00\x00\x00\x00\x00\x00\x00\x00', 'link-state': {'link-state': 'auto', 'vf': 1}, 'mac': {'mac': b'\x00\x00\x00\x00\x00\x00\x00\x00' b'\x00\x00\x00\x00\x00\x00\x00\x00' b'\x00\x00\x00\x00\x00\x00\x00\x00' b'\x00\x00\x00\x00\x00\x00\x00\x00', 'vf': 1}, 'rate': {'max-tx-rate': 0, 'min-tx-rate': 0, 'vf': 1}, 'rss-query-en': {'setting': 0, 'vf': 1}, 'spoofchk': {'setting': 0, 'vf': 1}, 'trust': {'setting': 0, 'vf': 1}, 'tx-rate': {'rate': 0, 'vf': 1}, 'vlan': {'qos': 0, 'vf': 1, 'vlan': 0}, 'vlan-list': {'info': [{'qos': 0, 'vf': 1, 'vlan': 0, 'vlan-proto': 0}]}}]}, 'xdp': {'attached': 0}} Signed-off-by: Donald Hunter <donald.hunter@gmail.com> Link: https://lore.kernel.org/r/20240507103603.23017-1-donald.hunter@gmail.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
3a2a192b0e
commit
e497c3228a
|
@ -770,6 +770,139 @@ definitions:
|
||||||
-
|
-
|
||||||
name: to
|
name: to
|
||||||
type: u32
|
type: u32
|
||||||
|
-
|
||||||
|
name: ifla-vf-mac
|
||||||
|
type: struct
|
||||||
|
members:
|
||||||
|
-
|
||||||
|
name: vf
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: mac
|
||||||
|
type: binary
|
||||||
|
len: 32
|
||||||
|
-
|
||||||
|
name: ifla-vf-vlan
|
||||||
|
type: struct
|
||||||
|
members:
|
||||||
|
-
|
||||||
|
name: vf
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: vlan
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: qos
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: ifla-vf-tx-rate
|
||||||
|
type: struct
|
||||||
|
members:
|
||||||
|
-
|
||||||
|
name: vf
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: rate
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: ifla-vf-spoofchk
|
||||||
|
type: struct
|
||||||
|
members:
|
||||||
|
-
|
||||||
|
name: vf
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: setting
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: ifla-vf-link-state
|
||||||
|
type: struct
|
||||||
|
members:
|
||||||
|
-
|
||||||
|
name: vf
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: link-state
|
||||||
|
type: u32
|
||||||
|
enum: ifla-vf-link-state-enum
|
||||||
|
-
|
||||||
|
name: ifla-vf-link-state-enum
|
||||||
|
type: enum
|
||||||
|
entries:
|
||||||
|
- auto
|
||||||
|
- enable
|
||||||
|
- disable
|
||||||
|
-
|
||||||
|
name: ifla-vf-rate
|
||||||
|
type: struct
|
||||||
|
members:
|
||||||
|
-
|
||||||
|
name: vf
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: min-tx-rate
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: max-tx-rate
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: ifla-vf-rss-query-en
|
||||||
|
type: struct
|
||||||
|
members:
|
||||||
|
-
|
||||||
|
name: vf
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: setting
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: ifla-vf-trust
|
||||||
|
type: struct
|
||||||
|
members:
|
||||||
|
-
|
||||||
|
name: vf
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: setting
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: ifla-vf-guid
|
||||||
|
type: struct
|
||||||
|
members:
|
||||||
|
-
|
||||||
|
name: vf
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: guid
|
||||||
|
type: u64
|
||||||
|
-
|
||||||
|
name: ifla-vf-vlan-info
|
||||||
|
type: struct
|
||||||
|
members:
|
||||||
|
-
|
||||||
|
name: vf
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: vlan
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: qos
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: vlan-proto
|
||||||
|
type: u32
|
||||||
|
-
|
||||||
|
name: rtext-filter
|
||||||
|
type: flags
|
||||||
|
entries:
|
||||||
|
- vf
|
||||||
|
- brvlan
|
||||||
|
- brvlan-compressed
|
||||||
|
- skip-stats
|
||||||
|
- mrp
|
||||||
|
- cfm-config
|
||||||
|
- cfm-status
|
||||||
|
- mst
|
||||||
|
|
||||||
attribute-sets:
|
attribute-sets:
|
||||||
-
|
-
|
||||||
|
@ -847,7 +980,7 @@ attribute-sets:
|
||||||
-
|
-
|
||||||
name: vfinfo-list
|
name: vfinfo-list
|
||||||
type: nest
|
type: nest
|
||||||
nested-attributes: vfinfo-attrs
|
nested-attributes: vfinfo-list-attrs
|
||||||
-
|
-
|
||||||
name: stats64
|
name: stats64
|
||||||
type: binary
|
type: binary
|
||||||
|
@ -873,6 +1006,8 @@ attribute-sets:
|
||||||
-
|
-
|
||||||
name: ext-mask
|
name: ext-mask
|
||||||
type: u32
|
type: u32
|
||||||
|
enum: rtext-filter
|
||||||
|
enum-as-flags: true
|
||||||
-
|
-
|
||||||
name: promiscuity
|
name: promiscuity
|
||||||
type: u32
|
type: u32
|
||||||
|
@ -1004,9 +1139,107 @@ attribute-sets:
|
||||||
type: nest
|
type: nest
|
||||||
value: 45
|
value: 45
|
||||||
nested-attributes: mctp-attrs
|
nested-attributes: mctp-attrs
|
||||||
|
-
|
||||||
|
name: vfinfo-list-attrs
|
||||||
|
attributes:
|
||||||
|
-
|
||||||
|
name: info
|
||||||
|
type: nest
|
||||||
|
nested-attributes: vfinfo-attrs
|
||||||
|
multi-attr: true
|
||||||
-
|
-
|
||||||
name: vfinfo-attrs
|
name: vfinfo-attrs
|
||||||
attributes: []
|
attributes:
|
||||||
|
-
|
||||||
|
name: mac
|
||||||
|
type: binary
|
||||||
|
struct: ifla-vf-mac
|
||||||
|
-
|
||||||
|
name: vlan
|
||||||
|
type: binary
|
||||||
|
struct: ifla-vf-vlan
|
||||||
|
-
|
||||||
|
name: tx-rate
|
||||||
|
type: binary
|
||||||
|
struct: ifla-vf-tx-rate
|
||||||
|
-
|
||||||
|
name: spoofchk
|
||||||
|
type: binary
|
||||||
|
struct: ifla-vf-spoofchk
|
||||||
|
-
|
||||||
|
name: link-state
|
||||||
|
type: binary
|
||||||
|
struct: ifla-vf-link-state
|
||||||
|
-
|
||||||
|
name: rate
|
||||||
|
type: binary
|
||||||
|
struct: ifla-vf-rate
|
||||||
|
-
|
||||||
|
name: rss-query-en
|
||||||
|
type: binary
|
||||||
|
struct: ifla-vf-rss-query-en
|
||||||
|
-
|
||||||
|
name: stats
|
||||||
|
type: nest
|
||||||
|
nested-attributes: vf-stats-attrs
|
||||||
|
-
|
||||||
|
name: trust
|
||||||
|
type: binary
|
||||||
|
struct: ifla-vf-trust
|
||||||
|
-
|
||||||
|
name: ib-node-guid
|
||||||
|
type: binary
|
||||||
|
struct: ifla-vf-guid
|
||||||
|
-
|
||||||
|
name: ib-port-guid
|
||||||
|
type: binary
|
||||||
|
struct: ifla-vf-guid
|
||||||
|
-
|
||||||
|
name: vlan-list
|
||||||
|
type: nest
|
||||||
|
nested-attributes: vf-vlan-attrs
|
||||||
|
-
|
||||||
|
name: broadcast
|
||||||
|
type: binary
|
||||||
|
-
|
||||||
|
name: vf-stats-attrs
|
||||||
|
attributes:
|
||||||
|
-
|
||||||
|
name: rx-packets
|
||||||
|
type: u64
|
||||||
|
value: 0
|
||||||
|
-
|
||||||
|
name: tx-packets
|
||||||
|
type: u64
|
||||||
|
-
|
||||||
|
name: rx-bytes
|
||||||
|
type: u64
|
||||||
|
-
|
||||||
|
name: tx-bytes
|
||||||
|
type: u64
|
||||||
|
-
|
||||||
|
name: broadcast
|
||||||
|
type: u64
|
||||||
|
-
|
||||||
|
name: multicast
|
||||||
|
type: u64
|
||||||
|
-
|
||||||
|
name: pad
|
||||||
|
type: pad
|
||||||
|
-
|
||||||
|
name: rx-dropped
|
||||||
|
type: u64
|
||||||
|
-
|
||||||
|
name: tx-dropped
|
||||||
|
type: u64
|
||||||
|
-
|
||||||
|
name: vf-vlan-attrs
|
||||||
|
attributes:
|
||||||
|
-
|
||||||
|
name: info
|
||||||
|
type: binary
|
||||||
|
struct: ifla-vf-vlan-info
|
||||||
|
multi-attr: true
|
||||||
-
|
-
|
||||||
name: vf-ports-attrs
|
name: vf-ports-attrs
|
||||||
attributes: []
|
attributes: []
|
||||||
|
|
Loading…
Reference in a new issue