Hi Jingjing,
> -----Original Message----- > From: Wu, Jingjing > Sent: Friday, March 24, 2017 1:20 PM > To: Lu, Wenzhuo; dev@dpdk.org > Cc: Lu, Wenzhuo > Subject: RE: [dpdk-dev] [PATCH 4/8] net/i40e: set TC strict priority mode > > > > > -----Original Message----- > > From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Wenzhuo Lu > > Sent: Friday, February 24, 2017 11:25 AM > > To: dev@dpdk.org > > Cc: Lu, Wenzhuo <wenzhuo...@intel.com> > > Subject: [dpdk-dev] [PATCH 4/8] net/i40e: set TC strict priority mode > > > > Set some TCs to strict priority mode. > > It's a global setting on a physical port. > > > > Signed-off-by: Wenzhuo Lu <wenzhuo...@intel.com> > > --- > > doc/guides/nics/i40e.rst | 10 +++ > > doc/guides/rel_notes/release_17_05.rst | 7 ++ > > drivers/net/i40e/i40e_ethdev.c | 119 > > ++++++++++++++++++++++++++++++ > > drivers/net/i40e/i40e_ethdev.h | 1 + > > drivers/net/i40e/rte_pmd_i40e.h | 15 ++++ > > drivers/net/i40e/rte_pmd_i40e_version.map | 1 + > > 6 files changed, 153 insertions(+) > > > > diff --git a/doc/guides/nics/i40e.rst b/doc/guides/nics/i40e.rst index > > 260287e..361d9d9 100644 > > --- a/doc/guides/nics/i40e.rst > > +++ b/doc/guides/nics/i40e.rst > > @@ -478,3 +478,13 @@ enabled. If so, return failure. > > When enabling per TC max bandwidth, SW will check if per VF max > > bandwidth is enabled. If so, disable per VF max bandwidth and continue > > with per TC max bandwidth setting. > > + > > +TC TX scheduling mode setting > > +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > + > > +There're 2 TX scheduling modes for TCs, round robin and strict priority > mode. > > +If a TC is set to strict priority mode, it can consume unlimited bandwidth. > > +It means if APP has set the max bandwidth for that TC, it comes to no > > +effect. > > +It's suggested to set the strict priority mode for a TC that is > > +latency sensitive but no consuming much bandwidth. > > diff --git a/doc/guides/rel_notes/release_17_05.rst > > b/doc/guides/rel_notes/release_17_05.rst > > index d31435c..99811a2 100644 > > --- a/doc/guides/rel_notes/release_17_05.rst > > +++ b/doc/guides/rel_notes/release_17_05.rst > > @@ -55,6 +55,13 @@ New Features > > i40e HW supports to set the max bandwidth for a TC on a VF. Enable this > > capability. > > > > +* **Added TC strict priority mode setting on i40e.** > > + > > + There're 2 TX scheduling modes supported for TCs by i40e HW, round > > + ribon mode and strict priority mode. By default it's round robin > > + mode. Enable the capability to change the TX scheduling mode for a > > + TC. It's a global setting on a physical port. > > + > > Resolved Issues > > > > + if (!veb->strict_prio_tc) > > + ret = i40e_aq_config_switch_comp_ets( > > + hw, veb->uplink_seid, > > + &ets_data, > i40e_aqc_opc_enable_switching_comp_ets, > > + NULL); > > How about to check the tc_map when the first time to set strict_prio_tc? Thanks for the comment. I didn't consider that before. But I checked my patch, in the previous code, I've checked if tc_map is equal to strict_prio_tc. So if it's the first time to set strict_prio_tc, tc_map cannot be 0. Lucky :)