app/testpmd: fix VLAN configuration on failure

When failing to configure VLAN offloads after the port was started, there
is no need to update the port configuration. Currently, when user
configure an unsupported VLAN offloads and fails, and then restart the
port, it will fails since the configuration has been refreshed.

This patch makes the function return directly instead of refreshing the
configuration when execution fails.

Fixes: 384161e006 ("app/testpmd: adjust on the fly VLAN configuration")
Cc: stable@dpdk.org

Signed-off-by: Chengchang Tang <tangchengchang@huawei.com>
Signed-off-by: Wei Hu (Xavier) <xavier.huwei@huawei.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
This commit is contained in:
Chengchang Tang 2020-09-25 20:47:15 +08:00 committed by Ferruh Yigit
parent b428e71775
commit 57d4198a0b

View File

@ -3509,9 +3509,11 @@ vlan_extend_set(portid_t port_id, int on)
}
diag = rte_eth_dev_set_vlan_offload(port_id, vlan_offload);
if (diag < 0)
if (diag < 0) {
printf("rx_vlan_extend_set(port_pi=%d, on=%d) failed "
"diag=%d\n", port_id, on, diag);
return;
}
ports[port_id].dev_conf.rxmode.offloads = port_rx_offloads;
}
@ -3536,9 +3538,11 @@ rx_vlan_strip_set(portid_t port_id, int on)
}
diag = rte_eth_dev_set_vlan_offload(port_id, vlan_offload);
if (diag < 0)
if (diag < 0) {
printf("rx_vlan_strip_set(port_pi=%d, on=%d) failed "
"diag=%d\n", port_id, on, diag);
return;
}
ports[port_id].dev_conf.rxmode.offloads = port_rx_offloads;
}
@ -3577,9 +3581,11 @@ rx_vlan_filter_set(portid_t port_id, int on)
}
diag = rte_eth_dev_set_vlan_offload(port_id, vlan_offload);
if (diag < 0)
if (diag < 0) {
printf("rx_vlan_filter_set(port_pi=%d, on=%d) failed "
"diag=%d\n", port_id, on, diag);
return;
}
ports[port_id].dev_conf.rxmode.offloads = port_rx_offloads;
}
@ -3604,9 +3610,11 @@ rx_vlan_qinq_strip_set(portid_t port_id, int on)
}
diag = rte_eth_dev_set_vlan_offload(port_id, vlan_offload);
if (diag < 0)
if (diag < 0) {
printf("%s(port_pi=%d, on=%d) failed "
"diag=%d\n", __func__, port_id, on, diag);
return;
}
ports[port_id].dev_conf.rxmode.offloads = port_rx_offloads;
}