Re: [ovs-dev] [PATCH] net: openvswitch: Check vport name

From: Eelco Chaudron
Date: Mon Apr 15 2024 - 06:04:57 EST




On 13 Apr 2024, at 10:48, jun.gu wrote:

> Check vport name from dev_get_by_name, this can avoid to add and remove
> NIC repeatedly when NIC rename failed at system startup.
>
> Signed-off-by: Jun Gu <jun.gu@xxxxxxxxxxxx>
> ---
> net/openvswitch/vport-netdev.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/net/openvswitch/vport-netdev.c b/net/openvswitch/vport-netdev.c
> index 903537a5da22..de8977d7f329 100644
> --- a/net/openvswitch/vport-netdev.c
> +++ b/net/openvswitch/vport-netdev.c
> @@ -78,7 +78,7 @@ 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) {
> + if (!vport->dev) || strcmp(name, ovs_vport_name(vport)) {

Hi Jun, not sure if I get the point here, as ovs_vport_name() translates into vport->dev->name.

So are we trying to catch the interface rename between the dev_get_by_name(), and the code below? This rename could happen at any other place, so this check does not guarantee anything. Or am I missing something?

> err = -ENODEV;
> goto error_free_vport;
> }
> --
> 2.25.1
>
> _______________________________________________
> dev mailing list
> dev@xxxxxxxxxxxxxxx
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev