|
Revision tags: v22.03, v22.03-rc4, v22.03-rc3, v22.03-rc2, v22.03-rc1 |
|
| #
7be78d02 |
| 29-Nov-2021 |
Josh Soref <[email protected]> |
fix spelling in comments and strings
The tool comes from https://github.com/jsoref
Signed-off-by: Josh Soref <[email protected]> Signed-off-by: Thomas Monjalon <[email protected]>
|
|
Revision tags: v21.11, v21.11-rc4, v21.11-rc3 |
|
| #
1f8cc1a3 |
| 17-Nov-2021 |
Joyce Kong <[email protected]> |
app: remove unneeded atomic header include
Remove the unnecessary rte_atomic.h included in app modules.
Signed-off-by: Joyce Kong <[email protected]> Reviewed-by: Ruifeng Wang <[email protected]
app: remove unneeded atomic header include
Remove the unnecessary rte_atomic.h included in app modules.
Signed-off-by: Joyce Kong <[email protected]> Reviewed-by: Ruifeng Wang <[email protected]>
show more ...
|
| #
5388be6e |
| 15-Nov-2021 |
Haiyue Wang <[email protected]> |
app/testpmd: avoid process ID out of range
The 'proc_id' should be less than 'num_procs', if not, exit the testpmd and show the error message.
Fixes: a550baf24af9 ("app/testpmd: support multi-proce
app/testpmd: avoid process ID out of range
The 'proc_id' should be less than 'num_procs', if not, exit the testpmd and show the error message.
Fixes: a550baf24af9 ("app/testpmd: support multi-process")
Signed-off-by: Haiyue Wang <[email protected]> Acked-by: Min Hu (Connor) <[email protected]> Reviewed-by: Ferruh Yigit <[email protected]>
show more ...
|
|
Revision tags: v21.11-rc2, v21.11-rc1 |
|
| #
694d61b8 |
| 25-Oct-2021 |
Huisong Li <[email protected]> |
app/testpmd: remove unused header file
This patch removes unused "rte_eth_bond.h" header file.
Fixes: 2950a769315e ("bond: testpmd support") Cc: [email protected]
Signed-off-by: Huisong Li <lihuison
app/testpmd: remove unused header file
This patch removes unused "rte_eth_bond.h" header file.
Fixes: 2950a769315e ("bond: testpmd support") Cc: [email protected]
Signed-off-by: Huisong Li <[email protected]> Signed-off-by: Min Hu (Connor) <[email protected]> Reviewed-by: Ferruh Yigit <[email protected]>
show more ...
|
| #
295968d1 |
| 22-Oct-2021 |
Ferruh Yigit <[email protected]> |
ethdev: add namespace
Add 'RTE_ETH' namespace to all enums & macros in a backward compatible way. The macros for backward compatibility can be removed in next LTS. Also updated some struct names to
ethdev: add namespace
Add 'RTE_ETH' namespace to all enums & macros in a backward compatible way. The macros for backward compatibility can be removed in next LTS. Also updated some struct names to have 'rte_eth' prefix.
All internal components switched to using new names.
Syntax fixed on lines that this patch touches.
Signed-off-by: Ferruh Yigit <[email protected]> Acked-by: Tyler Retzlaff <[email protected]> Acked-by: Andrew Rybchenko <[email protected]> Acked-by: Ajit Khaparde <[email protected]> Acked-by: Jerin Jacob <[email protected]> Acked-by: Wisam Jaddo <[email protected]> Acked-by: Rosen Xu <[email protected]> Acked-by: Chenbo Xia <[email protected]> Acked-by: Hemant Agrawal <[email protected]> Acked-by: Somnath Kotur <[email protected]>
show more ...
|
| #
f4d178c1 |
| 21-Oct-2021 |
Xueming Li <[email protected]> |
app/testpmd: add parameter for shared Rx queue
Adds "--rxq-share=X" parameter to enable shared RxQ.
Rx queue is shared if device supports, otherwise fallback to standard RxQ.
Shared Rx queues are
app/testpmd: add parameter for shared Rx queue
Adds "--rxq-share=X" parameter to enable shared RxQ.
Rx queue is shared if device supports, otherwise fallback to standard RxQ.
Shared Rx queues are grouped per X ports. X defaults to UINT32_MAX, implies all ports join share group 1. Queue ID is mapped equally with shared Rx queue ID.
Signed-off-by: Xueming Li <[email protected]> Acked-by: Thomas Monjalon <[email protected]> Acked-by: Ajit Khaparde <[email protected]>
show more ...
|
| #
1bb4a528 |
| 18-Oct-2021 |
Ferruh Yigit <[email protected]> |
ethdev: fix max Rx packet length
There is a confusion on setting max Rx packet length, this patch aims to clarify it.
'rte_eth_dev_configure()' API accepts max Rx packet size via 'uint32_t max_rx_p
ethdev: fix max Rx packet length
There is a confusion on setting max Rx packet length, this patch aims to clarify it.
'rte_eth_dev_configure()' API accepts max Rx packet size via 'uint32_t max_rx_pkt_len' field of the config struct 'struct rte_eth_conf'.
Also 'rte_eth_dev_set_mtu()' API can be used to set the MTU, and result stored into '(struct rte_eth_dev)->data->mtu'.
These two APIs are related but they work in a disconnected way, they store the set values in different variables which makes hard to figure out which one to use, also having two different method for a related functionality is confusing for the users.
Other issues causing confusion is: * maximum transmission unit (MTU) is payload of the Ethernet frame. And 'max_rx_pkt_len' is the size of the Ethernet frame. Difference is Ethernet frame overhead, and this overhead may be different from device to device based on what device supports, like VLAN and QinQ. * 'max_rx_pkt_len' is only valid when application requested jumbo frame, which adds additional confusion and some APIs and PMDs already discards this documented behavior. * For the jumbo frame enabled case, 'max_rx_pkt_len' is an mandatory field, this adds configuration complexity for application.
As solution, both APIs gets MTU as parameter, and both saves the result in same variable '(struct rte_eth_dev)->data->mtu'. For this 'max_rx_pkt_len' updated as 'mtu', and it is always valid independent from jumbo frame.
For 'rte_eth_dev_configure()', 'dev->data->dev_conf.rxmode.mtu' is user request and it should be used only within configure function and result should be stored to '(struct rte_eth_dev)->data->mtu'. After that point both application and PMD uses MTU from this variable.
When application doesn't provide an MTU during 'rte_eth_dev_configure()' default 'RTE_ETHER_MTU' value is used.
Additional clarification done on scattered Rx configuration, in relation to MTU and Rx buffer size. MTU is used to configure the device for physical Rx/Tx size limitation, Rx buffer is where to store Rx packets, many PMDs use mbuf data buffer size as Rx buffer size. PMDs compare MTU against Rx buffer size to decide enabling scattered Rx or not. If scattered Rx is not supported by device, MTU bigger than Rx buffer size should fail.
Signed-off-by: Ferruh Yigit <[email protected]> Acked-by: Ajit Khaparde <[email protected]> Acked-by: Somnath Kotur <[email protected]> Acked-by: Huisong Li <[email protected]> Acked-by: Andrew Rybchenko <[email protected]> Acked-by: Konstantin Ananyev <[email protected]> Acked-by: Rosen Xu <[email protected]> Acked-by: Hyong Youb Kim <[email protected]>
show more ...
|
| #
63b72657 |
| 14-Oct-2021 |
Ivan Ilchenko <[email protected]> |
app/testpmd: add option to display extended statistics
Add 'display-xstats' option for using in accompanying with Rx/Tx statistics (i.e. 'stats-period' option or 'show port stats' interactive comman
app/testpmd: add option to display extended statistics
Add 'display-xstats' option for using in accompanying with Rx/Tx statistics (i.e. 'stats-period' option or 'show port stats' interactive command) to display specified list of extended statistics.
Signed-off-by: Ivan Ilchenko <[email protected]> Signed-off-by: Andrew Rybchenko <[email protected]> Acked-by: Ajit Khaparde <[email protected]> Reviewed-by: Ferruh Yigit <[email protected]>
show more ...
|
| #
c47d7b90 |
| 19-Oct-2021 |
Andrew Rybchenko <[email protected]> |
mempool: add namespace to flags
Fix the mempool flags namespace by adding an RTE_ prefix to the name. The old flags remain usable, to be deprecated in the future.
Flag MEMPOOL_F_NON_IO added in the
mempool: add namespace to flags
Fix the mempool flags namespace by adding an RTE_ prefix to the name. The old flags remain usable, to be deprecated in the future.
Flag MEMPOOL_F_NON_IO added in the release is just renamed to have RTE_ prefix.
Signed-off-by: Andrew Rybchenko <[email protected]> Acked-by: Olivier Matz <[email protected]>
show more ...
|
| #
a550baf2 |
| 25-Aug-2021 |
Min Hu (Connor) <[email protected]> |
app/testpmd: support multi-process
This patch adds multi-process support for testpmd. For example the following commands run two testpmd processes:
* the primary process:
./dpdk-testpmd --proc-ty
app/testpmd: support multi-process
This patch adds multi-process support for testpmd. For example the following commands run two testpmd processes:
* the primary process:
./dpdk-testpmd --proc-type=auto -l 0-1 -- -i \ --rxq=4 --txq=4 --num-procs=2 --proc-id=0
* the secondary process:
./dpdk-testpmd --proc-type=auto -l 2-3 -- -i \ --rxq=4 --txq=4 --num-procs=2 --proc-id=1
Signed-off-by: Min Hu (Connor) <[email protected]> Signed-off-by: Lijun Ou <[email protected]> Signed-off-by: Andrew Rybchenko <[email protected]> Acked-by: Xiaoyun Li <[email protected]> Acked-by: Ajit Khaparde <[email protected]> Reviewed-by: Ferruh Yigit <[email protected]> Acked-by: Aman Deep Singh <[email protected]>
show more ...
|
| #
861e7684 |
| 19-Aug-2021 |
Zhihong Wang <[email protected]> |
app/testpmd: add option for number of flows in flowgen
Make number of flows in flowgen configurable by setting parameter --flowgen-flows=N.
Signed-off-by: Zhihong Wang <[email protected]
app/testpmd: add option for number of flows in flowgen
Make number of flows in flowgen configurable by setting parameter --flowgen-flows=N.
Signed-off-by: Zhihong Wang <[email protected]> Acked-by: Xiaoyun Li <[email protected]>
show more ...
|
|
Revision tags: v21.08, v21.08-rc4, v21.08-rc3, v21.08-rc2, v21.08-rc1 |
|
| #
61a3b0e5 |
| 17-Jun-2021 |
Andrew Rybchenko <[email protected]> |
app/testpmd: send failure logs to stderr
Running with stdout suppressed or redirected for further processing is very confusing in the case of errors. Fix it by logging errors and warnings to stderr.
app/testpmd: send failure logs to stderr
Running with stdout suppressed or redirected for further processing is very confusing in the case of errors. Fix it by logging errors and warnings to stderr.
Since lines with log messages are touched anyway concatenate split format strings to make it easier to search using grep.
Fix indent of format string arguments.
Signed-off-by: Andrew Rybchenko <[email protected]> Acked-by: Xiaoyun Li <[email protected]>
show more ...
|
| #
761f7ae1 |
| 29-Jun-2021 |
Jie Zhou <[email protected]> |
app/testpmd: replace POSIX-specific code
- Make printf format OS independent - Replace htons with RTE_BE16 - Replace POSIX specific inet_aton with OS independent inet_pton - Replace sleep with rte_d
app/testpmd: replace POSIX-specific code
- Make printf format OS independent - Replace htons with RTE_BE16 - Replace POSIX specific inet_aton with OS independent inet_pton - Replace sleep with rte_delay_us_sleep - Replace random with rte_rand - #ifndef mman related code for now - Fix header inclusion - Include rte_os_shim.h in testpmd.h - Remove redundant headers
Signed-off-by: Jie Zhou <[email protected]> Acked-by: Tal Shnaiderman <[email protected]> Acked-by: Dmitry Kozlyuk <[email protected]>
show more ...
|
|
Revision tags: v21.05, v21.05-rc4, v21.05-rc3, v21.05-rc2, v21.05-rc1 |
|
| #
c6d527a1 |
| 05-Apr-2021 |
Thomas Monjalon <[email protected]> |
app/testpmd: fix usage text
The options help text was including an incomplete and redundant summary of the options before explaining each. The summary is dropped.
The details of the option --hairpi
app/testpmd: fix usage text
The options help text was including an incomplete and redundant summary of the options before explaining each. The summary is dropped.
The details of the option --hairpin-mode had an extra space, breaking the alignment with the next line.
There were some mismatches between options in the usage text sed -rn 's/.*\(" *--([a-z-]*)[=: ].*/\1/p' app/test-pmd/parameters.c and the options declared in lgopts array sed -rn 's/.*\{.*"(.*)",.*,.*,.*},.*/\1/p' app/test-pmd/parameters.c The misses were: --no-numa --enable-scatter --tx-ip --tx-udp --noisy-lkup-num-reads-writes The option --ports was not implemented.
Fixes: 01817b10d27c ("app/testpmd: change hairpin queues setup") Fixes: 3c156061b938 ("app/testpmd: add noisy neighbour forwarding mode") Fixes: bf5b2126bf44 ("app/testpmd: add ability to set Tx IP and UDP parameters") Fixes: 0499793854f5 ("app/testpmd: add scatter enabling option") Fixes: 999b2ee0fe45 ("app/testpmd: enable NUMA support by default") Fixes: af75078fece3 ("first public release") Cc: [email protected]
Signed-off-by: Thomas Monjalon <[email protected]> Acked-by: Ajit Khaparde <[email protected]> Acked-by: Bruce Richardson <[email protected]> Acked-by: Andrew Rybchenko <[email protected]> Acked-by: Xiaoyun Li <[email protected]> Reviewed-by: Jens Freimann <[email protected]> Reviewed-by: Bing Zhao <[email protected]> Acked-by: David Marchand <[email protected]>
show more ...
|
| #
487cfc24 |
| 05-Apr-2021 |
Thomas Monjalon <[email protected]> |
app: fix exit messages
Some applications were printing useless messages with rte_exit() after showing the help. Using exit() is enough in this case.
Some applications were using a redundant printf
app: fix exit messages
Some applications were printing useless messages with rte_exit() after showing the help. Using exit() is enough in this case.
Some applications were using a redundant printf or fprintf() before calling rte_exit(). The messages are unified in a single rte_exit().
Some rte_exit() calls were missing a line feed or returning a wrong code.
Signed-off-by: Thomas Monjalon <[email protected]> Acked-by: Wisam Jaddo <[email protected]> Acked-by: Ori Kam <[email protected]> Acked-by: Bruce Richardson <[email protected]> Acked-by: Andrew Rybchenko <[email protected]> Acked-by: David Marchand <[email protected]>
show more ...
|
| #
b7b78a08 |
| 05-Mar-2021 |
Ajit Khaparde <[email protected]> |
app/testpmd: support forced ethernet speed
Add support for forced ethernet speed setting. Currently testpmd tries to configure the Ethernet port in autoneg mode. It is not possible to set the Ethern
app/testpmd: support forced ethernet speed
Add support for forced ethernet speed setting. Currently testpmd tries to configure the Ethernet port in autoneg mode. It is not possible to set the Ethernet port to a specific speed while starting testpmd. In some cases capability to configure a forced speed for the Ethernet port during initialization may be necessary. This patch tries to add this support.
The patch assumes full duplex setting and does not attempt to change that. So speeds like 10M, 100M are not configurable using this method.
The command line to configure a forced speed of 10G: dpdk-testpmd -c 0xff -- -i --eth-link-speed 10000
The command line to configure a forced speed of 50G: dpdk-testpmd -c 0xff -- -i --eth-link-speed 50000
Signed-off-by: Ajit Khaparde <[email protected]> Reviewed-by: Ferruh Yigit <[email protected]>
show more ...
|
|
Revision tags: v21.02, v21.02-rc4, v21.02-rc3, v21.02-rc2 |
|
| #
6c02043e |
| 21-Jan-2021 |
Igor Russkikh <[email protected]> |
app/testpmd: support sending cloned packets in flowgen
When testing high performance numbers, it is often that CPU performance limits the max values device can reach (both in pps and in gbps)
Here
app/testpmd: support sending cloned packets in flowgen
When testing high performance numbers, it is often that CPU performance limits the max values device can reach (both in pps and in gbps)
Here instead of recreating each packet separately, we use clones counter to resend the same mbuf to the line multiple times.
PMDs handle that transparently due to reference counting inside of mbuf.
Reaching max PPS on small packet sizes helps here: Some data from our 2 port x 50G device. Using 2*6 tx queues, 64b packets, PowerEdge R7525, AMD EPYC 7452:
./build/app/dpdk-testpmd -l 32-63 -- --forward-mode=flowgen \ --rxq=6 --txq=6 --disable-crc-strip --burst=512 \ --flowgen-clones=0 --txd=4096 --stats-period=1 --txpkts=64
Gives ~46MPPS TX output:
Tx-pps: 22926849 Tx-bps: 11738590176 Tx-pps: 23642629 Tx-bps: 12105024112
Setting flowgen-clones to 512 pushes TX almost to our device physical limit (68MPPS) using same 2*6 queues(cores):
Tx-pps: 34357556 Tx-bps: 17591073696 Tx-pps: 34353211 Tx-bps: 17588802640
Doing similar measurements per core, I see one core can do 6.9MPPS (without clones) vs 11MPPS (with clones)
Verified on Marvell qede and atlantic PMDs.
Signed-off-by: Igor Russkikh <[email protected]> Reviewed-by: Ferruh Yigit <[email protected]>
show more ...
|
|
Revision tags: v21.02-rc1 |
|
| #
761c4d66 |
| 18-Jan-2021 |
Steve Yang <[email protected]> |
app/testpmd: fix max Rx packet length for VLAN packets
When the max rx packet length is smaller than the sum of mtu size and ether overhead size, it should be enlarged, otherwise the VLAN packets wi
app/testpmd: fix max Rx packet length for VLAN packets
When the max rx packet length is smaller than the sum of mtu size and ether overhead size, it should be enlarged, otherwise the VLAN packets will be dropped.
Removed the rx_offloads assignment for jumbo frame during command line parsing, and set the correct jumbo frame flag if MTU size is larger than the default value 'RTE_ETHER_MTU' within 'init_config()'.
Fixes: 384161e00627 ("app/testpmd: adjust on the fly VLAN configuration") Fixes: 35b2d13fd6fd ("net: add rte prefix to ether defines") Fixes: ce17eddefc20 ("ethdev: introduce Rx queue offloads API") Fixes: 150c9ac2df13 ("app/testpmd: update Rx offload after setting MTU") Cc: [email protected]
Signed-off-by: Steve Yang <[email protected]> Reviewed-by: Ferruh Yigit <[email protected]>
show more ...
|
| #
08dcd187 |
| 02-Dec-2020 |
Huisong Li <[email protected]> |
app/testpmd: fix queue stats mapping configuration
Currently, the queue stats mapping has the following problems: 1) Many PMD drivers don't support queue stats mapping. But there is no failure me
app/testpmd: fix queue stats mapping configuration
Currently, the queue stats mapping has the following problems: 1) Many PMD drivers don't support queue stats mapping. But there is no failure message after executing the command "set stat_qmap rx 0 2 2". 2) Once queue mapping is set, unrelated and unmapped queues are also displayed. 3) The configuration result does not take effect or can not be queried in real time. 4) The mapping arrays, "tx_queue_stats_mappings_array" & "rx_queue_stats_mappings_array" are global and their sizes are based on fixed max port and queue size assumptions. 5) These record structures, 'map_port_queue_stats_mapping_registers()' and its sub functions are redundant for majority of drivers. 6) The display of the queue stats and queue stats mapping is mixed together.
Since xstats is used to obtain queue statistics, we have made the following simplifications and adjustments: 1) If PMD requires and supports queue stats mapping, configure to driver in real time by calling ethdev API after executing the command "set stat_qmap rx/tx ...". If not, the command can not be accepted. 2) Based on the above adjustments, these record structures, 'map_port_queue_stats_mapping_registers()' and its sub functions can be removed. "tx-queue-stats-mapping" & "rx-queue-stats-mapping" parameters, and 'parse_queue_stats_mapping_config()' can be removed too. 3) remove display of queue stats mapping in 'fwd_stats_display()' & 'nic_stats_display()', and obtain queue stats by xstats. Since the record structures are removed, 'nic_stats_mapping_display()' can be deleted.
Fixes: 4dccdc789bf4 ("app/testpmd: simplify handling of stats mappings error") Fixes: 013af9b6b64f ("app/testpmd: various updates") Fixes: ed30d9b691b2 ("app/testpmd: add stats per queue") Cc: [email protected]
Signed-off-by: Huisong Li <[email protected]> Reviewed-by: Ferruh Yigit <[email protected]>
show more ...
|
|
Revision tags: v20.11, v20.11-rc5, v20.11-rc4, v20.11-rc3, v20.11-rc2, v20.11-rc1 |
|
| #
cb056611 |
| 15-Oct-2020 |
Stephen Hemminger <[email protected]> |
eal: rename lcore master and slave
Replace master lcore with main lcore and replace slave lcore with worker lcore.
Keep the old functions and macros but mark them as deprecated for this release.
T
eal: rename lcore master and slave
Replace master lcore with main lcore and replace slave lcore with worker lcore.
Keep the old functions and macros but mark them as deprecated for this release.
The "--master-lcore" command line option is also deprecated and any usage will print a warning and use "--main-lcore" as replacement.
Signed-off-by: Stephen Hemminger <[email protected]> Acked-by: Anatoly Burakov <[email protected]>
show more ...
|
| #
a8d0d473 |
| 15-Oct-2020 |
Bruce Richardson <[email protected]> |
build: replace use of old build macros
Use the newer macros defined by meson in all DPDK source code, to ensure there are no errors when the old non-standard macros are removed.
Signed-off-by: Bruc
build: replace use of old build macros
Use the newer macros defined by meson in all DPDK source code, to ensure there are no errors when the old non-standard macros are removed.
Signed-off-by: Bruce Richardson <[email protected]> Acked-by: Luca Boccassi <[email protected]> Acked-by: Andrew Rybchenko <[email protected]> Acked-by: Rosen Xu <[email protected]> Signed-off-by: Thomas Monjalon <[email protected]>
show more ...
|
| #
91c78e09 |
| 16-Oct-2020 |
Viacheslav Ovsiienko <[email protected]> |
app/testpmd: add rxoffs commands and parameters
Add command line parameter:
--rxoffs=X[,Y]
Sets the offsets of packet segments from the beginning of the receiving buffer if split feature is engage
app/testpmd: add rxoffs commands and parameters
Add command line parameter:
--rxoffs=X[,Y]
Sets the offsets of packet segments from the beginning of the receiving buffer if split feature is engaged. Affects only the queues configured with split offloads (currently BUFFER_SPLIT is supported only).
Add interactive mode command, providing the same:
testpmd> set rxoffs (x[,y]*)
Where x[,y]* represents a CSV list of values, without white space.
Signed-off-by: Viacheslav Ovsiienko <[email protected]>
show more ...
|
| #
0f2096d7 |
| 16-Oct-2020 |
Viacheslav Ovsiienko <[email protected]> |
app/testpmd: add rxpkts commands and parameters
Add command line parameter:
--rxpkts=X[,Y]
Sets the length of segments to scatter packets on receiving if split feature is engaged. Affects only the
app/testpmd: add rxpkts commands and parameters
Add command line parameter:
--rxpkts=X[,Y]
Sets the length of segments to scatter packets on receiving if split feature is engaged. Affects only the queues configured with split offloads (currently BUFFER_SPLIT is supported only).
Add interactive mode command:
testpmd> set rxpkts (x[,y]*)
Where x[,y]* represents a CSV list of values, without white space.
Sets the length of segments to scatter packets on receiving if split feature is engaged. Affects only the queues configured with split offloads (currently BUFFER_SPLIT is supported only). Optionally the multiple memory pools can be specified with --mbuf-size command line parameter and the mbufs to receive will be allocated sequentially from these extra memory pools.
Signed-off-by: Viacheslav Ovsiienko <[email protected]>
show more ...
|
| #
26cbb419 |
| 16-Oct-2020 |
Viacheslav Ovsiienko <[email protected]> |
app/testpmd: add multiple pools per core creation
The command line parameter --mbuf-size is updated, it can handle the multiple values like the following:
--mbuf-size=2176,512,768,4096
specifying
app/testpmd: add multiple pools per core creation
The command line parameter --mbuf-size is updated, it can handle the multiple values like the following:
--mbuf-size=2176,512,768,4096
specifying the creation the extra memory pools with the requested mbuf data buffer sizes. If some buffer split feature is engaged the extra memory pools can be used to configure the Rx queues with rte_the_dev_rx_queue_setup_ex().
The extra pools are created with requested sizes, and pool names are assigned with appended index: mbuf_pool_socket_%socket_%index. Index zero is used to specify the first mandatory pool to maintain compatibility with existing code.
Signed-off-by: Viacheslav Ovsiienko <[email protected]>
show more ...
|
| #
01817b10 |
| 15-Oct-2020 |
Bing Zhao <[email protected]> |
app/testpmd: change hairpin queues setup
A new parameter `hairpin-mode` is introduced to the testpmd command line. Bitmask value is used to provide a more flexible configuration. This parameter shou
app/testpmd: change hairpin queues setup
A new parameter `hairpin-mode` is introduced to the testpmd command line. Bitmask value is used to provide a more flexible configuration. This parameter should be used when `hairpinq` is specified in the command line.
Bit 0 in the LSB indicates the hairpin will use the loop mode. The previous port Rx queue will be connected to the current port Tx queue. Bit 1 in the LSB indicates the hairpin will use pair port mode. The even index port will be paired with the next odd index port. If the total number of the probed ports is odd, then the last one will be paired to itself. If this byte is zero, then each port will be paired to itself. Bit 0 takes a higher priority in the checking.
Bit 4 in the second bytes indicate if the hairpin will use explicit Tx flow mode.
e.g. in the command line, "--hairpinq=2 --hairpin-mode=0x11"
If not set, default value zero will be used and the behavior will try to get aligned with the previous single port mode. If the ports belong to different vendors' NICs, it is suggested to use the `self` hairpin mode only.
Since hairpin configures the hardware resources, the port mask of packets forwarding engine will not be used here.
Signed-off-by: Bing Zhao <[email protected]> Acked-by: Ori Kam <[email protected]>
show more ...
|