]> git.droids-corp.org - dpdk.git/commit
net/i40e: add flow mark capability to NEON Rx
authorJoyce Kong <joyce.kong@arm.com>
Fri, 17 Dec 2021 05:36:00 +0000 (05:36 +0000)
committerQi Zhang <qi.z.zhang@intel.com>
Tue, 15 Feb 2022 16:06:06 +0000 (17:06 +0100)
commitdba9e3bcd9bb0c07108c693943f2d89cd2a2868e
treeee21d289be3c88b6f83ce5b8ae96c8642cfb3dd3
parent35cb5bd236301277d7fa7c571cfa57c07f5322af
net/i40e: add flow mark capability to NEON Rx

This commit adds a flow director support to i40e NEON
vector RX path.

I40e can have 16 and 32 byte descriptors, and the Flow
Director ID data and indication-bit are in different
locations for each size descriptor. The support is
implemented in two separate functions as they require
vastly different operations.

The 16B descriptor re-purposes the "filter-status" u32
field to indicate FDIR ID when the FLM bit is set. No
extra loads are required, however we do have to store
to mbuf->fdir.hi, which is not stored to in the RX path
before this patch.

The 32B descriptor requires loading the 2nd 16 bytes of
each descriptor, to get the FLEXBH_STAT and FD Filter ID
from qword3. The resulting data must also be stored to
mbuf->fdir.hi, same as the 16B code path.

Signed-off-by: Joyce Kong <joyce.kong@arm.com>
Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
drivers/net/i40e/i40e_rxtx_vec_neon.c