linux/Documentation/netlink/specs/ovs_datapath.yaml
Jakub Kicinski 209bcb9af8 netlink: specs: ovs: correct enum names in specs
Align the enum-names of OVS with what's actually in the uAPI.
Either correct the names, or mark the enum as empty because
the values are in fact #defines.

Reviewed-by: Donald Hunter <donald.hunter@gmail.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2023-12-15 12:17:16 +00:00

163 lines
3.1 KiB
YAML

# 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-
enum-name:
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:
- name
- upcall-pid
- user-features
-
name: del
doc: Delete existing OVS data path
value: 2
attribute-set: datapath
do:
request:
attributes:
- name
mcast-groups:
list:
-
name: ovs_datapath