[v2] app/testpmd: retain all original dev conf when config DCB
Checks
Commit Message
From: Huisong Li <lihuisong@huawei.com>
When configuring DCB, testpmd retains the rx_mode/tx_mode configuration in
rte_port->dev_conf. But some configurations, such as the link_speed, were
not saved if they were set before configuring DCB.
Fixes: 1a572499beb6 ("app/testpmd: setup DCB forwarding based on traffic class")
Cc: stable@dpdk.org
Signed-off-by: Huisong Li <lihuisong@huawei.com>
Signed-off-by: Min Hu (Connor) <humin29@huawei.com>
Acked-by: Xiaoyun Li <xiaoyun.li@intel.com>
---
v2:
* fixed commit log.
---
app/test-pmd/testpmd.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
Comments
On 10/11/2021 10:12 AM, Min Hu (Connor) wrote:
> From: Huisong Li <lihuisong@huawei.com>
>
> When configuring DCB, testpmd retains the rx_mode/tx_mode configuration in
> rte_port->dev_conf. But some configurations, such as the link_speed, were
> not saved if they were set before configuring DCB.
>
> Fixes: 1a572499beb6 ("app/testpmd: setup DCB forwarding based on traffic class")
> Cc: stable@dpdk.org
>
> Signed-off-by: Huisong Li <lihuisong@huawei.com>
> Signed-off-by: Min Hu (Connor) <humin29@huawei.com>
> Acked-by: Xiaoyun Li <xiaoyun.li@intel.com>
Applied to dpdk-next-net/main, thanks.
@@ -3729,10 +3729,8 @@ init_port_dcb_config(portid_t pid,
}
rte_port = &ports[pid];
- memset(&port_conf, 0, sizeof(struct rte_eth_conf));
-
- port_conf.rxmode = rte_port->dev_conf.rxmode;
- port_conf.txmode = rte_port->dev_conf.txmode;
+ /* retain the original device configuration. */
+ memcpy(&port_conf, &rte_port->dev_conf, sizeof(struct rte_eth_conf));
/*set configuration of DCB in vt mode and DCB in non-vt mode*/
retval = get_eth_dcb_conf(pid, &port_conf, dcb_mode, num_tcs, pfc_en);