net/sfc: fix adapter lock usage on rule creation
Checks
Commit Message
The point is that adapter lock has to be held on
list accesses, as well as when talking to the HW.
Fixes: a9825ccf5bb8 ("net/sfc: support flow API filters")
Cc: stable@dpdk.org
Signed-off-by: Ivan Malov <ivan.malov@oktetlabs.ru>
Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
---
drivers/net/sfc/sfc_flow.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
Comments
On 11/3/2019 10:33 AM, Ivan Malov wrote:
> The point is that adapter lock has to be held on
> list accesses, as well as when talking to the HW.
>
> Fixes: a9825ccf5bb8 ("net/sfc: support flow API filters")
> Cc: stable@dpdk.org
>
> Signed-off-by: Ivan Malov <ivan.malov@oktetlabs.ru>
> Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
Applied to dpdk-next-net/master, thanks.
@@ -2315,10 +2315,10 @@ sfc_flow_create(struct rte_eth_dev *dev,
if (rc != 0)
goto fail_bad_value;
- TAILQ_INSERT_TAIL(&sa->filter.flow_list, flow, entries);
-
sfc_adapter_lock(sa);
+ TAILQ_INSERT_TAIL(&sa->filter.flow_list, flow, entries);
+
if (sa->state == SFC_ADAPTER_STARTED) {
rc = sfc_flow_filter_insert(sa, flow);
if (rc != 0) {