# 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