From: Ivan Malov Date: Sun, 3 Nov 2019 10:33:09 +0000 (+0300) Subject: net/sfc: fix adapter lock usage on rule creation X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=653b285ff11380c44c96a92bedf08fe1614a2fdc;p=dpdk.git net/sfc: fix adapter lock usage on rule creation 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 Signed-off-by: Andrew Rybchenko --- diff --git a/drivers/net/sfc/sfc_flow.c b/drivers/net/sfc/sfc_flow.c index e4a9ba0ff9..8d636f6923 100644 --- a/drivers/net/sfc/sfc_flow.c +++ b/drivers/net/sfc/sfc_flow.c @@ -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) {