[dpdk-dev] [PATCH v9 00/10] ethdev: support SubFunction representor
Xueming(Steven) Li
xuemingl at nvidia.com
Wed Mar 17 10:00:52 CET 2021
>-----Original Message-----
>From: Ferruh Yigit <ferruh.yigit at intel.com>
>Sent: Wednesday, March 17, 2021 3:19 AM
>To: Xueming(Steven) Li <xuemingl at nvidia.com>; Andrew Rybchenko <andrew.rybchenko at oktetlabs.ru>
>Cc: dev at dpdk.org; Slava Ovsiienko <viacheslavo at nvidia.com>; Asaf Penso <asafp at nvidia.com>
>Subject: Re: [PATCH v9 00/10] ethdev: support SubFunction representor
>
>On 3/11/2021 1:13 PM, Xueming Li wrote:
>> SubFunction [1] is a portion of the PCI device, a SF netdev has its
>> own dedicated queues(txq, rxq). A SF netdev supports E-Switch
>> representation offload similar to existing PF and VF representors. A
>> SF shares PCI level resources with other SFs and/or with its parent PCI function.
>>
>> From SmartNIC perspective, when PCI device is shared for multi-host,
>> representors for host controller and host PF is required.
>>
>> This patch set introduces new representor types in addtion to existing
>> VF representor. Syntax:
>>
>> [[c#]pf#]vf#: VF port representor/s from controller/pf
>> [[c#]pf#]sf#: SF port representor/s from controller/pf
>> #: VF representor - for backwards compatibility
>>
>> "#" is number instance, list or range, valid examples:
>> 1, [1,3,5], [0-3], [0,2-4,6]
>>
>> For backward compatibility, this patch also introduces new netdev
>> capability to indicate the capability of supportting SF representor.
>>
>> Version history:
>> RFC:
>> initial version [2]
>> V2:
>> - separate patch for represnetor infrastructure, controller, pf and
>> sf.
>> - replace representor ID macro with functions:
>> rte_eth_representor_id_encode()
>> rte_eth_representor_id_parse()
>> - new patch to allow devargs with same PCI BDF but different
>> representors.
>> - other minor code updates according to comments, thanks Andrew!
>> - update document
>> V3:
>> - improve probing of allowed devargs with same name.
>> - parse single word of kvargs as key.
>> - update kvargs test cases.
>> V4:
>> - split first representor refactor patch into
>> 1: add representor type
>> 2: refector representor list parsing
>> - push the patch supporting multi-devargs for same device.
>> V5:
>> - add comments for parsing functions
>> - update switch_representation.rst - Thanks Ajit
>> V6:
>> - split representor types into different patches, move to
>> rte_ethdev.h
>> - improvements of rte_eth_devargs_process_list() according to
>> Andrew's suggestion
>> - fixed PF probe failure for Intel i40e
>> - replace ethdev SF capability with rte_eth_representor_info_get()
>> - add new ethdev ops api to get representor info from PMD
>> - replace representor ID encode/decode with conversion from
>> representor info
>> - change ethdev representor iterator to use new ID encoding
>> V7:
>> - error on duplicated representor argument:
>> DBDF,representor=a,representor=b
>> - fix pf representor type parsing
>> - other small fixes suggested by Andrew.
>> V8:
>> - remove the "ignore" hint from pmd representor info
>> - changed representor_id type in representor info to u32
>> - rename rte_eth_representor_id_convert() to ..._get()
>> - other small fixes suggested by Andrew
>> V9:
>> - more document for PMD to implement representor_info_get
>> callback
>> - updated ice and txgbe to adapt new representor type
>> - updated 21.05 release notes
>> - other small fixes suggested by Ferruh and Andrew, thanks.
>>
>>
>> Xueming Li (10):
>> ethdev: introduce representor type
>> ethdev: refactor representor port list parsing
>> ethdev: support new VF representor syntax
>> ethdev: support sub function representor
>> kvargs: update parser to support multiple lists
>> ethdev: support PF index in representor
>> ethdev: support multi-host in representor
>> ethdev: new API to get representor info
>> ethdev: representor iterator compare complete info
>> doc/release: add representor enhancements
>>
>
>Series applied to dpdk-next-net/main, thanks.
Thanks!
More information about the dev
mailing list