#
2f203d44 |
| 10-May-2018 |
Qi Zhang <qi.z.zhang@intel.com> |
app/testpmd: fix device configure with zero queue
Setup number of Rx & Tx queues to 0 at rte_eth_dev_configure means take driver's default queue number, so if during a re-configuration previous queu
app/testpmd: fix device configure with zero queue
Setup number of Rx & Tx queues to 0 at rte_eth_dev_configure means take driver's default queue number, so if during a re-configuration previous queue number will be overwrite, this is not expected when we configure dcb. The patch fix it by re-configure device with the original queue number.
Fixes: 3be82f5cc5e ("ethdev: support PMD-tuned Tx/Rx parameters")
Signed-off-by: Qi Zhang <qi.z.zhang@intel.com> Acked-by: Remy Horton <remy.horton@intel.com>
show more ...
|
#
4aa0d012 |
| 14-May-2018 |
Anatoly Burakov <anatoly.burakov@intel.com> |
app/testpmd: fix initialization
Patch adding configurable locking has reshuffled some init stages, but did not put them back in correct order. Fix order of init by moving everything that was before
app/testpmd: fix initialization
Patch adding configurable locking has reshuffled some init stages, but did not put them back in correct order. Fix order of init by moving everything that was before arguments parsing into correct places.
Fixes: e505d84c64ab ("app/testpmd: make locking memory configurable")
Reported-by: Thomas Monjalon <thomas@monjalon.net> Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com> Tested-by: Ali Alnubani <alialnu@mellanox.com> Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
show more ...
|
#
adea04c4 |
| 14-May-2018 |
Zhiyong Yang <zhiyong.yang@intel.com> |
app/testpmd: fix log after detach
The second parameter "name" in the function rte_eth_dev_detach has been already redefined as "char *name __rte_unused", "port_id" is printed instead of "name" in te
app/testpmd: fix log after detach
The second parameter "name" in the function rte_eth_dev_detach has been already redefined as "char *name __rte_unused", "port_id" is printed instead of "name" in testpmd.
Fixes: b65ecf199324 ("devargs: rename legacy API") Cc: stable@dpdk.org
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com> Acked-by: Matan Azrad <matan@mellanox.com>
show more ...
|
#
3b97888a |
| 03-May-2018 |
Matan Azrad <matan@mellanox.com> |
app/testpmd: fix asynchronic port removal
When a removable device is plugged-out, a RMV interrupt is invoked and the application can catch the event in order to stop the device management.
The Test
app/testpmd: fix asynchronic port removal
When a removable device is plugged-out, a RMV interrupt is invoked and the application can catch the event in order to stop the device management.
The Testpmd wrong behavior in this case is to detach the removed device using the EAL detach API.
The EAL API does not invalidate the ethdev port and the port keeps appearing as valid from the ethdev point of view.
Thus, the next operations for the ethtev port X may trigger an invalid rte_device access. For example, calling "show port info X" may cause segfault.
Moreover, the removed port is not removed from the Testpmd data-path structures. Therefore, the invalid device may still be used by the Testpmd data-path.
Call the Testpmd detach_port() function which uses the ethdev detach API, and prepare the Testpmd forward ports database for a new forwarding session without the detached port.
Fixes: 284c908cc588 ("app/testpmd: request device removal interrupt") Cc: stable@dpdk.org
Signed-off-by: Matan Azrad <matan@mellanox.com>
show more ...
|
#
0da2a62b |
| 03-May-2018 |
Matan Azrad <matan@mellanox.com> |
app/testpmd: fix removed device link status asking
In the RMV device event callback, there is a call for the removed device stop operation which triggers a link status operation for the removed devi
app/testpmd: fix removed device link status asking
In the RMV device event callback, there is a call for the removed device stop operation which triggers a link status operation for the removed device.
It may casue an error from the removed device PMD.
Skip the link status operation in the above described case.
Fixes: 284c908cc588 ("app/testpmd: request device removal interrupt") Cc: stable@dpdk.org
Signed-off-by: Matan Azrad <matan@mellanox.com>
show more ...
|
#
03ce2c53 |
| 03-May-2018 |
Matan Azrad <matan@mellanox.com> |
app/testpmd: fix synchronic port hotplug
When the user uses the synchronic hot-plug commands, attach\detach, in order to insert\remove a port from the system, the forward ports list update is missed
app/testpmd: fix synchronic port hotplug
When the user uses the synchronic hot-plug commands, attach\detach, in order to insert\remove a port from the system, the forward ports list update is missed in the current implementation.
Thus, an invalid port may be used for data-path in case of detach because the detached port was not removed from the forward port list.
In addition, a new port is not used for data-path in case of attach, as the default behavior of Testpmd, because the attached port was not inserted to the forward port list.
Update the forward port list in the above cases to allow the correct port usage for data-path in the next packet forwarding start.
Fixes: edab33b1c01d ("app/testpmd: support port hotplug") Cc: stable@dpdk.org
Signed-off-by: Matan Azrad <matan@mellanox.com>
show more ...
|
#
47a767b2 |
| 03-May-2018 |
Matan Azrad <matan@mellanox.com> |
app/testpmd: fix forward ports Rx flush
A port Rx queue flush is done when the packet forwarding starts in order to clean the port statistics for a new traffic session.
The flush operation is wrong
app/testpmd: fix forward ports Rx flush
A port Rx queue flush is done when the packet forwarding starts in order to clean the port statistics for a new traffic session.
The flush operation is wrongly called before the update of the new forward ports, and may fail due to flush operation for an invalid port configured by the old session.
Move the new forward port setup to be done before the Rx queue flush.
Fixes: 7741e4cf16c0 ("app/testpmd: VMDq and DCB updates") Cc: stable@dpdk.org
Signed-off-by: Matan Azrad <matan@mellanox.com>
show more ...
|
#
1f84c469 |
| 03-May-2018 |
Matan Azrad <matan@mellanox.com> |
app/testpmd: fix forward ports update
When the forward ports are changed either by new portlist\portmask configurations or by a port detachment, all the old forward streams are freed and new streams
app/testpmd: fix forward ports update
When the forward ports are changed either by new portlist\portmask configurations or by a port detachment, all the old forward streams are freed and new streams are allocated to be aligned with the new forward ports.
If the number of the forward ports drops to 0, there is an attempt to wrongly allocate 0 memory for the streams.
Skip the streams memory allocation if no forward ports are configured.
Fixes: ce8d561418d4 ("app/testpmd: add port configuration settings") Cc: stable@dpdk.org
Signed-off-by: Matan Azrad <matan@mellanox.com>
show more ...
|
#
b8b8b344 |
| 28-Mar-2018 |
Matan Azrad <matan@mellanox.com> |
app/testpmd: fix slave port detection
Testpmd allows to create and control bonding devices by run time command lines using the bonding PMD API.
Some bonding device slaves operations (close, stop, e
app/testpmd: fix slave port detection
Testpmd allows to create and control bonding devices by run time command lines using the bonding PMD API.
Some bonding device slaves operations (close, stop, etc) should not be used by the application and must be managed by the bonding PMD.
Thus, Testpmd manages slave flags to prevent the special operations calls and when a slave is added to bonding device by a run time command line, the flag is set.
There is one more way to define the slaves for a bonding device using EAL command line and Testpmd doesn't set the slave flag in this case what causes to the special operations to be called by Testpmd.
Add one more check to detect bonding slave device.
Fixes: 41b05095c4d1 ("app/testpmd: fix bonding start") Fixes: 0e545d3047fe ("app/testpmd: check stopping port is not in bonding") Cc: stable@dpdk.org
Signed-off-by: Matan Azrad <matan@mellanox.com> Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
show more ...
|
#
fb7b8b32 |
| 03-May-2018 |
Anatoly Burakov <anatoly.burakov@intel.com> |
app/testpmd: disable memory locking on FreeBSD
If mlockall() is called while allocated VA space is bigger than amount of available RAM, FreeBSD kernel will deadlock and need a hard reboot. We do all
app/testpmd: disable memory locking on FreeBSD
If mlockall() is called while allocated VA space is bigger than amount of available RAM, FreeBSD kernel will deadlock and need a hard reboot. We do allocate big amounts of memory because of how new memory subsystem works, so calling mlockall() will cause a deadlock. So, disable mlockall() by default on FreeBSD.
Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com> Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
show more ...
|
#
e505d84c |
| 03-May-2018 |
Anatoly Burakov <anatoly.burakov@intel.com> |
app/testpmd: make locking memory configurable
Add two new command-line parameters for either enabling or disabling locking all memory at app startup.
Signed-off-by: Jianfeng Tan <jianfeng.tan@intel
app/testpmd: make locking memory configurable
Add two new command-line parameters for either enabling or disabling locking all memory at app startup.
Signed-off-by: Jianfeng Tan <jianfeng.tan@intel.com> Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com> Acked-by: Remy Horton <remy.horton@intel.com> Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
show more ...
|
#
90892962 |
| 25-Apr-2018 |
Qi Zhang <qi.z.zhang@intel.com> |
app/testpmd: fix config due to RSS offload check
After add RSS hash offload check, default rss_hf will fail on devices that not support all bits, the patch take rss_hf as a suggest value and only s
app/testpmd: fix config due to RSS offload check
After add RSS hash offload check, default rss_hf will fail on devices that not support all bits, the patch take rss_hf as a suggest value and only set bits that device supported base on rte_eth_dev_get_info, also rss_hf will only be updated when new rss offload is successfully updated on all ports by "port config all rss [!default]" command.
Fixes: 8863a1fbfc66 ("ethdev: add supported hash function check") Fixes: d9aa619c60b6 ("app/testpmd: new parameter for port config all RSS command")
Signed-off-by: Qi Zhang <qi.z.zhang@intel.com> Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com> Tested-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
show more ...
|
#
d44f8a48 |
| 24-Apr-2018 |
Qi Zhang <qi.z.zhang@intel.com> |
app/testpmd: enable per queue configure
Each queue has independent configure information in rte_port. Base on this, we are able to add new commands to configure different queues with different value
app/testpmd: enable per queue configure
Each queue has independent configure information in rte_port. Base on this, we are able to add new commands to configure different queues with different value.
Signed-off-by: Qi Zhang <qi.z.zhang@intel.com> Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
show more ...
|
#
badb87c1 |
| 11-Apr-2018 |
Anoob Joseph <anoob.joseph@caviumnetworks.com> |
app/testpmd: support IPsec event
Adding support for IPsec event
Signed-off-by: Anoob Joseph <anoob.joseph@caviumnetworks.com> Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
|
#
d9a42a69 |
| 05-Apr-2018 |
Thomas Monjalon <thomas@monjalon.net> |
ethdev: deprecate port count function
Some DPDK applications wrongly assume these requirements: - no hotplug, i.e. ports are never detached - all allocated ports are available to the applica
ethdev: deprecate port count function
Some DPDK applications wrongly assume these requirements: - no hotplug, i.e. ports are never detached - all allocated ports are available to the application
Such application iterates over ports by its own mean. The most common pattern is to request the port count and assume ports with index in the range [0..count[ can be used.
In order to fix this common mistake in all external applications, the function rte_eth_dev_count is deprecated, while introducing the new functions rte_eth_dev_count_avail and rte_eth_dev_count_total.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
show more ...
|
#
8728ccf3 |
| 05-Apr-2018 |
Thomas Monjalon <thomas@monjalon.net> |
fix ethdev ports enumeration
Some DPDK applications wrongly assume these requirements: - no hotplug, i.e. ports are never detached - all allocated ports are available to the application
Suc
fix ethdev ports enumeration
Some DPDK applications wrongly assume these requirements: - no hotplug, i.e. ports are never detached - all allocated ports are available to the application
Such application iterates over ports by its own mean. The most common pattern is to request the port count and assume ports with index in the range [0..count[ can be used.
There are three consequences when using such wrong design: - new ports having an index higher than the port count won't be seen - old ports being detached (RTE_ETH_DEV_UNUSED) can be seen as ghosts - failsafe sub-devices (RTE_ETH_DEV_DEFERRED) will be seen by the application
Such mistake will be less common with growing hotplug awareness. All applications and examples inside this repository - except testpmd - must be fixed to use the iterator RTE_ETH_FOREACH_DEV.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
show more ...
|
#
8599ed31 |
| 10-Apr-2018 |
Remy Horton <remy.horton@intel.com> |
app/testpmd: make use of per-PMD Tx/Rx parameters
The optimal values of several transmission & reception related parameters, such as burst sizes, descriptor ring sizes, and number of queues, varies
app/testpmd: make use of per-PMD Tx/Rx parameters
The optimal values of several transmission & reception related parameters, such as burst sizes, descriptor ring sizes, and number of queues, varies between different network interface devices. This patch allows testpmd to make use of per-PMD tuned parameter values.
Signed-off-by: Remy Horton <remy.horton@intel.com> Acked-by: Shreyansh Jain <shreyansh.jain@nxp.com>
show more ...
|
#
fb73e096 |
| 13-Apr-2018 |
Jeff Guo <jia.guo@intel.com> |
app/testpmd: enable device hotplug monitoring
Use testpmd for example, to show how an application uses device event APIs to monitor the hotplug events, including both hot removal event and hot inser
app/testpmd: enable device hotplug monitoring
Use testpmd for example, to show how an application uses device event APIs to monitor the hotplug events, including both hot removal event and hot insertion event.
The process is that, testpmd first enable hotplug by below commands,
E.g. ./build/app/testpmd -c 0x3 --n 4 -- -i --hot-plug
then testpmd starts the device event monitor by calling the new API (rte_dev_event_monitor_start) and register the user's callback by call the API (rte_dev_event_callback_register), when device being hotplug insertion or hotplug removal, the device event monitor detects the event and call user's callbacks, user could process the event in the callback accordingly.
This patch only shows the event monitoring, device attach/detach would not be involved here, will add from other hotplug patch set.
Signed-off-by: Jeff Guo <jia.guo@intel.com> Reviewed-by: Jianfeng Tan <jianfeng.tan@intel.com>
show more ...
|
#
788e7ff2 |
| 08-Feb-2018 |
Ferruh Yigit <ferruh.yigit@intel.com> |
app/testpmd: enable CRC strip without capability check
Some hardware doesn't support disabling CRC strip. In techboard it has been decided to enable CRC strip always.
The testpmd update in commit 8
app/testpmd: enable CRC strip without capability check
Some hardware doesn't support disabling CRC strip. In techboard it has been decided to enable CRC strip always.
The testpmd update in commit 8b9bd0efe0b6, enables CRC strip only if PMD reports CRC strip capability. Not all PMDs updated to report CRC strip.
For the PMDs not reporting CRC strip testpmd behavior changed and disabling CRC strip for them. And this may generate error for PMDs that doesn't support disabling CRC strip.
Removing capability check for this release. In long term there can be option to remove CRC strip flag completely or adding a new flag to let PMD say disabling is not supported.
Fixes: 8b9bd0efe0b6 ("app/testpmd: disable Rx VLAN offloads by default")
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com> Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
show more ...
|
#
d5354e89 |
| 05-Feb-2018 |
Yanglong Wu <yanglong.wu@intel.com> |
app/testpmd: fix port DCB configuration
The port_conf for the DCB configuration should inherit the same configuration of the port.
Fixes: 0074d02fca21 ("app/testpmd: convert to new Rx offloads API"
app/testpmd: fix port DCB configuration
The port_conf for the DCB configuration should inherit the same configuration of the port.
Fixes: 0074d02fca21 ("app/testpmd: convert to new Rx offloads API")
Signed-off-by: Yanglong Wu <yanglong.wu@intel.com> Acked-by: Shahaf Shuler <shahafs@mellanox.com>
show more ...
|
#
bd8f10f6 |
| 12-Jan-2018 |
Kevin Laatz <kevin.laatz@intel.com> |
app/testpmd: increase default ring sizes to 1024
Increase the default RX/TX ring sizes to 1024/1024 to accommodate for NICs with higher throughput (25G, 40G etc)
Signed-off-by: Kevin Laatz <kevin.l
app/testpmd: increase default ring sizes to 1024
Increase the default RX/TX ring sizes to 1024/1024 to accommodate for NICs with higher throughput (25G, 40G etc)
Signed-off-by: Kevin Laatz <kevin.laatz@intel.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
show more ...
|
#
63531389 |
| 24-Jan-2018 |
Georgios Katsikas <katsikas.gp@gmail.com> |
app/testpmd: move variables definition in source
This patch moves the definition of 3 variables in testpmd.h into the respective .c file. The idea behind this move is to allow external applications
app/testpmd: move variables definition in source
This patch moves the definition of 3 variables in testpmd.h into the respective .c file. The idea behind this move is to allow external applications to compile against testpmd without throwing compilation errors related to multiple definition of variables.
Also, an extern dcb_q_mapping in testpmd.h is removed since it appears that this variable is not defined elsewhere in the tree.
Signed-off-by: Georgios Katsikas <katsikas.gp@gmail.com>
show more ...
|
#
8b9bd0ef |
| 31-Jan-2018 |
Moti Haimovsky <motih@mellanox.com> |
app/testpmd: disable Rx VLAN offloads by default
Removed the hardcoded preconfigured Rx VLAN offload configuration from testpmd and changed the Rx offload command line parameters from disable to ena
app/testpmd: disable Rx VLAN offloads by default
Removed the hardcoded preconfigured Rx VLAN offload configuration from testpmd and changed the Rx offload command line parameters from disable to enable.
It has been decided by the Technical Board that testers who wish to use these offloads will now have to explicitly write them in the command-line when running testpmd. The agreement is to keep two exceptions enabled by default in 18.02: Rx CRC strip and Tx fast free.
Motivation: Some PMDs such at the mlx4 may not implement all the offloads. After the offload API rework assuming no offload is enabled by default, commit ce17eddefc20 ("ethdev: introduce Rx queue offloads API") commit cba7f53b717d ("ethdev: introduce Tx queue offloads API") trying to enable a not supported offload is clearly an error which will cause configuration failing.
Considering that testpmd is an application to test the PMD, it should not fail on a configuration which was not explicitly requested. The behavior of this test application is then turned to an opt-in model.
Signed-off-by: Moti Haimovsky <motih@mellanox.com> Acked-by: Thomas Monjalon <thomas@monjalon.net>
show more ...
|
#
0e45c64d |
| 30-Jan-2018 |
Matan Azrad <matan@mellanox.com> |
app/testpmd: fix invalid port detach
Using registration to all ports includes also the ports which should not be used by the application.
It is nice to print each port event by testpmd but in case
app/testpmd: fix invalid port detach
Using registration to all ports includes also the ports which should not be used by the application.
It is nice to print each port event by testpmd but in case of RMV event, testpmd tries to detach the port and this case is problematic when the port should not be used by the application.
Check the port validation before detach API calling.
Fixes: 4fb82244b394 ("app/testpmd: extend event printing")
Signed-off-by: Matan Azrad <matan@mellanox.com>
show more ...
|
#
0e798567 |
| 29-Jan-2018 |
Pavan Nikhilesh <pbhagavatula@caviumnetworks.com> |
app/testpmd: add log for preferred mempool ops
This patch adds the debug message to print the best selected pktmbuf mempool ops name.
Signed-off-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com
app/testpmd: add log for preferred mempool ops
This patch adds the debug message to print the best selected pktmbuf mempool ops name.
Signed-off-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com> Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com> Reviewed-by: Olivier Matz <olivier.matz@6wind.com> Acked-by: Santosh Shukla <santosh.shukla@caviumnetworks.com>
show more ...
|