[dpdk-dev] [dpdk-stable] [PATCH] net/cxgbe: fix races while executing rte_flow operations

Ferruh Yigit ferruh.yigit at intel.com
Tue Oct 8 11:36:14 CEST 2019


On 10/4/2019 3:24 PM, Rahul Lakkireddy wrote:
> When rules are being inserted from multiple cores, there are several
> race conditions during rte_flow operations.
> 
> For example, when inserting rules from 2 cores simultaneously, both
> the cores try to fetch a free available filter entry and they both
> end up fetching the same entry. Both of them start overwriting the
> same filter entry before sending to firmware, which results in wrong
> rule being inserted to hardware.
> 
> Fix the races by adding spinlock to serialize the rte_flow operations.
> 
> Fixes: ee61f5113b17 ("net/cxgbe: parse and validate flows")
> Fixes: 9eb2c9a48072 ("net/cxgbe: implement flow create operation")
> Fixes: da23bc9d33f4 ("net/cxgbe: implement flow destroy operation")
> Fixes: 8d3c12e19368 ("net/cxgbe: implement flow query operation")
> Fixes: 86910379d335 ("net/cxgbe: implement flow flush operation")
> Cc: stable at dpdk.org
> 
> Signed-off-by: Rahul Lakkireddy <rahul.lakkireddy at chelsio.com>

Applied to dpdk-next-net/master, thanks.


More information about the dev mailing list