On Tue, Jul 30, 2024 at 11:45:40AM +0000, Praveen Shetty wrote: > In case of CPFL PMD, port_representor action is used for > the local vport and represented_port action is used for > the remote port(remote port in this case is either the idpf > pf or the vf port that is being represeted by the cpfl pmd). > Any mismatch in either of the cases PMD will throw > an error. > > Fixes: 441e777b85f1 ("net/cpfl: support represented port action") > Cc: sta...@dpdk.org > > Signed-off-by: Praveen Shetty <praveen.she...@intel.com>
Acked-by: Bruce Richardson <bruce.richard...@intel.com> Applied to dpdk-next-net-intel with minor indent fixup. > --- > drivers/net/cpfl/cpfl_flow_engine_fxp.c | 11 +++++++++++ > 1 file changed, 11 insertions(+) > > diff --git a/drivers/net/cpfl/cpfl_flow_engine_fxp.c > b/drivers/net/cpfl/cpfl_flow_engine_fxp.c > index b9e825ef57..e760acd722 100644 > --- a/drivers/net/cpfl/cpfl_flow_engine_fxp.c > +++ b/drivers/net/cpfl/cpfl_flow_engine_fxp.c > @@ -292,6 +292,17 @@ cpfl_fxp_parse_action(struct cpfl_itf *itf, > > is_vsi = (action_type == > RTE_FLOW_ACTION_TYPE_PORT_REPRESENTOR || > dst_itf->type == CPFL_ITF_TYPE_REPRESENTOR); > + /* Added checks to throw an error for the invalid > action types. */ > + if (action_type == > RTE_FLOW_ACTION_TYPE_PORT_REPRESENTOR && > + dst_itf->type == CPFL_ITF_TYPE_REPRESENTOR) { > + PMD_DRV_LOG(ERR, "Cannot use port_representor > action for the represented_port"); > + goto err; > + } > + if (action_type == > RTE_FLOW_ACTION_TYPE_REPRESENTED_PORT && > + dst_itf->type == CPFL_ITF_TYPE_VPORT) { > + PMD_DRV_LOG(ERR, "Cannot use represented_port > action for the local vport"); > + goto err; > + } > if (is_vsi) > dev_id = cpfl_get_vsi_id(dst_itf); > else > -- > 2.34.1 >