On 1/28/2020 11:21 AM, Ferruh Yigit wrote: > On 1/21/2020 11:44 AM, Wei Hu (Xavier) wrote: >> From: "Wei Hu (Xavier)" <xavier.hu...@huawei.com> >> >> Currently, the initial values of the local structure variable named >> rx_tx_onoff_2_lfc_mode and rx_tx_onoff_2_pfc_mode are different in the >> similar part of these two following functions: >> cmd_link_flow_ctrl_set_parsed >> cmd_priority_flow_ctrl_set_parsed >> 1) The code snippset in cmd_link_flow_ctrl_set_parsed function: >> static enum rte_eth_fc_mode rx_tx_onoff_2_lfc_mode[2][2] = { >> {RTE_FC_NONE, RTE_FC_TX_PAUSE}, {RTE_FC_RX_PAUSE, RTE_FC_FULL} >> }; >> >> if (!cmd || cmd == &cmd_link_flow_control_set_rx) >> rx_fc_en = (!strcmp(res->rx_lfc_mode, "on")) ? 1 : 0; >> if (!cmd || cmd == &cmd_link_flow_control_set_tx) >> tx_fc_en = (!strcmp(res->tx_lfc_mode, "on")) ? 1 : 0; >> >> fc_conf.mode = rx_tx_onoff_2_lfc_mode[rx_fc_en][tx_fc_en]; >> <...> >> ret = rte_eth_dev_flow_ctrl_set(res->port_id, &fc_conf); >> <...> >> 2) The code snippset in cmd_priority_flow_ctrl_set_parsed function: >> static enum rte_eth_fc_mode rx_tx_onoff_2_pfc_mode[2][2] = { >> {RTE_FC_NONE, RTE_FC_RX_PAUSE}, {RTE_FC_TX_PAUSE, RTE_FC_FULL} >> }; >> >> rx_fc_enable = (!strncmp(res->rx_pfc_mode, "on",2)) ? 1 : 0; >> tx_fc_enable = (!strncmp(res->tx_pfc_mode, "on",2)) ? 1 : 0; >> pfc_conf.fc.mode = >> rx_tx_onoff_2_pfc_mode[rx_fc_enable][tx_fc_enable]; >> <...> >> ret = rte_eth_dev_priority_flow_ctrl_set(res->port_id, &pfc_conf); >> <...> >> The initial value of rx_tx_onoff_2_pfc_mode is wrong, it should be the >> same as rx_tx_onoff_2_lfc_mode. >> >> Fixes: 9b53e542e9e1 ("app/testpmd: add priority flow control") >> Cc: sta...@dpdk.org >> >> Signed-off-by: Huisong Li <lihuis...@huawei.com> >> Signed-off-by: Wei Hu (Xavier) <xavier.hu...@huawei.com> >> Signed-off-by: Xuan Li <lixua...@hisilicon.com> > > Not tested but looks reasonable from the code, it would be nice if someone can > test it. > > Reviewed-by: Ferruh Yigit <ferruh.yi...@intel.com> >
Applied to dpdk-next-net/master, thanks.