#
80c67625 |
| 05-Jun-2024 |
Gregory Etelson <getelson@nvidia.com> |
net/mlx5: validate HWS template items
HWS item validation scheme is based on existing DV items validation.
Signed-off-by: Gregory Etelson <getelson@nvidia.com> Acked-by: Dariusz Sosnowski <dsosnows
net/mlx5: validate HWS template items
HWS item validation scheme is based on existing DV items validation.
Signed-off-by: Gregory Etelson <getelson@nvidia.com> Acked-by: Dariusz Sosnowski <dsosnowski@nvidia.com>
show more ...
|
#
2ece3b71 |
| 26-Oct-2023 |
Bing Zhao <bingz@nvidia.com> |
net/mlx5: fix flow workspace double free in Windows
The thread specific variable workspace indicated by "key_workspace" should be freed explicitly when closing a device. For example, in Linux, when
net/mlx5: fix flow workspace double free in Windows
The thread specific variable workspace indicated by "key_workspace" should be freed explicitly when closing a device. For example, in Linux, when exiting an application, the thread will not exit explicitly and the thread resources will not be deconstructed.
The commit to solve this introduced a global list to manage the workspace resources as a garbage collector. It will also be executed in Windows, but the workspaces have already been freed in the function mlx5_flow_os_release_workspace().
With this commit, the garbage collector will only be executed in Linux. The workspace resources management in Windows will remain the same with some stub function when needed.
Fixes: dc7c5e0aa905 ("net/mlx5: fix flow workspace destruction") Cc: stable@dpdk.org
Signed-off-by: Bing Zhao <bingz@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
dc7c5e0a |
| 03-Jul-2023 |
Gregory Etelson <getelson@nvidia.com> |
net/mlx5: fix flow workspace destruction
PMD uses pthread key to allocate and access per thread flow workspace memory buffers.
PMD registered a key destructor function to clean up flow workspace bu
net/mlx5: fix flow workspace destruction
PMD uses pthread key to allocate and access per thread flow workspace memory buffers.
PMD registered a key destructor function to clean up flow workspace buffers. However, the key destructor was not called by the pthread library.
The patch keeps track of per-thread flow workspaces in PMD. Flow workspaces memory release is activated from PMD destructor.
In the meanwhile, workspace buffer and RSS queues array are allocated in a single memory chunk with this patch. The maximal number of queues RTE_ETH_RSS_RETA_SIZE_512 is chosen. Then the workspace adjustment can be removed to reduce the software hiccup: 1. realloc and content copy 2. spinlock acquire and release
Bugzilla ID: 1255 Fixes: 5d55a494f4e6 ("net/mlx5: split multi-thread flow handling per OS") Cc: stable@dpdk.org
Reported-by: David Marchand <david.marchand@redhat.com> Signed-off-by: Gregory Etelson <getelson@nvidia.com> Signed-off-by: Bing Zhao <bingz@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
fb96caa5 |
| 02-Jun-2022 |
Raja Zidane <rzidane@nvidia.com> |
net/mlx5: support ESP item on Windows
ESP item is not supported on Windows, yet it is expanded from the expansion graph when trying to create default flow to RSS all packets.
Support ESP item match
net/mlx5: support ESP item on Windows
ESP item is not supported on Windows, yet it is expanded from the expansion graph when trying to create default flow to RSS all packets.
Support ESP item match (without ability to match on SPI field on Windows). Split ESP validation per OS.
Signed-off-by: Raja Zidane <rzidane@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
6be4c57a |
| 14-Feb-2022 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: fix errno update in shared context creation
The mlx5_alloc_shared_dev_ctx() function has a local variable named "err" which contains the errno value in case of failure.
When functions cal
net/mlx5: fix errno update in shared context creation
The mlx5_alloc_shared_dev_ctx() function has a local variable named "err" which contains the errno value in case of failure.
When functions called by this function are failed, this variable is updated with their return value (that should be a positive errno value). However, some functions doesn't update errno value by themselves or return negative errno value. If one of them fails, the "err" variable contains negative value what cause to assertion failure.
This patch updates all functions uses by mlx5_alloc_shared_dev_ctx() function to update rte_errno and take this value instead of "err" value.
Fixes: 5dfa003db53f ("common/mlx5: fix post doorbell barrier") Fixes: 5d55a494f4e6 ("net/mlx5: split multi-thread flow handling per OS") Cc: stable@dpdk.org
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
1325a1ff |
| 16-Mar-2021 |
Tal Shnaiderman <talshn@nvidia.com> |
eal: rename thread TLS API
Rename the key opaque pointer from rte_tls_key to rte_thread_key to avoid confusion with transport layer security.
Also rename and remove the "_tls" term from the followi
eal: rename thread TLS API
Rename the key opaque pointer from rte_tls_key to rte_thread_key to avoid confusion with transport layer security.
Also rename and remove the "_tls" term from the following functions to avoid redundancy:
rte_thread_tls_key_create rte_thread_tls_key_delete rte_thread_tls_value_set rte_thread_tls_value_get
Suggested-by: Vladimir Medvedkin <vladimir.medvedkin@intel.com> Suggested-by: Morten Brørup <mb@smartsharesystems.com> Signed-off-by: Tal Shnaiderman <talshn@nvidia.com> Acked-by: Morten Brørup <mb@smartsharesystems.com>
show more ...
|
#
5d55a494 |
| 07-Jan-2021 |
Tal Shnaiderman <talshn@nvidia.com> |
net/mlx5: split multi-thread flow handling per OS
multi-threaded flows feature uses pthread function pthread_key_create but for Windows the destruction option in the function is unimplemented.
To r
net/mlx5: split multi-thread flow handling per OS
multi-threaded flows feature uses pthread function pthread_key_create but for Windows the destruction option in the function is unimplemented.
To resolve it, Windows will implement destruction mechanism to cleanup mlx5_flow_workspace object for each terminated thread.
Linux flow will keep the current behavior.
Signed-off-by: Tal Shnaiderman <talshn@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com> Acked-by: Khoa To <khot@microsoft.com>
show more ...
|