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 <igor.romanov@oktetlabs.ru> Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
This commit is contained in:
parent
cb78cce5e1
commit
33f4e56dda
@ -421,7 +421,7 @@ ef10_tunnel_reconfigure(
|
|||||||
{
|
{
|
||||||
efx_tunnel_cfg_t *etcp = &enp->en_tunnel_cfg;
|
efx_tunnel_cfg_t *etcp = &enp->en_tunnel_cfg;
|
||||||
efx_rc_t rc;
|
efx_rc_t rc;
|
||||||
boolean_t resetting;
|
boolean_t resetting = B_FALSE;
|
||||||
efsys_lock_state_t state;
|
efsys_lock_state_t state;
|
||||||
efx_tunnel_cfg_t etc;
|
efx_tunnel_cfg_t etc;
|
||||||
|
|
||||||
@ -446,8 +446,14 @@ ef10_tunnel_reconfigure(
|
|||||||
*/
|
*/
|
||||||
rc = efx_mcdi_set_tunnel_encap_udp_ports(enp, &etc, B_FALSE,
|
rc = efx_mcdi_set_tunnel_encap_udp_ports(enp, &etc, B_FALSE,
|
||||||
&resetting);
|
&resetting);
|
||||||
if (rc != 0)
|
if (rc != 0) {
|
||||||
goto fail2;
|
/*
|
||||||
|
* 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,
|
* Although the caller should be able to handle MC reboot,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user