> -----Original Message----- > From: Xing, Beilei > Sent: Monday, December 18, 2017 1:21 PM > To: Zhang, Qi Z <qi.z.zh...@intel.com> > Cc: dev@dpdk.org > Subject: [PATCH] net/i40e: fix FDIR input set conflict > > The first FDIR rule for some PCTYPE will configure input set and create flow, > the following flows must use the same input set, otherwise will cause input > set conflict and fail to create flow. > But if creating the first rule after flow flush, input set should be > re-configured. > > Fixes: 42044b69c67d ("net/i40e: support input set selection for FDIR") > c: sta...@dpdk.org > > Signed-off-by: Beilei Xing <beilei.x...@intel.com> > --- > drivers/net/i40e/i40e_flow.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c index > 7e4936e..a9e7a0d 100644 > --- a/drivers/net/i40e/i40e_flow.c > +++ b/drivers/net/i40e/i40e_flow.c > @@ -4406,6 +4406,7 @@ i40e_flow_flush_fdir_filter(struct i40e_pf *pf) > struct rte_eth_dev *dev = pf->adapter->eth_dev; > struct i40e_fdir_info *fdir_info = &pf->fdir; > struct i40e_fdir_filter *fdir_filter; > + enum i40e_filter_pctype pctype; > struct rte_flow *flow; > void *temp; > int ret; > @@ -4427,6 +4428,10 @@ i40e_flow_flush_fdir_filter(struct i40e_pf *pf) > rte_free(flow); > } > } > + > + for (pctype = I40E_FILTER_PCTYPE_NONF_IPV4_UDP; > + pctype <= I40E_FILTER_PCTYPE_L2_PAYLOAD; pctype++) > + pf->fdir.inset_flag[pctype] = 0; > } > > return ret; > -- > 2.5.5
Acked-by: Qi Zhang <qi.z.zh...@intel.com> BTW, do we also need a fix for flow destroy? When the last flow that use input set be destroyed, inset_flag also need to be reset? Regards Qi