[v1,4/5] net/ice: add outer input set mask check
Checks
Commit Message
Distinguish input set mask for inner/outer. Add outer input set
mask check.
Signed-off-by: Zhirun Yan <zhirun.yan@intel.com>
---
drivers/net/ice/ice_fdir_filter.c | 3 ++-
drivers/net/ice/ice_generic_flow.c | 2 ++
2 files changed, 4 insertions(+), 1 deletion(-)
Comments
I suggest that you can merge this commit into the Patch 3/5, since they are all about input set mask changes.
> -----Original Message-----
> From: Yan, Zhirun <zhirun.yan@intel.com>
> Sent: Monday, December 21, 2020 2:52 PM
> To: dev@dpdk.org; Zhang, Qi Z <qi.z.zhang@intel.com>; Cao, Yahui <yahui.cao@intel.com>; Wang, Xiao W <xiao.w.wang@intel.com>;
> Guo, Junfeng <junfeng.guo@intel.com>
> Cc: Su, Simei <simei.su@intel.com>; Xu, Ting <ting.xu@intel.com>; Zhang, Yuying <yuying.zhang@intel.com>; Yan, Zhirun
> <zhirun.yan@intel.com>
> Subject: [PATCH v1 4/5] net/ice: add outer input set mask check
>
> Distinguish input set mask for inner/outer. Add outer input set
> mask check.
>
> Signed-off-by: Zhirun Yan <zhirun.yan@intel.com>
> ---
> drivers/net/ice/ice_fdir_filter.c | 3 ++-
> drivers/net/ice/ice_generic_flow.c | 2 ++
> 2 files changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/ice/ice_fdir_filter.c b/drivers/net/ice/ice_fdir_filter.c
> index 76e0a8df38..2d2b261368 100644
> --- a/drivers/net/ice/ice_fdir_filter.c
> +++ b/drivers/net/ice/ice_fdir_filter.c
> @@ -2020,7 +2020,8 @@ ice_fdir_parse(struct ice_adapter *ad,
> if (ret)
> goto error;
> input_set = filter->input_set | filter->outer_input_set;
> - if (!input_set || input_set & ~item->input_set_mask) {
> + if (!input_set || filter->input_set & ~item->input_set_mask ||
> + filter->outer_input_set & ~item->input_set_mask_f) {
> rte_flow_error_set(error, EINVAL,
> RTE_FLOW_ERROR_TYPE_ITEM_SPEC,
> pattern,
> diff --git a/drivers/net/ice/ice_generic_flow.c b/drivers/net/ice/ice_generic_flow.c
> index 1429cbc3b6..6c20b070c7 100644
> --- a/drivers/net/ice/ice_generic_flow.c
> +++ b/drivers/net/ice/ice_generic_flow.c
> @@ -2088,6 +2088,8 @@ ice_search_pattern_match_item(const struct rte_flow_item pattern[],
> items)) {
> pattern_match_item->input_set_mask =
> array[i].input_set_mask;
> + pattern_match_item->input_set_mask_f =
> + array[i].input_set_mask_f;
> pattern_match_item->pattern_list =
> array[i].pattern_list;
> pattern_match_item->meta = array[i].meta;
> --
> 2.25.1
> -----Original Message-----
> From: Cao, Yahui
> Sent: Friday, December 25, 2020 1:29 PM
> To: Yan, Zhirun <zhirun.yan@intel.com>; dev@dpdk.org; Zhang, Qi Z
> <qi.z.zhang@intel.com>; Wang, Xiao W <xiao.w.wang@intel.com>; Guo,
> Junfeng <junfeng.guo@intel.com>
> Cc: Su, Simei <simei.su@intel.com>; Xu, Ting <ting.xu@intel.com>; Zhang,
> Yuying <yuying.zhang@intel.com>
> Subject: RE: [PATCH v1 4/5] net/ice: add outer input set mask check
>
> I suggest that you can merge this commit into the Patch 3/5, since they are
> all about input set mask changes.
>
Yes. I will meld into previous commit. Thanks.
> > -----Original Message-----
> > From: Yan, Zhirun <zhirun.yan@intel.com>
> > Sent: Monday, December 21, 2020 2:52 PM
> > To: dev@dpdk.org; Zhang, Qi Z <qi.z.zhang@intel.com>; Cao, Yahui
> > <yahui.cao@intel.com>; Wang, Xiao W <xiao.w.wang@intel.com>; Guo,
> > Junfeng <junfeng.guo@intel.com>
> > Cc: Su, Simei <simei.su@intel.com>; Xu, Ting <ting.xu@intel.com>;
> > Zhang, Yuying <yuying.zhang@intel.com>; Yan, Zhirun
> > <zhirun.yan@intel.com>
> > Subject: [PATCH v1 4/5] net/ice: add outer input set mask check
> >
> > Distinguish input set mask for inner/outer. Add outer input set mask
> > check.
> >
> > Signed-off-by: Zhirun Yan <zhirun.yan@intel.com>
> > ---
> > drivers/net/ice/ice_fdir_filter.c | 3 ++-
> > drivers/net/ice/ice_generic_flow.c | 2 ++
> > 2 files changed, 4 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/net/ice/ice_fdir_filter.c
> > b/drivers/net/ice/ice_fdir_filter.c
> > index 76e0a8df38..2d2b261368 100644
> > --- a/drivers/net/ice/ice_fdir_filter.c
> > +++ b/drivers/net/ice/ice_fdir_filter.c
> > @@ -2020,7 +2020,8 @@ ice_fdir_parse(struct ice_adapter *ad,
> > if (ret)
> > goto error;
> > input_set = filter->input_set | filter->outer_input_set;
> > - if (!input_set || input_set & ~item->input_set_mask) {
> > + if (!input_set || filter->input_set & ~item->input_set_mask ||
> > + filter->outer_input_set & ~item->input_set_mask_f) {
> > rte_flow_error_set(error, EINVAL,
> > RTE_FLOW_ERROR_TYPE_ITEM_SPEC,
> > pattern,
> > diff --git a/drivers/net/ice/ice_generic_flow.c
> > b/drivers/net/ice/ice_generic_flow.c
> > index 1429cbc3b6..6c20b070c7 100644
> > --- a/drivers/net/ice/ice_generic_flow.c
> > +++ b/drivers/net/ice/ice_generic_flow.c
> > @@ -2088,6 +2088,8 @@ ice_search_pattern_match_item(const struct
> rte_flow_item pattern[],
> > items)) {
> > pattern_match_item->input_set_mask =
> > array[i].input_set_mask;
> > + pattern_match_item->input_set_mask_f =
> > + array[i].input_set_mask_f;
> > pattern_match_item->pattern_list =
> > array[i].pattern_list;
> > pattern_match_item->meta = array[i].meta;
> > --
> > 2.25.1
@@ -2020,7 +2020,8 @@ ice_fdir_parse(struct ice_adapter *ad,
if (ret)
goto error;
input_set = filter->input_set | filter->outer_input_set;
- if (!input_set || input_set & ~item->input_set_mask) {
+ if (!input_set || filter->input_set & ~item->input_set_mask ||
+ filter->outer_input_set & ~item->input_set_mask_f) {
rte_flow_error_set(error, EINVAL,
RTE_FLOW_ERROR_TYPE_ITEM_SPEC,
pattern,
@@ -2088,6 +2088,8 @@ ice_search_pattern_match_item(const struct rte_flow_item pattern[],
items)) {
pattern_match_item->input_set_mask =
array[i].input_set_mask;
+ pattern_match_item->input_set_mask_f =
+ array[i].input_set_mask_f;
pattern_match_item->pattern_list =
array[i].pattern_list;
pattern_match_item->meta = array[i].meta;