From: Igor Romanov Date: Tue, 8 Sep 2020 09:20:22 +0000 (+0100) Subject: net/sfc/base: fix tunnel configuration X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=33f4e56dda2764eb62970a2c83f224fef43456c1;p=dpdk.git net/sfc/base: fix tunnel configuration Tunnel configuration may fail because of insufficient access rights on a virtual function. Ignore the failure if a tunnel configuration with empty UDP ports is requested. Fixes: 17551f6dffcc ("net/sfc/base: add API to control UDP tunnel ports") Cc: stable@dpdk.org Signed-off-by: Igor Romanov Signed-off-by: Andrew Rybchenko --- diff --git a/drivers/net/sfc/base/efx_tunnel.c b/drivers/net/sfc/base/efx_tunnel.c index 3a034412cd..1cc072f0d9 100644 --- a/drivers/net/sfc/base/efx_tunnel.c +++ b/drivers/net/sfc/base/efx_tunnel.c @@ -421,7 +421,7 @@ ef10_tunnel_reconfigure( { efx_tunnel_cfg_t *etcp = &enp->en_tunnel_cfg; efx_rc_t rc; - boolean_t resetting; + boolean_t resetting = B_FALSE; efsys_lock_state_t state; efx_tunnel_cfg_t etc; @@ -446,8 +446,14 @@ ef10_tunnel_reconfigure( */ rc = efx_mcdi_set_tunnel_encap_udp_ports(enp, &etc, B_FALSE, &resetting); - if (rc != 0) - goto fail2; + if (rc != 0) { + /* + * Do not fail if the access is denied when no + * tunnel encap UDP ports are configured. + */ + if (rc != EACCES || etc.etc_udp_entries_num != 0) + goto fail2; + } /* * Although the caller should be able to handle MC reboot,