From mboxrd@z Thu Jan 1 00:00:00 1970 From: Vlad Zolotarov Subject: Re: [PATCH v5 0/6] Enable VF RSS for Niantic Date: Thu, 08 Jan 2015 11:56:47 +0200 Message-ID: <54AE545F.4080704@cloudius-systems.com> References: <1420355937-18484-1-git-send-email-changchun.ouyang@intel.com> <1420612355-6666-1-git-send-email-changchun.ouyang@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit To: Ouyang Changchun , dev-VfR2kkLFssw@public.gmane.org Return-path: In-Reply-To: <1420612355-6666-1-git-send-email-changchun.ouyang-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces-VfR2kkLFssw@public.gmane.org Sender: "dev" On 01/07/15 08:32, 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 max number of VF at PF initialization stage and the number of > queue specified in config: > 1) If the max 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 max 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 could not to provide a method to query the hash > and reta content per VF on guest, while, if possible, please query them on host(PF) for > the shared RETA information. I've acked PATCH1 and PATCH2 already before and since there are no changes in them, pls., consider them ACKed... ;) > > changes in v5: > - Fix minor issue and some comments; > > changes in v4: > - Extract a function to remove embeded switch-case statement; > - Check whether RX queue number is a valid one, otherwise return error; > - Update the description a bit; > > changes in v3: > - More cleanup; > > changes in v2: > - Update the description; > - Use receiving queue number('--rxq ') specified in config to determine the > number of pool and the number of queue per VF; > > changes in v1: > - Config VF RSS; > > Changchun Ouyang (6): > ixgbe: Code cleanup > ixgbe: Negotiate VF API version > ixgbe: Get VF queue number > ether: Check VMDq RSS mode > ixgbe: Config VF RSS > testpmd: Set Rx VMDq RSS mode > > app/test-pmd/testpmd.c | 15 +++- > lib/librte_ether/rte_ethdev.c | 50 +++++++++++-- > lib/librte_pmd_ixgbe/ixgbe_ethdev.h | 1 + > lib/librte_pmd_ixgbe/ixgbe_pf.c | 80 ++++++++++++++++++++- > lib/librte_pmd_ixgbe/ixgbe_rxtx.c | 138 ++++++++++++++++++++++++++++-------- > 5 files changed, 248 insertions(+), 36 deletions(-) >