>-----Original Message----- >From: Ferruh Yigit <ferruh.yi...@intel.com> >Sent: Wednesday, March 17, 2021 3:19 AM >To: Xueming(Steven) Li <xuemi...@nvidia.com>; Andrew Rybchenko ><andrew.rybche...@oktetlabs.ru> >Cc: dev@dpdk.org; Slava Ovsiienko <viachesl...@nvidia.com>; Asaf Penso ><as...@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!