Re: [ovs-dev] [PATCH net-next v4] net: openvswitch: Check vport netdev name
My mistake, I'm wondering that I need to submit a new patch or a v5 version based on this patch? 在 4/23/24 08:38, Jakub Kicinski 写道: On Fri, 19 Apr 2024 14:14:25 +0800 Jun Gu wrote: vport->dev = dev_get_by_name(ovs_dp_get_net(vport->dp), name); - if (!vport->dev) { + /* Ensure that the device exists and that the provided +* name is not one of its aliases. +*/ + if (!vport->dev || strcmp(name, ovs_vport_name(vport))) { err = -ENODEV; goto error_free_vport; } Sorry I applied this before I realised that it's buggy. dev_get_by_name() will give you a reference on the device. You must free it, so the error handling is different. Please follow up ASAP to fix that. ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [PATCH net-next v4] net: openvswitch: Check vport netdev name
Hello: This patch was applied to netdev/net-next.git (main) by Jakub Kicinski : On Fri, 19 Apr 2024 14:14:25 +0800 you wrote: > Ensure that the provided netdev name is not one of its aliases to > prevent unnecessary creation and destruction of the vport by > ovs-vswitchd. > > Signed-off-by: Jun Gu > Acked-by: Eelco Chaudron > > [...] Here is the summary with links: - [net-next,v4] net: openvswitch: Check vport netdev name https://git.kernel.org/netdev/net-next/c/2540088b836f You are awesome, thank you! -- Deet-doot-dot, I am a bot. https://korg.docs.kernel.org/patchwork/pwbot.html ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [PATCH net-next v4] net: openvswitch: Check vport netdev name
On Fri, 19 Apr 2024 14:14:25 +0800 Jun Gu wrote: > vport->dev = dev_get_by_name(ovs_dp_get_net(vport->dp), name); > - if (!vport->dev) { > + /* Ensure that the device exists and that the provided > + * name is not one of its aliases. > + */ > + if (!vport->dev || strcmp(name, ovs_vport_name(vport))) { > err = -ENODEV; > goto error_free_vport; > } Sorry I applied this before I realised that it's buggy. dev_get_by_name() will give you a reference on the device. You must free it, so the error handling is different. Please follow up ASAP to fix that. ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [PATCH net-next v4] net: openvswitch: Check vport netdev name
On Fri, 19 Apr 2024 12:31:33 +0800 Jun Gu wrote: > From: "jun.gu" > > Ensure that the provided netdev name is not one of its aliases to > prevent unnecessary creation and destruction of the vport by > ovs-vswitchd. > > Signed-off-by: jun.gu > Acked-by: Eelco Chaudron I said: When you repost, start a new thread, do not post new version in-reply-to. If you don't understand what something means - ask :| Now try again. -- pw-bot: cr ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
[ovs-dev] [PATCH net-next v4] net: openvswitch: Check vport netdev name
Ensure that the provided netdev name is not one of its aliases to prevent unnecessary creation and destruction of the vport by ovs-vswitchd. Signed-off-by: Jun Gu Acked-by: Eelco Chaudron --- net/openvswitch/vport-netdev.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/net/openvswitch/vport-netdev.c b/net/openvswitch/vport-netdev.c index 903537a5da22..618edc346c0f 100644 --- a/net/openvswitch/vport-netdev.c +++ b/net/openvswitch/vport-netdev.c @@ -78,7 +78,10 @@ struct vport *ovs_netdev_link(struct vport *vport, const char *name) int err; vport->dev = dev_get_by_name(ovs_dp_get_net(vport->dp), name); - if (!vport->dev) { + /* Ensure that the device exists and that the provided +* name is not one of its aliases. +*/ + if (!vport->dev || strcmp(name, ovs_vport_name(vport))) { err = -ENODEV; goto error_free_vport; } -- 2.25.1 ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
[ovs-dev] [PATCH net-next v4] net: openvswitch: Check vport netdev name
From: "jun.gu" Ensure that the provided netdev name is not one of its aliases to prevent unnecessary creation and destruction of the vport by ovs-vswitchd. Signed-off-by: jun.gu Acked-by: Eelco Chaudron --- net/openvswitch/vport-netdev.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/net/openvswitch/vport-netdev.c b/net/openvswitch/vport-netdev.c index 903537a5da22..618edc346c0f 100644 --- a/net/openvswitch/vport-netdev.c +++ b/net/openvswitch/vport-netdev.c @@ -78,7 +78,10 @@ struct vport *ovs_netdev_link(struct vport *vport, const char *name) int err; vport->dev = dev_get_by_name(ovs_dp_get_net(vport->dp), name); - if (!vport->dev) { + /* Ensure that the device exists and that the provided +* name is not one of its aliases. +*/ + if (!vport->dev || strcmp(name, ovs_vport_name(vport))) { err = -ENODEV; goto error_free_vport; } -- 2.25.1 ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [PATCH net-next v4] net: openvswitch: Check vport netdev name
On Thu, 18 Apr 2024 10:32:42 +0800 jun.gu wrote: > + if ((!vport->dev) || strcmp(name, ovs_vport_name(vport))) { Please drop the unnecessary brackets. When you repost, start a new thread, do not post new version in-reply-to. -- pw-bot: cr ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
[ovs-dev] [PATCH net-next v4] net: openvswitch: Check vport netdev name
Ensure that the provided netdev name is not one of its aliases to prevent unnecessary creation and destruction of the vport by ovs-vswitchd. Signed-off-by: Jun Gu Acked-by: Eelco Chaudron --- net/openvswitch/vport-netdev.c | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/net/openvswitch/vport-netdev.c b/net/openvswitch/vport-netdev.c index 903537a5da22..7003e76b8172 100644 --- a/net/openvswitch/vport-netdev.c +++ b/net/openvswitch/vport-netdev.c @@ -78,7 +78,10 @@ struct vport *ovs_netdev_link(struct vport *vport, const char *name) int err; vport->dev = dev_get_by_name(ovs_dp_get_net(vport->dp), name); - if (!vport->dev) { + /* Ensure that the device exists and that the provided +* name is not one of its aliases. +*/ + if ((!vport->dev) || strcmp(name, ovs_vport_name(vport))) { err = -ENODEV; goto error_free_vport; } -- 2.25.1 ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev