summaryrefslogtreecommitdiffstats
path: root/Documentation/netlink/specs/ovs_datapath.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/netlink/specs/ovs_datapath.yaml')
-rw-r--r--Documentation/netlink/specs/ovs_datapath.yaml163
1 files changed, 163 insertions, 0 deletions
diff --git a/Documentation/netlink/specs/ovs_datapath.yaml b/Documentation/netlink/specs/ovs_datapath.yaml
new file mode 100644
index 0000000000..f709c26c3e
--- /dev/null
+++ b/Documentation/netlink/specs/ovs_datapath.yaml
@@ -0,0 +1,163 @@
+# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
+
+name: ovs_datapath
+version: 2
+protocol: genetlink-legacy
+uapi-header: linux/openvswitch.h
+
+doc:
+ OVS datapath configuration over generic netlink.
+
+definitions:
+ -
+ name: ovs-header
+ type: struct
+ members:
+ -
+ name: dp-ifindex
+ type: u32
+ -
+ name: user-features
+ type: flags
+ name-prefix: ovs-dp-f-
+ entries:
+ -
+ name: unaligned
+ doc: Allow last Netlink attribute to be unaligned
+ -
+ name: vport-pids
+ doc: Allow datapath to associate multiple Netlink PIDs to each vport
+ -
+ name: tc-recirc-sharing
+ doc: Allow tc offload recirc sharing
+ -
+ name: dispatch-upcall-per-cpu
+ doc: Allow per-cpu dispatch of upcalls
+ -
+ name: datapath-stats
+ enum-name: ovs-dp-stats
+ type: struct
+ members:
+ -
+ name: n-hit
+ type: u64
+ -
+ name: n-missed
+ type: u64
+ -
+ name: n-lost
+ type: u64
+ -
+ name: n-flows
+ type: u64
+ -
+ name: megaflow-stats
+ enum-name: ovs-dp-megaflow-stats
+ type: struct
+ members:
+ -
+ name: n-mask-hit
+ type: u64
+ -
+ name: n-masks
+ type: u32
+ -
+ name: padding
+ type: u32
+ -
+ name: n-cache-hit
+ type: u64
+ -
+ name: pad1
+ type: u64
+
+attribute-sets:
+ -
+ name: datapath
+ name-prefix: ovs-dp-attr-
+ enum-name: ovs-datapath-attrs
+ attributes:
+ -
+ name: name
+ type: string
+ -
+ name: upcall-pid
+ doc: upcall pid
+ type: u32
+ -
+ name: stats
+ type: binary
+ struct: datapath-stats
+ -
+ name: megaflow-stats
+ type: binary
+ struct: megaflow-stats
+ -
+ name: user-features
+ type: u32
+ enum: user-features
+ enum-as-flags: true
+ -
+ name: pad
+ type: unused
+ -
+ name: masks-cache-size
+ type: u32
+ -
+ name: per-cpu-pids
+ type: binary
+ sub-type: u32
+ -
+ name: ifindex
+ type: u32
+
+operations:
+ fixed-header: ovs-header
+ name-prefix: ovs-dp-cmd-
+ list:
+ -
+ name: get
+ doc: Get / dump OVS data path configuration and state
+ value: 3
+ attribute-set: datapath
+ do: &dp-get-op
+ request:
+ attributes:
+ - name
+ reply:
+ attributes:
+ - name
+ - upcall-pid
+ - stats
+ - megaflow-stats
+ - user-features
+ - masks-cache-size
+ - per-cpu-pids
+ dump: *dp-get-op
+ -
+ name: new
+ doc: Create new OVS data path
+ value: 1
+ attribute-set: datapath
+ do:
+ request:
+ attributes:
+ - dp-ifindex
+ - name
+ - upcall-pid
+ - user-features
+ -
+ name: del
+ doc: Delete existing OVS data path
+ value: 2
+ attribute-set: datapath
+ do:
+ request:
+ attributes:
+ - dp-ifindex
+ - name
+
+mcast-groups:
+ list:
+ -
+ name: ovs_datapath