From: "Xing, Beilei" <beilei.xing@intel.com> To: "Cui, LunyuanX" <lunyuanx.cui@intel.com>, "dev@dpdk.org" <dev@dpdk.org> Cc: "Zhang, Qi Z" <qi.z.zhang@intel.com>, "Wu, Jingjing" <jingjing.wu@intel.com> Subject: Re: [dpdk-dev] [PATCH v2] net/i40e: enable MAC address as FDIR input set Date: Fri, 27 Mar 2020 12:18:27 +0000 Message-ID: <BYAPR11MB3541521899206FC64B06851BF7CC0@BYAPR11MB3541.namprd11.prod.outlook.com> (raw) In-Reply-To: <20200318031506.79773-1-lunyuanx.cui@intel.com> > -----Original Message----- > From: Cui, LunyuanX <lunyuanx.cui@intel.com> > Sent: Wednesday, March 18, 2020 11:15 AM > To: dev@dpdk.org > Cc: Xing, Beilei <beilei.xing@intel.com>; Zhang, Qi Z <qi.z.zhang@intel.com>; > Wu, Jingjing <jingjing.wu@intel.com>; Cui, LunyuanX > <lunyuanx.cui@intel.com> > Subject: [PATCH v2] net/i40e: enable MAC address as FDIR input set > > FVL enable both src MAC address and dst MAC address as FDIR's input set > for ipv4-other. And FVL enable only dst MAC address as FDIR's input set for > ipv4-other. Why emphasize input set 'src MAC address and dst MAC address' and ' dst MAC address ' as input set? Can't we support src MAC only? When OVS-DPDK is working as a pure L2 switch, Both two ways > match offload with Mark+RSS action would help the performance speed up. > And FVL FDIR supports to change input set as both two ways. > > Signed-off-by: Lunyuan Cui <lunyuanx.cui@intel.com> > > --- > v2: > - Enable src MAC address as FDIR's input set > --- > doc/guides/rel_notes/release_20_05.rst | 7 +++ > drivers/net/i40e/i40e_ethdev.c | 1 + > drivers/net/i40e/i40e_ethdev.h | 18 +++++++- > drivers/net/i40e/i40e_fdir.c | 22 +++++++-- > drivers/net/i40e/i40e_flow.c | 63 +++++++++++++++++++------- > 5 files changed, 89 insertions(+), 22 deletions(-) > > diff --git a/doc/guides/rel_notes/release_20_05.rst > b/doc/guides/rel_notes/release_20_05.rst > index 2190eaf85..f0efc5295 100644 > --- a/doc/guides/rel_notes/release_20_05.rst > +++ b/doc/guides/rel_notes/release_20_05.rst > @@ -56,6 +56,13 @@ New Features > Also, make sure to start the actual text at the margin. > ========================================================= > > +* **Updated Intel i40e driver.** > + > + Updated i40e PMD with new features and improvements, including: > + > + * enable only dst MAC address as FDIR input set for ipv4-other > + * enable both src MAC address and dst MAC address as FDIR input set > + for ipv4-other > + > Same here. > Removed Items > ------------- > diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c > index 9fbda1c34..d11df8d83 100644 > --- a/drivers/net/i40e/i40e_ethdev.c > +++ b/drivers/net/i40e/i40e_ethdev.c > @@ -9373,6 +9373,7 @@ i40e_get_valid_input_set(enum i40e_filter_pctype > pctype, > I40E_INSET_SRC_PORT | I40E_INSET_DST_PORT | > I40E_INSET_SCTP_VT, > [I40E_FILTER_PCTYPE_NONF_IPV4_OTHER] = > + I40E_INSET_DMAC | I40E_INSET_SMAC | > I40E_INSET_VLAN_OUTER | I40E_INSET_VLAN_INNER | > I40E_INSET_IPV4_SRC | I40E_INSET_IPV4_DST | > I40E_INSET_IPV4_TOS | I40E_INSET_IPV4_PROTO | diff --git > a/drivers/net/i40e/i40e_ethdev.h b/drivers/net/i40e/i40e_ethdev.h index > aac89de91..e8b98b67e 100644 > --- a/drivers/net/i40e/i40e_ethdev.h > +++ b/drivers/net/i40e/i40e_ethdev.h > @@ -544,12 +544,19 @@ struct i40e_ipv6_l2tpv3oip_flow { > uint32_t session_id; /* Session ID in big endian. */ }; > > +/* A structure used to define the input for l2 dst type flow */ struct l2 dst type flow? > +i40e_eth_l2_flow { Flow other names, use i40e_l2_flow here. > + struct rte_ether_addr dst; > + struct rte_ether_addr src; > + uint16_t ether_type; /**< Ether type in big endian */ > +}; > + > /* > * A union contains the inputs for all types of flow > * items in flows need to be in big endian > */ > union i40e_fdir_flow { > - struct rte_eth_l2_flow l2_flow; > + struct i40e_eth_l2_flow l2_flow; > struct rte_eth_udpv4_flow udp4_flow; > struct rte_eth_tcpv4_flow tcp4_flow; > struct rte_eth_sctpv4_flow sctp4_flow; > @@ -628,6 +635,13 @@ struct i40e_fdir_action { > uint8_t flex_off; > }; > > +/* Ether input set kinds */ > +enum i40e_fdir_eth_inset { > + I40E_ETH_INSET_NULL = 0, > + I40E_ETH_INSET_DMAC, > + I40E_ETH_INSET_SMAC_DMAC, > +}; What's the enumeration's purpose? Could you follow the original code for input set configuration and packet construct?
next prev parent reply other threads:[~2020-03-27 12:18 UTC|newest] Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-03-16 0:47 [dpdk-dev] [PATCH] net/i40e: enable dst " Lunyuan Cui 2020-03-18 3:15 ` [dpdk-dev] [PATCH v2] net/i40e: enable " Lunyuan Cui 2020-03-27 12:18 ` Xing, Beilei [this message] 2020-03-30 9:05 ` [dpdk-dev] [PATCH v3] " Lunyuan Cui 2020-03-31 9:33 ` Xing, Beilei 2020-04-01 7:50 ` [dpdk-dev] [PATCH v4] " Lunyuan Cui 2020-04-02 1:08 ` Xing, Beilei 2020-04-02 2:53 ` [dpdk-dev] [PATCH v5] " Lunyuan Cui 2020-04-02 6:39 ` [dpdk-dev] [PATCH v6] " Lunyuan Cui 2020-04-02 7:58 ` [dpdk-dev] [PATCH v7] " Lunyuan Cui 2020-04-02 8:25 ` Xing, Beilei 2020-04-08 6:44 ` Ye Xiaolong
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=BYAPR11MB3541521899206FC64B06851BF7CC0@BYAPR11MB3541.namprd11.prod.outlook.com \ --to=beilei.xing@intel.com \ --cc=dev@dpdk.org \ --cc=jingjing.wu@intel.com \ --cc=lunyuanx.cui@intel.com \ --cc=qi.z.zhang@intel.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
DPDK patches and discussions This inbox may be cloned and mirrored by anyone: git clone --mirror https://inbox.dpdk.org/dev/0 dev/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 dev dev/ https://inbox.dpdk.org/dev \ dev@dpdk.org public-inbox-index dev Example config snippet for mirrors. Newsgroup available over NNTP: nntp://inbox.dpdk.org/inbox.dpdk.dev AGPL code for this site: git clone https://public-inbox.org/public-inbox.git