From: "Ouyang, Changchun" <changchun.ouyang@intel.com>
To: Vladislav Zolotarov <vladz@cloudius-systems.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH v3 0/6] Enable VF RSS for Niantic
Date: Fri, 26 Dec 2014 05:25:47 +0000 [thread overview]
Message-ID: <F52918179C57134FAEC9EA62FA2F96251194BBE1@shsmsx102.ccr.corp.intel.com> (raw)
In-Reply-To: <CAOYyTHaYdLUCq2ATCbWu6sWY4StQLRmGb7uhnhO3t-nxG4KTjA@mail.gmail.com>
Hi Vladislav,
From: Vladislav Zolotarov [mailto:vladz@cloudius-systems.com]
Sent: Friday, December 26, 2014 1:16 PM
To: Ouyang, Changchun
Cc: dev@dpdk.org
Subject: RE: [dpdk-dev] [PATCH v3 0/6] Enable VF RSS for Niantic
On Dec 26, 2014 4:41 AM, "Ouyang, Changchun" <changchun.ouyang@intel.com<mailto:changchun.ouyang@intel.com>> wrote:
>
>
>
> > -----Original Message-----
> > From: Vlad Zolotarov [mailto:vladz@cloudius-systems.com<mailto:vladz@cloudius-systems.com>]
> > Sent: Thursday, December 25, 2014 8:46 PM
> > To: Ouyang, Changchun; dev@dpdk.org<mailto:dev@dpdk.org>
> > Subject: Re: [dpdk-dev] [PATCH v3 0/6] Enable VF RSS for Niantic
> >
> >
> > On 12/25/14 04:26, Ouyang, Changchun wrote:
> > > Hi,
> > >
> > >> -----Original Message-----
> > >> From: Vlad Zolotarov [mailto:vladz@cloudius-systems.com<mailto:vladz@cloudius-systems.com>]
> > >> Sent: Wednesday, December 24, 2014 6:49 PM
> > >> To: Ouyang, Changchun;dev@dpdk.org<mailto:Changchun%3Bdev@dpdk.org>
> > >> Subject: Re: [dpdk-dev] [PATCH v3 0/6] Enable VF RSS for Niantic
> > >>
> > >>
> > >> On 12/24/14 07:22, Ouyang Changchun wrote:
> > >>> This patch enables VF RSS for Niantic, which allow each VF having at
> > >>> most 4
> > >> queues.
> > >>> The actual queue number per VF depends on the total number of pool,
> > >>> which is determined by the total number of VF at PF initialization
> > >>> stage and the number of queue specified in config:
> > >>> 1) If the number of VF is in the range from 1 to 32 and the number
> > >>> of rxq is 4('--rxq 4' in testpmd), then there is totally 32
> > >>> pools(ETH_32_POOLS), and each VF have 4 queues;
> > >>>
> > >>> 2)If the number of VF is in the range from 33 to 64 and the number
> > >>> of rxq is 2('--rxq 2' in testpmd), then there is totally 64
> > >>> pools(ETH_64_POOLS), and each VF have 2 queues;
> > >>>
> > >>> On host, to enable VF RSS functionality, rx mq mode should be set as
> > >>> ETH_MQ_RX_VMDQ_RSS or ETH_MQ_RX_RSS mode, and SRIOV mode
> > >> should be activated(max_vfs >= 1).
> > >>> It also needs config VF RSS information like hash function, RSS key,
> > >>> RSS key
> > >> length.
> > >>> The limitation for Niantic VF RSS is:
> > >>> the hash and key are shared among PF and all VF, the RETA table with
> > >>> 128 entries are also shared among PF and all VF. So it is not good
> > >>> idea to query the hash and reta content per VF on guest, instead, it
> > >>> makes
> > >> sense to query them on host(PF).
> > >>> v3 change:
> > >>> - More cleanup;
> > >> This series is still missing the appropriate patches in the
> > >> rte_eth_dev_info_get() flow to return a reta_size for a VF device;
> > >> and to
> > >> rte_eth_dev_rss_reta_query() in the context of a VF device (I haven't
> > >> noticed the initialization of a
> > >> dev->dev_ops->reta_query for the VF device in this series).
> > >>
> > >> Without these code bits it's impossible to work with the VF devices
> > >> in the RSS context the same way we work with the PF devices. It means
> > >> that we'll have to do some special branching to handle the VF device
> > >> and this voids the whole meaning of the framework which in turn is very
> > unfortunate.
> > >>
> > > Again pls try to query reta content on pf/host, this is due to hw
> > > limitation,
> >
> > Again, I'm using DPDK from inside a Guest OS on Amazon Cloud. I have no
> > and will never have an access to the PF due to obvious reasons thus I can't
> > query it.
> > Which HW limitations u are referring? It's a clear software issue - the VF-PF
> > channel protocol should have a message to negotiate it but it looks like Intel
> > hasn't cared to implemented it yet unless I miss something here.
> > The problems don't end with the RETA. What about the hash key, which is
> > also shared? There isn't an appropriate message to query it either. This is not
> > a pure DPDK issue - it's a general issue with Linux 82599 drivers.
> >
> On this point, I agree with you, it is not pure dpdk issue,
> Dpdk use share codes(partly come from Linux 82599, and logically similar with it) from another division, the hw is also implemented by that division.
> If we are talking about hw limitation and modify share code, linux 82599 driver to fully enable vf rss all
> Functionality in Niantic, just talking about it in dpdk.org<http://dpdk.org> mailing list may not be enough.
> Personally I think maybe you could find another effective and efficient way to raise your further request.
You r right. Apparently at this point you just can't "meet my demands" because there's no support for these queries in the PF driver. ;) So, let's move on.
I'll send the appropriate patch on the netdev list and we'll see how it goes from there.
Changchun: yes, please go forward to do it.
>
> > > It don't affect any functionality, just the querying is special.
> >
> > How can u call the fact that some of DPDK API functionality is missing as "it
> > don't affect any functionality"? Of course it affects it. Just like I said it may
> > cause us treat the VF in the special way while there is not any real reason to
> > do so.
> I mean each vf could use multiple queues and do rss for packets,
> This functionality works well.
> If you could bypass the querying issue or handling it specially, you still could use the vf rss.
>
> > > Before this patch, customer often was notified Niantic can't support
> > > vf rss, But with lots of experiments and find that it still has limited vf rss
> > functionality.
> > > Even on that, linux ixgbe driver has at most 2 queues per vf, But the
> > > dpdk could enable 4 queues per vf.
> > > In summary, dpdk could support vf rss on Niantic with at most 4 queues
> > > per vf, but the querying of reta is very limited due to the HW limitation.
> >
> > Limited? I meant missing, right?
> We are meaning same thing in different way,
> "very limited" mean it still could query it on pf, but missing(or could not do it) on vf/guest
Again, agreed. I just so pissed that we have to rewrite so nice design just because this simple piece of software is missing in the PF.
> >
> > > Hope you are on the same page now.
We are now... 😉
Changchun: very glad to see this! ☺
Thanks and regards,
Changchun
next prev parent reply other threads:[~2014-12-26 5:25 UTC|newest]
Thread overview: 144+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-12-15 2:56 [dpdk-dev] [PATCH " Ouyang Changchun
2014-12-15 2:57 ` [dpdk-dev] [PATCH 1/6] ixgbe: Code cleanup Ouyang Changchun
2014-12-15 2:57 ` [dpdk-dev] [PATCH 2/6] ixgbe: Negotiate VF API version Ouyang Changchun
2014-12-15 2:57 ` [dpdk-dev] [PATCH 3/6] ixgbe: Get VF queue number Ouyang Changchun
2014-12-15 2:57 ` [dpdk-dev] [PATCH 4/6] ether: Check VMDq RSS mode Ouyang Changchun
2014-12-15 2:57 ` [dpdk-dev] [PATCH 5/6] ixgbe: Config VF RSS Ouyang Changchun
2014-12-15 2:57 ` [dpdk-dev] [PATCH 6/6] testpmd: Set Rx VMDq RSS mode Ouyang Changchun
2014-12-15 10:55 ` [dpdk-dev] [PATCH 0/6] Enable VF RSS for Niantic Bruce Richardson
2014-12-16 0:58 ` Ouyang, Changchun
2014-12-24 2:56 ` [dpdk-dev] [PATCH v2 " Ouyang Changchun
2014-12-24 2:56 ` [dpdk-dev] [PATCH v2 1/6] ixgbe: Code cleanup Ouyang Changchun
2014-12-24 3:08 ` Zhang, Helin
2014-12-24 3:22 ` Ouyang, Changchun
2014-12-24 3:41 ` Zhang, Helin
2014-12-24 3:50 ` Ouyang, Changchun
2014-12-24 3:53 ` Zhang, Helin
2014-12-24 4:46 ` Ouyang, Changchun
2014-12-24 2:56 ` [dpdk-dev] [PATCH v2 2/6] ixgbe: Negotiate VF API version Ouyang Changchun
2014-12-24 2:56 ` [dpdk-dev] [PATCH v2 3/6] ixgbe: Get VF queue number Ouyang Changchun
2014-12-24 2:56 ` [dpdk-dev] [PATCH v2 4/6] ether: Check VMDq RSS mode Ouyang Changchun
2014-12-24 2:56 ` [dpdk-dev] [PATCH v2 5/6] ixgbe: Config VF RSS Ouyang Changchun
2014-12-24 2:56 ` [dpdk-dev] [PATCH v2 6/6] testpmd: Set Rx VMDq RSS mode Ouyang Changchun
2014-12-24 5:22 ` [dpdk-dev] [PATCH v3 0/6] Enable VF RSS for Niantic Ouyang Changchun
2014-12-24 5:22 ` [dpdk-dev] [PATCH v3 1/6] ixgbe: Code cleanup Ouyang Changchun
2014-12-24 5:23 ` [dpdk-dev] [PATCH v3 2/6] ixgbe: Negotiate VF API version Ouyang Changchun
2014-12-24 5:23 ` [dpdk-dev] [PATCH v3 3/6] ixgbe: Get VF queue number Ouyang Changchun
2014-12-24 5:23 ` [dpdk-dev] [PATCH v3 4/6] ether: Check VMDq RSS mode Ouyang Changchun
2014-12-24 5:23 ` [dpdk-dev] [PATCH v3 5/6] ixgbe: Config VF RSS Ouyang Changchun
2014-12-24 10:39 ` Vlad Zolotarov
2014-12-25 2:14 ` Ouyang, Changchun
2014-12-25 13:13 ` Vlad Zolotarov
2014-12-26 2:07 ` Ouyang, Changchun
2014-12-25 2:43 ` Ouyang, Changchun
2014-12-25 13:20 ` Vlad Zolotarov
2014-12-26 1:52 ` Ouyang, Changchun
2014-12-26 6:49 ` Vladislav Zolotarov
2014-12-26 7:26 ` Ouyang, Changchun
2014-12-26 7:37 ` Vladislav Zolotarov
2014-12-26 8:45 ` Ouyang, Changchun
2014-12-28 10:14 ` Vlad Zolotarov
2015-01-05 10:29 ` Bruce Richardson
2015-01-06 1:00 ` Ouyang, Changchun
2014-12-25 13:38 ` Vlad Zolotarov
2014-12-26 1:26 ` Ouyang, Changchun
2015-01-04 2:10 ` Liang, Cunming
2015-01-04 6:25 ` Ouyang, Changchun
2014-12-24 5:23 ` [dpdk-dev] [PATCH v3 6/6] testpmd: Set Rx VMDq RSS mode Ouyang Changchun
2014-12-24 9:59 ` [dpdk-dev] [PATCH v3 0/6] Enable VF RSS for Niantic Vlad Zolotarov
2014-12-25 1:46 ` Ouyang, Changchun
2015-01-05 10:38 ` Bruce Richardson
2015-01-05 13:02 ` Vlad Zolotarov
2015-01-06 1:11 ` Ouyang, Changchun
2015-01-06 11:18 ` Vlad Zolotarov
2015-01-06 11:18 ` Vlad Zolotarov
2015-01-06 1:04 ` Ouyang, Changchun
2014-12-24 10:49 ` Vlad Zolotarov
2014-12-25 2:26 ` Ouyang, Changchun
2014-12-25 12:46 ` Vlad Zolotarov
2014-12-26 2:37 ` Ouyang, Changchun
[not found] ` <CAOYyTHbrB-VinN5ZEd1tYTnS7_GhCT1jiHiZzNKkQUEJ1rG79w@mail.gmail.com>
2014-12-26 5:16 ` Vladislav Zolotarov
2014-12-26 5:25 ` Ouyang, Changchun [this message]
2015-01-04 7:18 ` [dpdk-dev] [PATCH v4 " Ouyang Changchun
2015-01-04 7:18 ` [dpdk-dev] [PATCH v4 1/6] ixgbe: Code cleanup Ouyang Changchun
2015-01-04 8:22 ` Vlad Zolotarov
2015-01-04 7:18 ` [dpdk-dev] [PATCH v4 2/6] ixgbe: Negotiate VF API version Ouyang Changchun
2015-01-04 8:26 ` Vlad Zolotarov
2015-01-04 8:30 ` Vlad Zolotarov
2015-01-04 8:37 ` Ouyang, Changchun
2015-01-04 8:40 ` Vlad Zolotarov
2015-01-04 8:51 ` Ouyang, Changchun
2015-01-04 9:37 ` Vlad Zolotarov
2015-01-04 7:18 ` [dpdk-dev] [PATCH v4 3/6] ixgbe: Get VF queue number Ouyang Changchun
2015-01-04 8:38 ` Vlad Zolotarov
2015-01-05 2:59 ` Ouyang, Changchun
2015-01-05 10:07 ` Vlad Zolotarov
2015-01-06 1:54 ` Ouyang, Changchun
2015-01-06 11:26 ` Vlad Zolotarov
2015-01-07 1:18 ` Ouyang, Changchun
2015-01-04 7:18 ` [dpdk-dev] [PATCH v4 4/6] ether: Check VMDq RSS mode Ouyang Changchun
2015-01-04 8:45 ` Vlad Zolotarov
2015-01-04 8:58 ` Ouyang, Changchun
2015-01-04 9:45 ` Vlad Zolotarov
2015-01-05 1:00 ` Ouyang, Changchun
2015-01-05 10:09 ` Vlad Zolotarov
2015-01-06 1:56 ` Ouyang, Changchun
2015-01-06 19:56 ` Vlad Zolotarov
2015-01-07 2:28 ` Ouyang, Changchun
2015-01-04 7:18 ` [dpdk-dev] [PATCH v4 5/6] ixgbe: Config VF RSS Ouyang Changchun
2015-01-04 7:18 ` [dpdk-dev] [PATCH v4 6/6] testpmd: Set Rx VMDq RSS mode Ouyang Changchun
2015-01-04 8:49 ` Vlad Zolotarov
2015-01-04 9:01 ` Ouyang, Changchun
2015-01-04 9:46 ` Vlad Zolotarov
2015-01-05 2:38 ` Ouyang, Changchun
2015-01-05 10:12 ` Vlad Zolotarov
2015-01-06 2:01 ` Ouyang, Changchun
2015-01-06 12:53 ` Vlad Zolotarov
2015-01-07 1:50 ` Ouyang, Changchun
2015-01-07 6:32 ` [dpdk-dev] [PATCH v5 0/6] Enable VF RSS for Niantic Ouyang Changchun
2015-01-07 6:32 ` [dpdk-dev] [PATCH v5 1/6] ixgbe: Code cleanup Ouyang Changchun
2015-01-07 6:32 ` [dpdk-dev] [PATCH v5 2/6] ixgbe: Negotiate VF API version Ouyang Changchun
2015-01-07 6:32 ` [dpdk-dev] [PATCH v5 3/6] ixgbe: Get VF queue number Ouyang Changchun
2015-01-08 9:01 ` Vlad Zolotarov
2015-01-07 6:32 ` [dpdk-dev] [PATCH v5 4/6] ether: Check VMDq RSS mode Ouyang Changchun
2015-01-08 9:19 ` Vlad Zolotarov
2015-01-08 18:48 ` Vlad Zolotarov
2015-01-09 5:54 ` Ouyang, Changchun
2015-01-09 13:49 ` Vlad Zolotarov
2015-01-12 3:41 ` Ouyang, Changchun
2015-01-12 13:58 ` Vlad Zolotarov
2015-01-13 1:50 ` Ouyang, Changchun
2015-01-13 9:00 ` Vlad Zolotarov
2015-01-14 0:44 ` Ouyang, Changchun
2015-01-07 6:32 ` [dpdk-dev] [PATCH v5 5/6] ixgbe: Config VF RSS Ouyang Changchun
2015-01-08 9:43 ` Vlad Zolotarov
2015-01-09 6:07 ` Ouyang, Changchun
2015-01-09 14:01 ` Vlad Zolotarov
2015-01-12 5:11 ` Ouyang, Changchun
2015-01-07 6:32 ` [dpdk-dev] [PATCH v5 6/6] testpmd: Set Rx VMDq RSS mode Ouyang Changchun
2015-01-08 9:46 ` Vlad Zolotarov
2015-01-08 9:56 ` [dpdk-dev] [PATCH v5 0/6] Enable VF RSS for Niantic Vlad Zolotarov
2015-01-18 21:58 ` Thomas Monjalon
2015-01-19 9:40 ` Vlad Zolotarov
2015-01-12 5:59 ` [dpdk-dev] [PATCH v6 " Ouyang Changchun
2015-01-12 5:59 ` [dpdk-dev] [PATCH v6 1/6] ixgbe: Code cleanup Ouyang Changchun
2015-01-12 5:59 ` [dpdk-dev] [PATCH v6 2/6] ixgbe: Negotiate VF API version Ouyang Changchun
2015-01-12 5:59 ` [dpdk-dev] [PATCH v6 3/6] ixgbe: Get VF queue number Ouyang Changchun
2015-01-19 9:13 ` Wodkowski, PawelX
2015-01-20 0:54 ` Ouyang, Changchun
2015-01-12 5:59 ` [dpdk-dev] [PATCH v6 4/6] ether: Check VMDq RSS mode Ouyang Changchun
2015-01-12 14:06 ` Vlad Zolotarov
2015-01-18 22:04 ` Thomas Monjalon
2015-01-19 10:31 ` Wodkowski, PawelX
2015-01-20 1:03 ` Ouyang, Changchun
2015-01-12 5:59 ` [dpdk-dev] [PATCH v6 5/6] ixgbe: Config VF RSS Ouyang Changchun
2015-01-12 14:04 ` Vlad Zolotarov
2015-01-20 9:35 ` Wodkowski, PawelX
2015-01-21 2:43 ` Ouyang, Changchun
2015-01-21 8:44 ` Wodkowski, PawelX
2015-01-22 12:59 ` Vlad Zolotarov
2015-01-22 13:19 ` Wodkowski, PawelX
2015-01-12 5:59 ` [dpdk-dev] [PATCH v6 6/6] testpmd: Set Rx VMDq RSS mode Ouyang Changchun
2015-01-12 14:05 ` Vlad Zolotarov
2015-01-18 22:24 ` [dpdk-dev] [PATCH v6 0/6] Enable VF RSS for Niantic Thomas Monjalon
2015-01-19 4:51 ` Ouyang, Changchun
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=F52918179C57134FAEC9EA62FA2F96251194BBE1@shsmsx102.ccr.corp.intel.com \
--to=changchun.ouyang@intel.com \
--cc=dev@dpdk.org \
--cc=vladz@cloudius-systems.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
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).