> -----Original Message-----
> From: Yang, Qiming
> Sent: Thursday, July 18, 2019 10:47 AM
> To: Wang, Ying A <[email protected]>; Zhang, Qi Z <[email protected]>
> Cc: [email protected]; [email protected]
> Subject: RE: [PATCH 1/3] net/ice: fix flow get inputset check
> 
> So I think the bug is the skipped pattern don't pass to the next function.

Yes, this is another solution. But maybe, this solution will change more codes. 
Anyway, if you think this is the better solution, I will modify it.
> 
> -----Original Message-----
> From: Wang, Ying A
> Sent: Thursday, July 18, 2019 10:40 AM
> To: Yang, Qiming <[email protected]>; Zhang, Qi Z <[email protected]>
> Cc: [email protected]; [email protected]
> Subject: RE: [PATCH 1/3] net/ice: fix flow get inputset check
> 
> 
> 
> > -----Original Message-----
> > From: Yang, Qiming
> > Sent: Thursday, July 18, 2019 10:33 AM
> > To: Wang, Ying A <[email protected]>; Zhang, Qi Z
> > <[email protected]>
> > Cc: [email protected]; [email protected]
> > Subject: RE: [PATCH 1/3] net/ice: fix flow get inputset check
> >
> > It's no need to add RTE_FLOW_ITEM_TYPE_VOID because we have skipped
> > all the VOID items.
> 
> But actually, we passed the original pattern to this function, not the one 
> skipped
> all the VOID items.
> 
> 
> >
> > -----Original Message-----
> > From: Wang, Ying A
> > Sent: Thursday, July 18, 2019 9:39 AM
> > To: Zhang, Qi Z <[email protected]>
> > Cc: Yang, Qiming <[email protected]>; [email protected]; Wang, Ying A
> > <[email protected]>; [email protected]
> > Subject: [PATCH 1/3] net/ice: fix flow get inputset check
> >
> > ice_get_flow_field should not set error if item->type is
> > RTE_FLOW_ITEM_TYPE_VOID.
> > This patch fixes this issue.
> >
> > Fixes: d76116a4678f ("net/ice: add generic flow API")
> > Cc: [email protected]
> >
> > Signed-off-by: Wang Ying A <[email protected]>
> > ---
> >  drivers/net/ice/ice_generic_flow.c | 4 +++-
> >  1 file changed, 3 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/net/ice/ice_generic_flow.c
> > b/drivers/net/ice/ice_generic_flow.c
> > index c2931a1..464f6ec 100644
> > --- a/drivers/net/ice/ice_generic_flow.c
> > +++ b/drivers/net/ice/ice_generic_flow.c
> > @@ -465,7 +465,7 @@ static uint64_t ice_get_flow_field(const struct
> > rte_flow_item pattern[],
> >             case RTE_FLOW_ITEM_TYPE_NVGRE:
> >                     nvgre_spec = item->spec;
> >                     nvgre_mask = item->mask;
> > -                   /* Check if VXLAN item is used to describe protocol.
> > +                   /* Check if NVGRE item is used to describe protocol.
> >                      * If yes, both spec and mask should be NULL.
> >                      * If no, both spec and mask shouldn't be NULL.
> >                      */
> > @@ -480,6 +480,8 @@ static uint64_t ice_get_flow_field(const struct
> > rte_flow_item pattern[],
> >                     is_tunnel = 1;
> >
> >                     break;
> > +           case RTE_FLOW_ITEM_TYPE_VOID:
> > +                   break;
> >             default:
> >                     rte_flow_error_set(error, EINVAL,
> >                                        RTE_FLOW_ERROR_TYPE_ITEM,
> > --
> > 1.8.3.1

Reply via email to