net/enic: explicitly disable overlay offload
Reopening vNIC does not automatically disable overlay offload. If it is previously enabled, it remains enabled even when the user restarts DPDK and requests overlay offload to be disabled via devarg disable-overlay=1. So explicitly disable overlay offload when requested. Fixes: 93fb21fdbe23 ("net/enic: enable overlay offload for VXLAN and GENEVE") Cc: stable@dpdk.org Signed-off-by: Hyong Youb Kim <hyonkim@cisco.com> Reviewed-by: John Daley <johndale@cisco.com>
This commit is contained in:
parent
70401fd778
commit
308b514b8e
@ -1652,6 +1652,19 @@ static int enic_dev_init(struct enic *enic)
|
|||||||
vnic_dev_notify_set(enic->vdev, -1); /* No Intr for notify */
|
vnic_dev_notify_set(enic->vdev, -1); /* No Intr for notify */
|
||||||
|
|
||||||
enic->overlay_offload = false;
|
enic->overlay_offload = false;
|
||||||
|
if (enic->disable_overlay && enic->vxlan) {
|
||||||
|
/*
|
||||||
|
* Explicitly disable overlay offload as the setting is
|
||||||
|
* sticky, and resetting vNIC does not disable it.
|
||||||
|
*/
|
||||||
|
if (vnic_dev_overlay_offload_ctrl(enic->vdev,
|
||||||
|
OVERLAY_FEATURE_VXLAN,
|
||||||
|
OVERLAY_OFFLOAD_DISABLE)) {
|
||||||
|
dev_err(enic, "failed to disable overlay offload\n");
|
||||||
|
} else {
|
||||||
|
dev_info(enic, "Overlay offload is disabled\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
if (!enic->disable_overlay && enic->vxlan &&
|
if (!enic->disable_overlay && enic->vxlan &&
|
||||||
/* 'VXLAN feature' enables VXLAN, NVGRE, and GENEVE. */
|
/* 'VXLAN feature' enables VXLAN, NVGRE, and GENEVE. */
|
||||||
vnic_dev_overlay_offload_ctrl(enic->vdev,
|
vnic_dev_overlay_offload_ctrl(enic->vdev,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user