Hi Thomas, > -----Original Message----- > From: Thomas Monjalon [mailto:thomas.monjalon at 6wind.com] > Sent: Monday, January 19, 2015 6:24 AM > To: Ouyang, Changchun > Cc: dev at dpdk.org; Vladislav Zolotarov; Butler, Siobhan A; Iremonger, > Bernard > Subject: Re: [dpdk-dev] [PATCH v6 0/6] Enable VF RSS for Niantic > > > 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. > > This kind of information should go in a documentation. > I think we should start new documentation for PMDs. > What about a doc/drivers/ directory ?
Ok, before the new doc starts, I will consider putting it into program guide or user guide doc. > > changes in v6: > > - refine codes and update message according to comments; > > > > 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 <q-num>') 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 > > Deeply reviewed by Vlad Zolotarov. Thanks! > > Applied > Thanks very much for merging! Best regards Changchun