On 8/2/2021 8:57 AM, Wenjun Wu wrote: > Add support of FDIR L3 fields for both IPv4 and IPv6 fragment packets. >
Description mentions from both IPv4 & IPv6 but only IPv6 macro is updated, is this expected? Is following correct: Before this patch flow director rules were not applied to fragmented IPv4 & IPv6 packets (so packets were not able to sent to specific queues), but after this patch it does. Is it the case that HW configuration was missing and hash is not calculated for these kind of packets etc.. If you have more details can you please provide? Also what was happening to these packets previously, sent to queue 0 by default? Overall can please provide more description and check below question related to 'field_selector'? Thanks, ferruh > Signed-off-by: Wenjun Wu <wenjun1...@intel.com> > --- > drivers/net/iavf/iavf_fdir.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/net/iavf/iavf_fdir.c b/drivers/net/iavf/iavf_fdir.c > index da3eec8b59..32b06044f2 100644 > --- a/drivers/net/iavf/iavf_fdir.c > +++ b/drivers/net/iavf/iavf_fdir.c > @@ -57,7 +57,7 @@ > IAVF_INSET_IPV6_HOP_LIMIT) > > #define IAVF_FDIR_INSET_ETH_IPV6_FRAG_EXT (\ > - IAVF_INSET_IPV6_ID) > + IAVF_FDIR_INSET_ETH_IPV6 | IAVF_INSET_IPV6_ID) > > #define IAVF_FDIR_INSET_ETH_IPV6_UDP (\ > IAVF_INSET_IPV6_SRC | IAVF_INSET_IPV6_DST | \ > @@ -664,6 +664,7 @@ iavf_fdir_add_fragment_hdr(struct virtchnl_proto_hdrs > *hdrs, int layer) > /* adding dummy fragment header */ > hdr1 = &hdrs->proto_hdr[layer]; > VIRTCHNL_SET_PROTO_HDR_TYPE(hdr1, IPV4_FRAG); > + hdr1->field_selector = 0; Is this change related to new support, or fixing something that was missing previously? > hdrs->count = ++layer; > } > >