Hi Stephen, > -----Original Message----- > From: Stephen Hemminger [mailto:step...@networkplumber.org] > Sent: Friday, February 24, 2017 2:55 PM > To: Lu, Wenzhuo > Cc: dev@dpdk.org > Subject: Re: [dpdk-dev] [PATCH 0/8] QoS features on i40e > > On Fri, 24 Feb 2017 11:24:27 +0800 > Wenzhuo Lu <wenzhuo...@intel.com> wrote: > > > This patch set enables several QoS features on i40e. > > 1, VF max bandwidth setting. > > 2, TC min bandwidth setting on a VF. > > 3, TC max bandwidth setting on a VF. > > 4, TC TX scheduling mode setting. > > As there're no new interface between PF and VF defined, all the > > settings for VF are done on PF. PF acts as a controller for the VFs. > > > > Wenzhuo Lu (8): > > net/i40e: set VF max bandwidth from PF > > net/i40e: allocate VF TC bandwidth from PF > > net/i40e: set VF TC max bandwidth from PF > > net/i40e: set TC strict priority mode > > app/testpmd: set VF TX max bandwidth > > app/testpmd: set VF TC TX min bandwidth > > app/testpmd: set VF TC TX max bandwidth > > app/testpmd: set TC strict link priority mode > > > > app/test-pmd/cmdline.c | 343 +++++++++++++++++++++ > > doc/guides/nics/i40e.rst | 21 ++ > > doc/guides/rel_notes/release_17_05.rst | 20 ++ > > doc/guides/testpmd_app_ug/testpmd_funcs.rst | 28 ++ > > drivers/net/i40e/i40e_ethdev.c | 449 > ++++++++++++++++++++++++++++ > > drivers/net/i40e/i40e_ethdev.h | 1 + > > drivers/net/i40e/rte_pmd_i40e.h | 86 ++++++ > > drivers/net/i40e/rte_pmd_i40e_version.map | 10 + > > 8 files changed, 958 insertions(+) > > > > It is good to allow setting QoS on device, but it looks like this is a device > specific API, not a generic PMD function. I don't think any feature in DPDK > should be hardcoded to one device type. Yes, they're private APIs. Normally we want to support kernel PF + dpdk VF. As there's no PF - VF interface defined for QoS, These features cannot be implemented on VF now. Have to put them on PF, and let PF play as a controller. There's discussion about if we should rich PF host features. So, I put these functions to rte_pmd_i40e.h to show they're experimental and temporary features.
There's another thread started by Cristian for a generic QoS solution. After it's accepted and the PF-VF interfaces are defined by kernel driver. We can use a generic solution to replace this one.