16/03/2022 13:01, Ilya Maximets: > 'has_vlan' attribute is only supported by sfc, mlx5 and cnxk. > Other drivers doesn't support it. Most of them (like i40e) just > ignore it silently. Some drivers (like mlx4) never had a full > support of the eth item even before introduction of 'has_vlan' > (mlx4 allows to match on the destination MAC only). > > Same for the 'has_more_vlan' flag of the vlan item. > > Changing the support level to 'partial' for all such drivers. > This doesn't solve the issue, but at least marks the problematic > drivers.
You changed "eth" and "vlan" from "Y" to "P". The field "has_vlan" is part of "rte_flow_item_eth", and "has_more_vlan" is part of "rte_flow_item_vlan", so I agree we need to change both items to "partial support". It looks to be a good change, just needs to more explicit, adding this kind of explanation about the fields. We missed this patch in 22.07, let's have some progress quickly. > Some details are available in: > https://bugs.dpdk.org/show_bug.cgi?id=958 About rte_flow_item_eth.{src,dst}, I don't find a deprecation notice about it in the history of the file doc/guides/rel_notes/deprecation.rst This is what we have in the code: union { struct { /* * These fields are retained for compatibility. * Please switch to the new header field below. */ struct rte_ether_addr dst; /**< Destination MAC. */ struct rte_ether_addr src; /**< Source MAC. */ rte_be16_t type; /**< EtherType or TPID. */ }; struct rte_ether_hdr hdr; }; Do you think we should remove the old fields now? > Fixes: 09315fc83861 ("ethdev: add VLAN attributes to ethernet and VLAN items") > Cc: sta...@dpdk.org > > Signed-off-by: Ilya Maximets <i.maxim...@ovn.org>