From 99d7e55750eecb4e8c52af53f4e38567f12c3328 Mon Sep 17 00:00:00 2001 From: Jingjing Wu Date: Wed, 4 Nov 2015 11:29:09 +0800 Subject: [PATCH] ethdev: extend flow director to support VF This patch extends struct rte_eth_fdir_flow_ext to support flow director in VFs. Signed-off-by: Jingjing Wu --- doc/guides/rel_notes/deprecation.rst | 4 ---- doc/guides/rel_notes/release_2_2.rst | 3 +++ lib/librte_ether/rte_eth_ctrl.h | 2 ++ 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst index 730c3b7abc..9fdd25ca24 100644 --- a/doc/guides/rel_notes/deprecation.rst +++ b/doc/guides/rel_notes/deprecation.rst @@ -12,10 +12,6 @@ Deprecation Notices ibadcrc, ibadlen, imcasts, fdirmatch, fdirmiss, tx_pause_xon, rx_pause_xon, tx_pause_xoff, rx_pause_xoff -* ABI changes are planned for struct rte_eth_fdir_flow_ext in order to support - flow director filtering in VF. The release 2.1 does not contain these ABI - changes, but release 2.2 will, and no backwards compatibility is planned. - * ABI changes are planned for struct rte_eth_fdir_filter and rte_eth_fdir_masks in order to support new flow director modes, MAC VLAN and Cloud, on x550. The MAC VLAN mode means the MAC and diff --git a/doc/guides/rel_notes/release_2_2.rst b/doc/guides/rel_notes/release_2_2.rst index b7ab27af94..76a1640355 100644 --- a/doc/guides/rel_notes/release_2_2.rst +++ b/doc/guides/rel_notes/release_2_2.rst @@ -219,6 +219,9 @@ ABI Changes * The ethdev flow director entries for SCTP were changed. It was already done in 2.1 for CONFIG_RTE_NEXT_ABI. +* The ethdev flow director structure rte_eth_fdir_flow_ext structure is changed. + New fields are added to support flow director filtering in VF. + * The size of the ethdev structure rte_eth_hash_filter_info is changed by adding a new element rte_eth_input_set_conf in an union. diff --git a/lib/librte_ether/rte_eth_ctrl.h b/lib/librte_ether/rte_eth_ctrl.h index 56dd7ae9a9..06fcaf9cb0 100644 --- a/lib/librte_ether/rte_eth_ctrl.h +++ b/lib/librte_ether/rte_eth_ctrl.h @@ -523,6 +523,8 @@ struct rte_eth_fdir_flow_ext { uint16_t vlan_tci; uint8_t flexbytes[RTE_ETH_FDIR_MAX_FLEXLEN]; /**< It is filled by the flexible payload to match. */ + uint8_t is_vf; /**< 1 for VF, 0 for port dev */ + uint16_t dst_id; /**< VF ID, available when is_vf is 1*/ }; /** -- 2.20.1