Both families register a SET command that the spec never described, so a YNL client could not modify an existing datapath or vport. The kernel handlers take CAP_NET_ADMIN through GENL_UNS_ADMIN_PERM. Datapath set changes user features, the masks cache size and the per-cpu upcall pids. Vport set changes the upcall pid; the kernel rejects a type change and rejects options. Signed-off-by: Minxi Hou --- Documentation/netlink/specs/ovs_datapath.yaml | 18 ++++++++++++++++++ Documentation/netlink/specs/ovs_vport.yaml | 15 +++++++++++++++ 2 files changed, 33 insertions(+) diff --git a/Documentation/netlink/specs/ovs_datapath.yaml b/Documentation/netlink/specs/ovs_datapath.yaml index f7b3671991e6..9c33d6a2f05d 100644 --- a/Documentation/netlink/specs/ovs_datapath.yaml +++ b/Documentation/netlink/specs/ovs_datapath.yaml @@ -138,6 +138,7 @@ operations: doc: Create new OVS data path value: 1 attribute-set: datapath + flags: [uns-admin-perm] do: request: attributes: @@ -149,10 +150,27 @@ operations: doc: Delete existing OVS data path value: 2 attribute-set: datapath + flags: [uns-admin-perm] do: request: attributes: - name + - + name: set + doc: | + Modify an existing OVS data path. The kernel treats a missing + user-features attribute as zero and clears the previously set + features. + value: 4 + attribute-set: datapath + flags: [uns-admin-perm] + do: + request: + attributes: + - name + - user-features + - masks-cache-size + - per-cpu-pids mcast-groups: list: diff --git a/Documentation/netlink/specs/ovs_vport.yaml b/Documentation/netlink/specs/ovs_vport.yaml index fa975f8821b6..63a0a41a1199 100644 --- a/Documentation/netlink/specs/ovs_vport.yaml +++ b/Documentation/netlink/specs/ovs_vport.yaml @@ -128,6 +128,7 @@ operations: name: new doc: Create a new OVS vport attribute-set: vport + flags: [uns-admin-perm] do: request: attributes: @@ -140,6 +141,7 @@ operations: name: del doc: Delete existing OVS vport from a data path attribute-set: vport + flags: [uns-admin-perm] do: request: attributes: @@ -165,6 +167,19 @@ operations: - netnsid - upcall-stats dump: *vport-get-op + - + name: set + doc: Modify an existing OVS vport + value: 4 + attribute-set: vport + flags: [uns-admin-perm] + do: + request: + attributes: + - name + - type + - options + - upcall-pid mcast-groups: list: -- 2.55.0