[ovs-dev] [PATCH] dpif-netdev: Fail port addition if reconfiguration failed.

Ilya Maximets i.maximets at samsung.com
Mon Aug 26 14:12:11 UTC 2019


On 23.07.2019 14:20, Ilya Maximets wrote:
> If the port was destroyed during the initial reconfiguration, we should
> report an error to the upper layers. Otherwise, successful addition of
> the port will be logged and upper layers will continue to configure
> this port. For example, the 'dpif' layer will try to initilaize flow
> API for this device.
> 
> Fix that by checking for port existence after reconfiguration. We can't
> get the real error code here, so let's assume EINVAL. 'ovs-vsctl' will
> tell the user to check the logs for a real reason anyway.
> 
> Fixes: e32971b8ddb4 ("dpif-netdev: Centralized threads and queues handling code.")
> Signed-off-by: Ilya Maximets <i.maximets at samsung.com>
> ---

Any thoughts on this?

Best regards, Ilya Maximets.


>  lib/dpif-netdev.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/lib/dpif-netdev.c b/lib/dpif-netdev.c
> index d0a1c58ad..75d85b2fd 100644
> --- a/lib/dpif-netdev.c
> +++ b/lib/dpif-netdev.c
> @@ -1862,7 +1862,8 @@ do_add_port(struct dp_netdev *dp, const char *devname, const char *type,
>  
>      reconfigure_datapath(dp);
>  
> -    return 0;
> +    /* Check that port was successfully configured. */
> +    return dp_netdev_lookup_port(dp, port_no) ? 0 : EINVAL;
>  }
>  
>  static int
> 


More information about the dev mailing list