net/sfc: rely on native thread safety in RTE flow mechanism
Checks
Commit Message
The changeset that introduced common flow API thread safety
in fact introduced double locking to this particular PMD as
RTE flow API implementation in the PMD has been thread-safe
since the day zero. State this by setting the corresponding
device flag to skip locking imposed by generic RTE flow API.
Fixes: 80d1a9aff7f6 ("ethdev: make flow API thread safe")
Signed-off-by: Ivan Malov <ivan.malov@oktetlabs.ru>
---
doc/guides/nics/sfc_efx.rst | 2 ++
doc/guides/rel_notes/release_20_11.rst | 1 +
drivers/net/sfc/sfc_ethdev.c | 1 +
3 files changed, 4 insertions(+)
Comments
On 11/16/20 10:40 PM, Ivan Malov wrote:
> The changeset that introduced common flow API thread safety
> in fact introduced double locking to this particular PMD as
> RTE flow API implementation in the PMD has been thread-safe
> since the day zero. State this by setting the corresponding
> device flag to skip locking imposed by generic RTE flow API.
>
> Fixes: 80d1a9aff7f6 ("ethdev: make flow API thread safe")
>
> Signed-off-by: Ivan Malov <ivan.malov@oktetlabs.ru>
Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
On 11/17/2020 7:38 AM, Andrew Rybchenko wrote:
> On 11/16/20 10:40 PM, Ivan Malov wrote:
>> The changeset that introduced common flow API thread safety
>> in fact introduced double locking to this particular PMD as
>> RTE flow API implementation in the PMD has been thread-safe
>> since the day zero. State this by setting the corresponding
>> device flag to skip locking imposed by generic RTE flow API.
>>
>> Fixes: 80d1a9aff7f6 ("ethdev: make flow API thread safe")
>>
>> Signed-off-by: Ivan Malov <ivan.malov@oktetlabs.ru>
>
> Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
>
Applied to dpdk-next-net/main, thanks.
@@ -246,6 +246,8 @@ Validating flow rules depends on the firmware variant.
The :ref:`flow_isolated_mode` is supported.
+The implementation is natively thread-safe.
+
Ethernet destination individual/group match
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -220,6 +220,7 @@ New Features
* Added Alveo SN1000 SmartNICs (EF100 architecture) support including
flow API transfer rules for switch HW offload
* Added ARMv8 support
+ * Claimed RTE flow API native thread safety
* **Added Wangxun txgbe PMD.**
@@ -2198,6 +2198,7 @@ sfc_eth_dev_init(struct rte_eth_dev *dev)
/* Copy PCI device info to the dev->data */
rte_eth_copy_pci_info(dev, pci_dev);
dev->data->dev_flags |= RTE_ETH_DEV_AUTOFILL_QUEUE_XSTATS;
+ dev->data->dev_flags |= RTE_ETH_DEV_FLOW_OPS_THREAD_SAFE;
rc = sfc_kvargs_parse(sa);
if (rc != 0)