[dpdk-dev] net/i40e: fix bug in RSS flow action parser
Checks
Commit Message
Parameter action_flag is not used correctly in i40e_flow_parse_rss_action.
Also change it from point type to value type since it is not an output
parameter.
Fixes: ecad87d22383e ("net/i40e: move RSS to flow API")
Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
---
drivers/net/i40e/i40e_flow.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
Comments
> -----Original Message-----
> From: Zhang, Qi Z
> Sent: Thursday, January 25, 2018 1:11 PM
> To: Xing, Beilei <beilei.xing@intel.com>
> Cc: dev@dpdk.org; Zhao1, Wei <wei.zhao1@intel.com>; Zhang, Qi Z
> <qi.z.zhang@intel.com>
> Subject: [PATCH] net/i40e: fix bug in RSS flow action parser
>
> Parameter action_flag is not used correctly in i40e_flow_parse_rss_action.
> Also change it from point type to value type since it is not an output
> parameter.
>
> Fixes: ecad87d22383e ("net/i40e: move RSS to flow API")
>
> Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
> ---
> drivers/net/i40e/i40e_flow.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c
> index a74fa08ab..74708f168 100644
> --- a/drivers/net/i40e/i40e_flow.c
> +++ b/drivers/net/i40e/i40e_flow.c
> @@ -4188,7 +4188,7 @@ static int
> i40e_flow_parse_rss_action(struct rte_eth_dev *dev,
> const struct rte_flow_action *actions,
> struct rte_flow_error *error,
> - uint8_t *action_flag,
> + uint8_t action_flag,
> struct i40e_queue_regions *conf_info,
> union i40e_filter_t *filter)
> {
> @@ -4378,7 +4378,7 @@ i40e_parse_rss_filter(struct rte_eth_dev *dev,
> return ret;
>
> ret = i40e_flow_parse_rss_action(dev, actions, error,
> - &action_flag, &info, filter);
> + action_flag, &info, filter);
> if (ret)
> return ret;
>
> --
> 2.13.6
Acked-by Wei Zhao <wei.zhao1@intel.com>
> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Qi Zhang
> Sent: Thursday, January 25, 2018 1:11 PM
> To: Xing, Beilei <beilei.xing@intel.com>
> Cc: dev@dpdk.org; Zhao1, Wei <wei.zhao1@intel.com>; Zhang, Qi Z
> <qi.z.zhang@intel.com>
> Subject: [dpdk-dev] [PATCH] net/i40e: fix bug in RSS flow action parser
>
> Parameter action_flag is not used correctly in i40e_flow_parse_rss_action.
> Also change it from point type to value type since it is not an output
> parameter.
>
> Fixes: ecad87d22383e ("net/i40e: move RSS to flow API")
>
> Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
> ---
Acked-by Zhiyong Yang <zhiyong.yang@intel.com>
Hi Qi,
> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Qi Zhang
> Sent: Thursday, January 25, 2018 1:11 PM
> To: Xing, Beilei <beilei.xing@intel.com>
> Cc: dev@dpdk.org; Zhao1, Wei <wei.zhao1@intel.com>; Zhang, Qi Z
> <qi.z.zhang@intel.com>
> Subject: [dpdk-dev] [PATCH] net/i40e: fix bug in RSS flow action parser
>
> Parameter action_flag is not used correctly in i40e_flow_parse_rss_action.
> Also change it from point type to value type since it is not an output
> parameter.
>
> Fixes: ecad87d22383e ("net/i40e: move RSS to flow API")
>
> Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
> ---
> drivers/net/i40e/i40e_flow.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c
> index a74fa08ab..74708f168 100644
> --- a/drivers/net/i40e/i40e_flow.c
> +++ b/drivers/net/i40e/i40e_flow.c
> @@ -4188,7 +4188,7 @@ static int
> i40e_flow_parse_rss_action(struct rte_eth_dev *dev,
> const struct rte_flow_action *actions,
> struct rte_flow_error *error,
> - uint8_t *action_flag,
> + uint8_t action_flag,
> struct i40e_queue_regions *conf_info,
> union i40e_filter_t *filter)
> {
> @@ -4378,7 +4378,7 @@ i40e_parse_rss_filter(struct rte_eth_dev *dev,
> return ret;
>
> ret = i40e_flow_parse_rss_action(dev, actions, error,
> - &action_flag, &info, filter);
> + action_flag, &info, filter);
I wonder if action_flag == ture targets to handle only the case RTE_FLOW_ITEM_TYPE_ETH ?
Thanks
Zhiyong
> if (ret)
> return ret;
>
> --
> 2.13.6
> -----Original Message-----
> From: Yang, Zhiyong
> Sent: Thursday, January 25, 2018 2:03 PM
> To: Zhang, Qi Z <qi.z.zhang@intel.com>; Xing, Beilei <beilei.xing@intel.com>
> Cc: dev@dpdk.org; Zhao1, Wei <wei.zhao1@intel.com>; Zhang, Qi Z
> <qi.z.zhang@intel.com>
> Subject: RE: [dpdk-dev] [PATCH] net/i40e: fix bug in RSS flow action parser
>
> Hi Qi,
>
> > -----Original Message-----
> > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Qi Zhang
> > Sent: Thursday, January 25, 2018 1:11 PM
> > To: Xing, Beilei <beilei.xing@intel.com>
> > Cc: dev@dpdk.org; Zhao1, Wei <wei.zhao1@intel.com>; Zhang, Qi Z
> > <qi.z.zhang@intel.com>
> > Subject: [dpdk-dev] [PATCH] net/i40e: fix bug in RSS flow action
> > parser
> >
> > Parameter action_flag is not used correctly in i40e_flow_parse_rss_action.
> > Also change it from point type to value type since it is not an output
> > parameter.
> >
> > Fixes: ecad87d22383e ("net/i40e: move RSS to flow API")
> >
> > Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
> > ---
> > drivers/net/i40e/i40e_flow.c | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/net/i40e/i40e_flow.c
> > b/drivers/net/i40e/i40e_flow.c index a74fa08ab..74708f168 100644
> > --- a/drivers/net/i40e/i40e_flow.c
> > +++ b/drivers/net/i40e/i40e_flow.c
> > @@ -4188,7 +4188,7 @@ static int
> > i40e_flow_parse_rss_action(struct rte_eth_dev *dev,
> > const struct rte_flow_action *actions,
> > struct rte_flow_error *error,
> > - uint8_t *action_flag,
> > + uint8_t action_flag,
> > struct i40e_queue_regions *conf_info,
> > union i40e_filter_t *filter)
> > {
> > @@ -4378,7 +4378,7 @@ i40e_parse_rss_filter(struct rte_eth_dev *dev,
> > return ret;
> >
> > ret = i40e_flow_parse_rss_action(dev, actions, error,
> > - &action_flag, &info, filter);
> > + action_flag, &info, filter);
>
> I wonder if action_flag == ture targets to handle only the case
> RTE_FLOW_ITEM_TYPE_ETH ?
Base on Zhao Wei's current design, action_flag is the flag to distinguish if queue region RSS is based on specific flow type ( when it is true) or based on vlan priority (when it is false)
Action_flag is decide by the pattern sequence eth only => 1, or eth +vlan | vlan only => 0
Regards
Qi
>
> Thanks
> Zhiyong
>
> > if (ret)
> > return ret;
> >
> > --
> > 2.13.6
>
> -----Original Message-----
> From: Zhang, Qi Z
> Sent: Thursday, January 25, 2018 3:50 PM
> To: Yang, Zhiyong <zhiyong.yang@intel.com>; Xing, Beilei
> <beilei.xing@intel.com>
> Cc: dev@dpdk.org; Zhao1, Wei <wei.zhao1@intel.com>
> Subject: RE: [dpdk-dev] [PATCH] net/i40e: fix bug in RSS flow action parser
>
>
>
> > -----Original Message-----
> > From: Yang, Zhiyong
> > Sent: Thursday, January 25, 2018 2:03 PM
> > To: Zhang, Qi Z <qi.z.zhang@intel.com>; Xing, Beilei
> > <beilei.xing@intel.com>
> > Cc: dev@dpdk.org; Zhao1, Wei <wei.zhao1@intel.com>; Zhang, Qi Z
> > <qi.z.zhang@intel.com>
> > Subject: RE: [dpdk-dev] [PATCH] net/i40e: fix bug in RSS flow action
> > parser
> >
> > Hi Qi,
> >
> > > -----Original Message-----
> > > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Qi Zhang
> > > Sent: Thursday, January 25, 2018 1:11 PM
> > > To: Xing, Beilei <beilei.xing@intel.com>
> > > Cc: dev@dpdk.org; Zhao1, Wei <wei.zhao1@intel.com>; Zhang, Qi Z
> > > <qi.z.zhang@intel.com>
> > > Subject: [dpdk-dev] [PATCH] net/i40e: fix bug in RSS flow action
> > > parser
> > >
> > > Parameter action_flag is not used correctly in
> i40e_flow_parse_rss_action.
> > > Also change it from point type to value type since it is not an
> > > output parameter.
> > >
> > > Fixes: ecad87d22383e ("net/i40e: move RSS to flow API")
> > >
> > > Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
> > > ---
> > > drivers/net/i40e/i40e_flow.c | 4 ++--
> > > 1 file changed, 2 insertions(+), 2 deletions(-)
> > >
> > > diff --git a/drivers/net/i40e/i40e_flow.c
> > > b/drivers/net/i40e/i40e_flow.c index a74fa08ab..74708f168 100644
> > > --- a/drivers/net/i40e/i40e_flow.c
> > > +++ b/drivers/net/i40e/i40e_flow.c
> > > @@ -4188,7 +4188,7 @@ static int
> > > i40e_flow_parse_rss_action(struct rte_eth_dev *dev,
> > > const struct rte_flow_action *actions,
> > > struct rte_flow_error *error,
> > > - uint8_t *action_flag,
> > > + uint8_t action_flag,
> > > struct i40e_queue_regions *conf_info,
> > > union i40e_filter_t *filter) { @@ -4378,7 +4378,7
> @@
> > > i40e_parse_rss_filter(struct rte_eth_dev *dev,
> > > return ret;
> > >
> > > ret = i40e_flow_parse_rss_action(dev, actions, error,
> > > - &action_flag, &info, filter);
> > > + action_flag, &info, filter);
> >
> > I wonder if action_flag == ture targets to handle only the case
> > RTE_FLOW_ITEM_TYPE_ETH ?
>
> Base on Zhao Wei's current design, action_flag is the flag to distinguish if
> queue region RSS is based on specific flow type ( when it is true) or based on
> vlan priority (when it is false) Action_flag is decide by the pattern sequence
> eth only => 1, or eth +vlan | vlan only => 0
Ok, thanks for detailed explanation.
Zhiyong
>
> Regards
> Qi
> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Zhao1, Wei
> Sent: Thursday, January 25, 2018 1:16 PM
> To: Zhang, Qi Z; Xing, Beilei
> Cc: dev@dpdk.org
> Subject: Re: [dpdk-dev] [PATCH] net/i40e: fix bug in RSS flow action parser
>
>
> > -----Original Message-----
> > From: Zhang, Qi Z
> > Sent: Thursday, January 25, 2018 1:11 PM
> > To: Xing, Beilei <beilei.xing@intel.com>
> > Cc: dev@dpdk.org; Zhao1, Wei <wei.zhao1@intel.com>; Zhang, Qi Z
> > <qi.z.zhang@intel.com>
> > Subject: [PATCH] net/i40e: fix bug in RSS flow action parser
> >
> > Parameter action_flag is not used correctly in i40e_flow_parse_rss_action.
> > Also change it from point type to value type since it is not an output
> > parameter.
> >
> > Fixes: ecad87d22383e ("net/i40e: move RSS to flow API")
> >
> > Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
> > ---
> > drivers/net/i40e/i40e_flow.c | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/net/i40e/i40e_flow.c
> > b/drivers/net/i40e/i40e_flow.c index a74fa08ab..74708f168 100644
> > --- a/drivers/net/i40e/i40e_flow.c
> > +++ b/drivers/net/i40e/i40e_flow.c
> > @@ -4188,7 +4188,7 @@ static int
> > i40e_flow_parse_rss_action(struct rte_eth_dev *dev,
> > const struct rte_flow_action *actions,
> > struct rte_flow_error *error,
> > - uint8_t *action_flag,
> > + uint8_t action_flag,
> > struct i40e_queue_regions *conf_info,
> > union i40e_filter_t *filter)
> > {
> > @@ -4378,7 +4378,7 @@ i40e_parse_rss_filter(struct rte_eth_dev *dev,
> > return ret;
> >
> > ret = i40e_flow_parse_rss_action(dev, actions, error,
> > - &action_flag, &info, filter);
> > + action_flag, &info, filter);
> > if (ret)
> > return ret;
> >
> > --
> > 2.13.6
>
> Acked-by Wei Zhao <wei.zhao1@intel.com>
Applied to dpdk-next-net-intel, thanks!
/Helin
@@ -4188,7 +4188,7 @@ static int
i40e_flow_parse_rss_action(struct rte_eth_dev *dev,
const struct rte_flow_action *actions,
struct rte_flow_error *error,
- uint8_t *action_flag,
+ uint8_t action_flag,
struct i40e_queue_regions *conf_info,
union i40e_filter_t *filter)
{
@@ -4378,7 +4378,7 @@ i40e_parse_rss_filter(struct rte_eth_dev *dev,
return ret;
ret = i40e_flow_parse_rss_action(dev, actions, error,
- &action_flag, &info, filter);
+ action_flag, &info, filter);
if (ret)
return ret;