From: Bing Zhao <bi...@nvidia.com>
> 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
>
> Fixes: 5d55a494f4e6 ("net/mlx5: split multi-thread flow handling per OS")
> Cc: sta...@dpdk.org
>
> Signed-off-by: Gregory Etelson <getel...@nvidia.com>
> Signed-off-by: Bing Zhao <bi...@nvidia.com>
Acked-by: Matan Azrad <ma...@nvidia.com>