On 12/26/2017 3:24 PM, Wei Dai wrote: > Without this patch, the number of queues per i40e VF is defined as 4 > by CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_VF=4 in config/common_base. > It is fixed value determined in building time and can't be changed > during run time. > With this patch, the number of queues per i40e VF can be determinated > during run time. For example, if the PCI address of an i40e PF is > aaaa:bb.cc, with the EAL parameter -w aaaa:bb.cc,queue-num-per-vf=8 , > the number of queues per VF created from this PF is 8. > If there is no "queue-num-per-vf" setting in EAL parameters, it is 4 > by default as before. And if the value after the "queue-num-per-vf" > is invalid, it is set as 4 forcibly. The valid values include 1, 2, 4, > 8, 16 . > > Signed-off-by: Wei Dai <wei....@intel.com> > Acked-by: Konstantin Ananyev <konstantin.anan...@intel.com> > --- > v9: > v9 = v8+v7, is a complete version for maintainer's convenience. > v8: > As v7 patch has been accepted into dpdk-next-net-intel, this patch > is based on v7 patch. > add description in i40e document > fix the last member of valid_keys[] for rte_kvargs_parse( ) > add RTE_PMD_REGISTER_PARAM_STRING for this feature > v7: > use the macro instead of natural number > correct git log message as the EAL parameter is only valid for PF > v6: > fix a small bug when detecting end character of strtoul > v5: > fix git log message and WARNING of coding stype > v4: > use rte_kvargs instead of pervious parsing function; > use malloc/free instead of rte_zmalloc/rte_free. > v3: > fix WARNING of coding style issues from checkpa...@dpdk.org > v2: > fix WARNING of coding style issues from checkpa...@dpdk.org > --- > config/common_base | 1 - > doc/guides/nics/i40e.rst | 12 ++++--- > drivers/net/i40e/i40e_ethdev.c | 75 > +++++++++++++++++++++++++++++++++++++++--- > 3 files changed, 78 insertions(+), 10 deletions(-) > > diff --git a/config/common_base b/config/common_base > index e74febe..4e20389 100644 > --- a/config/common_base > +++ b/config/common_base > @@ -208,7 +208,6 @@ CONFIG_RTE_LIBRTE_I40E_RX_ALLOW_BULK_ALLOC=y > CONFIG_RTE_LIBRTE_I40E_INC_VECTOR=y > CONFIG_RTE_LIBRTE_I40E_16BYTE_RX_DESC=n > CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_PF=64 > -CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_VF=4 > CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_VM=4 > # interval up to 8160 us, aligned to 2 (or default value) > CONFIG_RTE_LIBRTE_I40E_ITR_INTERVAL=-1 > diff --git a/doc/guides/nics/i40e.rst b/doc/guides/nics/i40e.rst > index cd46874..abb20da 100644 > --- a/doc/guides/nics/i40e.rst > +++ b/doc/guides/nics/i40e.rst > @@ -115,10 +115,6 @@ Please note that enabling debugging options may affect > system performance. > > Number of queues reserved for PF. > > -- ``CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_VF`` (default ``4``) > - > - Number of queues reserved for each SR-IOV VF. > - > - ``CONFIG_RTE_LIBRTE_I40E_QUEUE_NUM_PER_VM`` (default ``4``) >
Hi Wei, What do you think creating a section for "Runtime config options" in same level for "Config File Options" and explain new "queue-num-per-vf" option there? Thanks, ferruh