app/testpmd: verify DCB config during forward config
Currently, the check for doing DCB test is assigned to start_packet_forwarding(), which will be called when run "start" cmd. But fwd_config_setup() is used in many scenarios, such as, "port config all rxq". This patch moves the check from start_packet_forwarding() to fwd_config_setup(). Fixes: 7741e4cf16c0 ("app/testpmd: VMDq and DCB updates") Cc: stable@dpdk.org Signed-off-by: Huisong Li <lihuisong@huawei.com> Signed-off-by: Lijun Ou <oulijun@huawei.com> Acked-by: Xiaoyun Li <xiaoyun.li@intel.com>
This commit is contained in:
parent
cffb3d66a8
commit
43f1f82611
@ -3199,6 +3199,10 @@ icmp_echo_config_setup(void)
|
||||
void
|
||||
fwd_config_setup(void)
|
||||
{
|
||||
struct rte_port *port;
|
||||
portid_t pt_id;
|
||||
unsigned int i;
|
||||
|
||||
cur_fwd_config.fwd_eng = cur_fwd_eng;
|
||||
if (strcmp(cur_fwd_eng->fwd_mode_name, "icmpecho") == 0) {
|
||||
icmp_echo_config_setup();
|
||||
@ -3206,9 +3210,24 @@ fwd_config_setup(void)
|
||||
}
|
||||
|
||||
if ((nb_rxq > 1) && (nb_txq > 1)){
|
||||
if (dcb_config)
|
||||
if (dcb_config) {
|
||||
for (i = 0; i < nb_fwd_ports; i++) {
|
||||
pt_id = fwd_ports_ids[i];
|
||||
port = &ports[pt_id];
|
||||
if (!port->dcb_flag) {
|
||||
printf("In DCB mode, all forwarding ports must "
|
||||
"be configured in this mode.\n");
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (nb_fwd_lcores == 1) {
|
||||
printf("In DCB mode,the nb forwarding cores "
|
||||
"should be larger than 1.\n");
|
||||
return;
|
||||
}
|
||||
|
||||
dcb_fwd_config_setup();
|
||||
else
|
||||
} else
|
||||
rss_fwd_config_setup();
|
||||
}
|
||||
else
|
||||
|
@ -2138,9 +2138,7 @@ start_packet_forwarding(int with_tx_first)
|
||||
{
|
||||
port_fwd_begin_t port_fwd_begin;
|
||||
port_fwd_end_t port_fwd_end;
|
||||
struct rte_port *port;
|
||||
unsigned int i;
|
||||
portid_t pt_id;
|
||||
|
||||
if (strcmp(cur_fwd_eng->fwd_mode_name, "rxonly") == 0 && !nb_rxq)
|
||||
rte_exit(EXIT_FAILURE, "rxq are 0, cannot use rxonly fwd mode\n");
|
||||
@ -2163,23 +2161,6 @@ start_packet_forwarding(int with_tx_first)
|
||||
printf("Packet forwarding already started\n");
|
||||
return;
|
||||
}
|
||||
|
||||
if (dcb_config) {
|
||||
for (i = 0; i < nb_fwd_ports; i++) {
|
||||
pt_id = fwd_ports_ids[i];
|
||||
port = &ports[pt_id];
|
||||
if (!port->dcb_flag) {
|
||||
printf("In DCB mode, all forwarding ports must "
|
||||
"be configured in this mode.\n");
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (nb_fwd_lcores == 1) {
|
||||
printf("In DCB mode,the nb forwarding cores "
|
||||
"should be larger than 1.\n");
|
||||
return;
|
||||
}
|
||||
}
|
||||
test_done = 0;
|
||||
|
||||
fwd_config_setup();
|
||||
|
Loading…
x
Reference in New Issue
Block a user