X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=app%2Ftest-pmd%2Fconfig.c;h=83bebfecb67c8fb88b3425f8a567e4be307ce320;hb=1eb4050817d4e57523bff836baf572ee7e982ca9;hp=9ccabf910870e75f5cb8fe3cbce7a56aeeedc830;hpb=f56620dddb11be9602e89206a60186cbb2bd1b13;p=dpdk.git diff --git a/app/test-pmd/config.c b/app/test-pmd/config.c index 9ccabf9108..83bebfecb6 100644 --- a/app/test-pmd/config.c +++ b/app/test-pmd/config.c @@ -84,7 +84,6 @@ #include #include #include -#include #include #include #include @@ -261,7 +260,7 @@ void nic_xstats_display(portid_t port_id) { struct rte_eth_xstat *xstats; - int cnt_xstats, idx_xstat, idx_name; + int cnt_xstats, idx_xstat; struct rte_eth_xstat_name *xstats_names; printf("###### NIC extended statistics for port %-2d\n", port_id); @@ -306,13 +305,9 @@ nic_xstats_display(portid_t port_id) /* Display xstats */ for (idx_xstat = 0; idx_xstat < cnt_xstats; idx_xstat++) - for (idx_name = 0; idx_name < cnt_xstats; idx_name++) - if (xstats_names[idx_name].id == xstats[idx_xstat].id) { - printf("%s: %"PRIu64"\n", - xstats_names[idx_name].name, - xstats[idx_xstat].value); - break; - } + printf("%s: %"PRIu64"\n", + xstats_names[idx_xstat].name, + xstats[idx_xstat].value); free(xstats_names); free(xstats); } @@ -1205,14 +1200,9 @@ simple_fwd_config_setup(void) } /** - * For the RSS forwarding test, each core is assigned on every port a transmit - * queue whose index is the index of the core itself. This approach limits the - * maximumm number of processing cores of the RSS test to the maximum number of - * TX queues supported by the devices. - * - * Each core is assigned a single stream, each stream being composed of - * a RX queue to poll on a RX port for input messages, associated with - * a TX queue of a TX port where to send forwarded packets. + * For the RSS forwarding test all streams distributed over lcores. Each stream + * being composed of a RX queue to poll on a RX port for input messages, + * associated with a TX queue of a TX port where to send forwarded packets. * All packets received on the RX queue of index "RxQj" of the RX port "RxPi" * are sent on the TX queue "TxQl" of the TX port "TxPk" according to the two * following rules: @@ -1226,7 +1216,7 @@ rss_fwd_config_setup(void) portid_t txp; queueid_t rxq; queueid_t nb_q; - lcoreid_t lc_id; + streamid_t sm_id; nb_q = nb_rxq; if (nb_q > nb_txq) @@ -1236,15 +1226,19 @@ rss_fwd_config_setup(void) cur_fwd_config.nb_fwd_streams = (streamid_t) (nb_q * cur_fwd_config.nb_fwd_ports); + if (cur_fwd_config.nb_fwd_streams < cur_fwd_config.nb_fwd_lcores) + cur_fwd_config.nb_fwd_lcores = + (lcoreid_t)cur_fwd_config.nb_fwd_streams; + /* reinitialize forwarding streams */ init_fwd_streams(); setup_fwd_config_of_each_lcore(&cur_fwd_config); rxp = 0; rxq = 0; - for (lc_id = 0; lc_id < cur_fwd_config.nb_fwd_streams; lc_id++) { + for (sm_id = 0; sm_id < cur_fwd_config.nb_fwd_streams; sm_id++) { struct fwd_stream *fs; - fs = fwd_streams[lc_id]; + fs = fwd_streams[sm_id]; if ((rxp & 0x1) == 0) txp = (portid_t) (rxp + 1);