Family devlink netlink specification¶
Contents
Operations¶
get¶
Get devlink instances.
- attribute-set
devlink
- dont-validate
[‘strict’, ‘dump’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name]
- reply
- attributes
[
bus-name,dev-name,reload-failed,dev-stats]
- dump
- reply
- attributes
[
bus-name,dev-name,reload-failed,dev-stats]
port-get¶
Get devlink port instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index]
- reply
- attributes
[
bus-name,dev-name,port-index]
- dump
- request
- attributes
[
bus-name,dev-name]
- reply
- attributes
[
bus-name,dev-name,port-index]
port-set¶
Set devlink port instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index,port-type,port-function]
port-new¶
Create devlink port instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index,port-flavour,port-pci-pf-number,port-pci-sf-number,port-controller-number]
- reply
- attributes
[
bus-name,dev-name,port-index]
port-del¶
Delete devlink port instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index]
port-split¶
Split devlink port instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index,port-split-count]
port-unsplit¶
Unplit devlink port instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index]
sb-get¶
Get shared buffer instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,sb-index]
- reply
- attributes
[
bus-name,dev-name,sb-index]
- dump
- request
- attributes
[
bus-name,dev-name]
- reply
- attributes
[
bus-name,dev-name,sb-index]
sb-pool-get¶
Get shared buffer pool instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,sb-index,sb-pool-index]
- reply
- attributes
[
bus-name,dev-name,sb-index,sb-pool-index]
- dump
- request
- attributes
[
bus-name,dev-name]
- reply
- attributes
[
bus-name,dev-name,sb-index,sb-pool-index]
sb-pool-set¶
Set shared buffer pool instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,sb-index,sb-pool-index,sb-pool-threshold-type,sb-pool-size]
sb-port-pool-get¶
Get shared buffer port-pool combinations and threshold.
- attribute-set
devlink
- dont-validate
[‘strict’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index,sb-index,sb-pool-index]
- reply
- attributes
[
bus-name,dev-name,port-index,sb-index,sb-pool-index]
- dump
- request
- attributes
[
bus-name,dev-name]
- reply
- attributes
[
bus-name,dev-name,port-index,sb-index,sb-pool-index]
sb-port-pool-set¶
Set shared buffer port-pool combinations and threshold.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index,sb-index,sb-pool-index,sb-threshold]
sb-tc-pool-bind-get¶
Get shared buffer port-TC to pool bindings and threshold.
- attribute-set
devlink
- dont-validate
[‘strict’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index,sb-index,sb-pool-type,sb-tc-index]
- reply
- attributes
[
bus-name,dev-name,port-index,sb-index,sb-pool-type,sb-tc-index]
- dump
- request
- attributes
[
bus-name,dev-name]
- reply
- attributes
[
bus-name,dev-name,port-index,sb-index,sb-pool-type,sb-tc-index]
sb-tc-pool-bind-set¶
Set shared buffer port-TC to pool bindings and threshold.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index,sb-index,sb-pool-index,sb-pool-type,sb-tc-index,sb-threshold]
sb-occ-snapshot¶
Take occupancy snapshot of shared buffer.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,sb-index]
sb-occ-max-clear¶
Clear occupancy watermarks of shared buffer.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,sb-index]
eswitch-get¶
Get eswitch attributes.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name]
- reply
- attributes
[
bus-name,dev-name,eswitch-mode,eswitch-inline-mode,eswitch-encap-mode]
eswitch-set¶
Set eswitch attributes.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,eswitch-mode,eswitch-inline-mode,eswitch-encap-mode]
dpipe-table-get¶
Get dpipe table attributes.
- attribute-set
devlink
- dont-validate
[‘strict’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,dpipe-table-name]
- reply
- attributes
[
bus-name,dev-name,dpipe-tables]
dpipe-entries-get¶
Get dpipe entries attributes.
- attribute-set
devlink
- dont-validate
[‘strict’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,dpipe-table-name]
- reply
- attributes
[
bus-name,dev-name,dpipe-entries]
dpipe-headers-get¶
Get dpipe headers attributes.
- attribute-set
devlink
- dont-validate
[‘strict’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name]
- reply
- attributes
[
bus-name,dev-name,dpipe-headers]
dpipe-table-counters-set¶
Set dpipe counter attributes.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,dpipe-table-name,dpipe-table-counters-enabled]
resource-set¶
Set resource attributes.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,resource-id,resource-size]
resource-dump¶
Get resource attributes.
- attribute-set
devlink
- dont-validate
[‘strict’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name]
- reply
- attributes
[
bus-name,dev-name,resource-list]
reload¶
Reload devlink.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,reload-action,reload-limits,netns-pid,netns-fd,netns-id]
- reply
- attributes
[
bus-name,dev-name,reload-actions-performed]
param-get¶
Get param instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,param-name]
- reply
- attributes
[
bus-name,dev-name,param-name]
- dump
- request
- attributes
[
bus-name,dev-name]
- reply
- attributes
[
bus-name,dev-name,param-name]
param-set¶
Set param instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,param-name,param-type,param-value-cmode]
region-get¶
Get region instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index,region-name]
- reply
- attributes
[
bus-name,dev-name,port-index,region-name]
- dump
- request
- attributes
[
bus-name,dev-name]
- reply
- attributes
[
bus-name,dev-name,port-index,region-name]
region-new¶
Create region snapshot.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index,region-name,region-snapshot-id]
- reply
- attributes
[
bus-name,dev-name,port-index,region-name,region-snapshot-id]
region-del¶
Delete region snapshot.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index,region-name,region-snapshot-id]
region-read¶
Read region data.
- attribute-set
devlink
- dont-validate
[‘dump-strict’]
- flags
[‘admin-perm’]
- dump
- request
- attributes
[
bus-name,dev-name,port-index,region-name,region-snapshot-id,region-direct,region-chunk-addr,region-chunk-len]
- reply
- attributes
[
bus-name,dev-name,port-index,region-name]
port-param-get¶
Get port param instances.
- attribute-set
devlink
- dont-validate
[‘strict’, ‘dump-strict’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index]
- reply
- attributes
[
bus-name,dev-name,port-index]
- dump
- reply
- attributes
[
bus-name,dev-name,port-index]
port-param-set¶
Set port param instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index]
info-get¶
Get device information, like driver name, hardware and firmware versions etc.
- attribute-set
devlink
- dont-validate
[‘strict’, ‘dump’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name]
- reply
- attributes
[
bus-name,dev-name,info-driver-name,info-serial-number,info-version-fixed,info-version-running,info-version-stored]
- dump
- reply
- attributes
[
bus-name,dev-name,info-driver-name,info-serial-number,info-version-fixed,info-version-running,info-version-stored]
health-reporter-get¶
Get health reporter instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index,health-reporter-name]
- reply
- attributes
[
bus-name,dev-name,port-index,health-reporter-name]
- dump
- request
- attributes
[
bus-name,dev-name,port-index]
- reply
- attributes
[
bus-name,dev-name,port-index,health-reporter-name]
health-reporter-set¶
Set health reporter instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index,health-reporter-name,health-reporter-graceful-period,health-reporter-auto-recover,health-reporter-auto-dump]
health-reporter-recover¶
Recover health reporter instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index,health-reporter-name]
health-reporter-diagnose¶
Diagnose health reporter instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index,health-reporter-name]
health-reporter-dump-get¶
Dump health reporter instances.
- attribute-set
devlink
- dont-validate
[‘dump-strict’]
- flags
[‘admin-perm’]
- dump
- request
- attributes
[
bus-name,dev-name,port-index,health-reporter-name]
- reply
- attributes
[
fmsg]
health-reporter-dump-clear¶
Clear dump of health reporter instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index,health-reporter-name]
flash-update¶
Flash update devlink instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,flash-update-file-name,flash-update-component,flash-update-overwrite-mask]
trap-get¶
Get trap instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,trap-name]
- reply
- attributes
[
bus-name,dev-name,trap-name]
- dump
- request
- attributes
[
bus-name,dev-name]
- reply
- attributes
[
bus-name,dev-name,trap-name]
trap-set¶
Set trap instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,trap-name,trap-action]
trap-group-get¶
Get trap group instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,trap-group-name]
- reply
- attributes
[
bus-name,dev-name,trap-group-name]
- dump
- request
- attributes
[
bus-name,dev-name]
- reply
- attributes
[
bus-name,dev-name,trap-group-name]
trap-group-set¶
Set trap group instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,trap-group-name,trap-action,trap-policer-id]
trap-policer-get¶
Get trap policer instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,trap-policer-id]
- reply
- attributes
[
bus-name,dev-name,trap-policer-id]
- dump
- request
- attributes
[
bus-name,dev-name]
- reply
- attributes
[
bus-name,dev-name,trap-policer-id]
trap-policer-set¶
Get trap policer instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,trap-policer-id,trap-policer-rate,trap-policer-burst]
health-reporter-test¶
Test health reporter instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index,health-reporter-name]
rate-get¶
Get rate instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,port-index,rate-node-name]
- reply
- attributes
[
bus-name,dev-name,port-index,rate-node-name]
- dump
- request
- attributes
[
bus-name,dev-name]
- reply
- attributes
[
bus-name,dev-name,port-index,rate-node-name]
rate-set¶
Set rate instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,rate-node-name,rate-tx-share,rate-tx-max,rate-tx-priority,rate-tx-weight,rate-parent-node-name]
rate-new¶
Create rate instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,rate-node-name,rate-tx-share,rate-tx-max,rate-tx-priority,rate-tx-weight,rate-parent-node-name]
rate-del¶
Delete rate instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,rate-node-name]
linecard-get¶
Get line card instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,linecard-index]
- reply
- attributes
[
bus-name,dev-name,linecard-index]
- dump
- request
- attributes
[
bus-name,dev-name]
- reply
- attributes
[
bus-name,dev-name,linecard-index]
linecard-set¶
Set line card instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,linecard-index,linecard-type]
selftests-get¶
Get device selftest instances.
- attribute-set
devlink
- dont-validate
[‘strict’, ‘dump’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name]
- reply
- attributes
[
bus-name,dev-name]
- dump
- reply
- attributes
[
bus-name,dev-name]
selftests-run¶
Run device selftest instances.
- attribute-set
devlink
- dont-validate
[‘strict’]
- flags
[‘admin-perm’]
- do
pre
post
- request
- attributes
[
bus-name,dev-name,selftests]
notify-filter-set¶
Set notification messages socket filter.
- attribute-set
devlink
- do
- request
- attributes
[
bus-name,dev-name,port-index]
Definitions¶
sb-pool-type¶
- type
enum
- entries
- ingress
- egress
port-flavour¶
- type
enum
- entries
- physical
- cpu
- dsa
- pci_pf
- pci_vf
- virtual
- unused
- pci_sf
port-fn-state¶
- type
enum
- entries
- inactive
- active
port-fn-opstate¶
- type
enum
- entries
- detached
- attached
port-fn-attr-cap¶
- type
enum
- entries
- roce-bit
- migratable-bit
- ipsec-crypto-bit
- ipsec-packet-bit
sb-threshold-type¶
- type
enum
- entries
- static
- dynamic
eswitch-mode¶
- type
enum
- entries
- legacy
- switchdev
eswitch-inline-mode¶
- type
enum
- entries
- none
- link
- network
- transport
eswitch-encap-mode¶
- type
enum
- entries
- none
- basic
dpipe-header-id¶
- type
enum
- entries
- ethernet
- ipv4
- ipv6
dpipe-match-type¶
- type
enum
- entries
- field-exact
dpipe-action-type¶
- type
enum
- entries
- field-modify
dpipe-field-mapping-type¶
- type
enum
- entries
- none
- ifindex
resource-unit¶
- type
enum
- entries
- entry
reload-action¶
- type
enum
- entries
- driver-reinit
- fw-activate
param-cmode¶
- type
enum
- entries
- runtime
- driverinit
- permanent
flash-overwrite¶
- type
enum
- entries
- settings-bit
- identifiers-bit
trap-action¶
- type
enum
- entries
- drop
- trap
- mirror
Attribute sets¶
devlink¶
bus-name (string)¶
- value
1
port-type (u16)¶
- enum
port-type
sb-pool-type (u8)¶
- enum
sb-pool-type
sb-pool-threshold-type (u8)¶
- enum
sb-threshold-type
eswitch-mode (u16)¶
- enum
eswitch-mode
eswitch-inline-mode (u8)¶
- enum
eswitch-inline-mode
dpipe-tables (nest)¶
- nested-attributes
dl-dpipe-tables
dpipe-table (nest)¶
- multi-attr
True
- nested-attributes
dl-dpipe-table
dpipe-table-matches (nest)¶
- nested-attributes
dl-dpipe-table-matches
dpipe-table-actions (nest)¶
- nested-attributes
dl-dpipe-table-actions
dpipe-entries (nest)¶
- nested-attributes
dl-dpipe-entries
dpipe-entry (nest)¶
- multi-attr
True
- nested-attributes
dl-dpipe-entry
dpipe-entry-match-values (nest)¶
- nested-attributes
dl-dpipe-entry-match-values
dpipe-entry-action-values (nest)¶
- nested-attributes
dl-dpipe-entry-action-values
dpipe-match (nest)¶
- multi-attr
True
- nested-attributes
dl-dpipe-match
dpipe-match-value (nest)¶
- multi-attr
True
- nested-attributes
dl-dpipe-match-value
dpipe-match-type (u32)¶
- enum
dpipe-match-type
dpipe-action (nest)¶
- multi-attr
True
- nested-attributes
dl-dpipe-action
dpipe-action-value (nest)¶
- multi-attr
True
- nested-attributes
dl-dpipe-action-value
dpipe-action-type (u32)¶
- enum
dpipe-action-type
dpipe-headers (nest)¶
- nested-attributes
dl-dpipe-headers
dpipe-header (nest)¶
- multi-attr
True
- nested-attributes
dl-dpipe-header
dpipe-header-id (u32)¶
- enum
dpipe-header-id
dpipe-header-fields (nest)¶
- nested-attributes
dl-dpipe-header-fields
dpipe-field (nest)¶
- multi-attr
True
- nested-attributes
dl-dpipe-field
dpipe-field-mapping-type (u32)¶
- enum
dpipe-field-mapping-type
eswitch-encap-mode (u8)¶
- enum
eswitch-encap-mode
resource-list (nest)¶
- nested-attributes
dl-resource-list
resource (nest)¶
- multi-attr
True
- nested-attributes
dl-resource
resource-unit (u8)¶
- enum
resource-unit
port-flavour (u16)¶
- enum
port-flavour
param (nest)¶
- nested-attributes
dl-param
param-value-cmode (u8)¶
- enum
param-cmode
- value
87
region-snapshots (nest)¶
- nested-attributes
dl-region-snapshots
region-snapshot (nest)¶
- nested-attributes
dl-region-snapshot
region-chunks (nest)¶
- nested-attributes
dl-region-chunks
region-chunk (nest)¶
- nested-attributes
dl-region-chunk
info-version-fixed (nest)¶
- multi-attr
True
- nested-attributes
dl-info-version
info-version-running (nest)¶
- multi-attr
True
- nested-attributes
dl-info-version
info-version-stored (nest)¶
- multi-attr
True
- nested-attributes
dl-info-version
fmsg (nest)¶
- nested-attributes
dl-fmsg
health-reporter (nest)¶
- value
114
- nested-attributes
dl-health-reporter
stats (nest)¶
- nested-attributes
dl-attr-stats
trap-action (u8)¶
- enum
trap-action
trap-type (u8)¶
- enum
trap-type
trap-metadata (nest)¶
- nested-attributes
dl-trap-metadata
port-function (nest)¶
- nested-attributes
dl-port-function
flash-update-overwrite-mask (bitfield32)¶
- enum
flash-overwrite
- enum-as-flags
True
reload-action (u8)¶
- enum
reload-action
reload-actions-performed (bitfield32)¶
- enum
reload-action
- enum-as-flags
True
reload-limits (bitfield32)¶
- enum
reload-action
- enum-as-flags
True
dev-stats (nest)¶
- nested-attributes
dl-dev-stats
reload-stats (nest)¶
- nested-attributes
dl-reload-stats
reload-stats-entry (nest)¶
- multi-attr
True
- nested-attributes
dl-reload-stats-entry
remote-reload-stats (nest)¶
- nested-attributes
dl-reload-stats
reload-action-info (nest)¶
- multi-attr
True
- nested-attributes
dl-reload-act-info
reload-action-stats (nest)¶
- multi-attr
True
- nested-attributes
dl-reload-act-stats
rate-type (u16)¶
- enum
rate-type
linecard-supported-types (nest)¶
- nested-attributes
dl-linecard-supported-types
selftests (nest)¶
- value
176
- nested-attributes
dl-selftest-id
dl-port-function¶
hw-addr (binary)¶
- name-prefix
devlink-port-function-attr-
- value
1
state (u8)¶
- enum
port-fn-state
opstate (u8)¶
- enum
port-fn-opstate
caps (bitfield32)¶
- enum
port-fn-attr-cap
- enum-as-flags
True