On Sun, May 14, 2017 at 03:50:04PM -0400, Qi Zhang wrote: > We try to enable ixgbe's signature match with rte_flow, but didn't > find a way with current APIs, so the RFC propose to add a new flow > attribute "sig_match" to indicate if current flow is "perfect match" > or "signature match" > With perfect match (by default), if a packet does not match pattern, > actions will not be taken. (this is identical with current behavior) > With signature match, if a packet does not match pattern, it still > has the possibility to trigger the actions, this happens when device > think the signature of the pattern is matched. > Signature match is expected to have better performance than perfect > match with the cost of accuracy. > When a flow rule with this attribute set, identical behavior can ONLY > be guaranteed if packet matches the pattern, since different device > may have different implementation of signature calculation algorithm. > Driver of device that does not support signature match is not required to > return error, but just simply igore this attribute, because the default > "perfect match" still can be regarded as a speical case of > "signature match". > > Qi Zhang (2): > rte_flow: add attribute for signature match > doc/guides/prog_guide: add new rte_flow attribute > > app/test-pmd/cmdline_flow.c | 11 +++++++++++ > doc/guides/prog_guide/rte_flow.rst | 12 ++++++++++++ > lib/librte_ether/rte_flow.h | 3 ++- > 3 files changed, 25 insertions(+), 1 deletion(-)
As discussed offline, modifying struct rte_flow_attr for this purpose is not ideal. We've agreed that a new meta pattern item should be defined instead, as described in the FDIR rules conversion section (8.9.7) of the documentation [1]. [1] http://dpdk.org/doc/guides/prog_guide/rte_flow.html#fdir-to-most-item-types-queue-drop-passthru -- Adrien Mazarguil 6WIND