提交 83c911dc 编写于 作者: L Lingyu Liu 提交者: Tony Nguyen

ice: Reset FDIR counter in FDIR init stage

Reset the FDIR counters when FDIR inits. Without this patch,
when VF initializes or resets, all the FDIR counters are not
cleaned, which may cause unexpected behaviors for future FDIR
rule create (e.g., rule conflict).

Fixes: 1f7ea1cd ("ice: Enable FDIR Configure for AVF")
Signed-off-by: NJunfeng Guo <junfeng.guo@intel.com>
Signed-off-by: NLingyu Liu <lingyu.liu@intel.com>
Tested-by: NRafal Romanowski <rafal.romanowski@intel.com>
Signed-off-by: NTony Nguyen <anthony.l.nguyen@intel.com>
上级 b4a01ace
...@@ -541,6 +541,21 @@ static void ice_vc_fdir_rem_prof_all(struct ice_vf *vf) ...@@ -541,6 +541,21 @@ static void ice_vc_fdir_rem_prof_all(struct ice_vf *vf)
} }
} }
/**
* ice_vc_fdir_reset_cnt_all - reset all FDIR counters for this VF FDIR
* @fdir: pointer to the VF FDIR structure
*/
static void ice_vc_fdir_reset_cnt_all(struct ice_vf_fdir *fdir)
{
enum ice_fltr_ptype flow;
for (flow = ICE_FLTR_PTYPE_NONF_NONE;
flow < ICE_FLTR_PTYPE_MAX; flow++) {
fdir->fdir_fltr_cnt[flow][0] = 0;
fdir->fdir_fltr_cnt[flow][1] = 0;
}
}
/** /**
* ice_vc_fdir_has_prof_conflict * ice_vc_fdir_has_prof_conflict
* @vf: pointer to the VF structure * @vf: pointer to the VF structure
...@@ -1998,6 +2013,7 @@ void ice_vf_fdir_init(struct ice_vf *vf) ...@@ -1998,6 +2013,7 @@ void ice_vf_fdir_init(struct ice_vf *vf)
spin_lock_init(&fdir->ctx_lock); spin_lock_init(&fdir->ctx_lock);
fdir->ctx_irq.flags = 0; fdir->ctx_irq.flags = 0;
fdir->ctx_done.flags = 0; fdir->ctx_done.flags = 0;
ice_vc_fdir_reset_cnt_all(fdir);
} }
/** /**
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册