[dpdk-dev] [PATCH v6 0/6] Enable VF RSS for Niantic

Thomas Monjalon thomas.monjalon at 6wind.com
Sun Jan 18 23:24:12 CET 2015


> 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 ?

> 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 to both of you
-- 
Thomas


More information about the dev mailing list