[dts] [DTS][PATCH] fix tx crc issue

Van Haaren, Harry harry.van.haaren at intel.com
Wed Nov 25 12:11:45 CET 2015


Hi All,

Recently I've removed all CRC bytes from the byte counter statistics.

This means when --crc-strip is enabled, or disabled, the byte counters
should remain the same.

These changes apply to igb, ixgbe, i40e, while fmk10k already strips CRC
bytes from its counters.

These patches were merged into dpdk.org master recently, commits
  156c5a8 e1000/igb
  c03fcee ixgbe
  0834d15 i40e


Note that VLAN stripping will still affect byte stats, same as before.


If there are any questions regarding testing the byte statistics,
feel free to ask. 

-Harry



> -----Original Message-----
> From: dts [mailto:dts-bounces at dpdk.org] On Behalf Of Liu, Yong
> Sent: Wednesday, November 25, 2015 9:25 AM
> To: Tang, HaifengX <haifengx.tang at intel.com>; dts at dpdk.org
> Subject: Re: [dts] [DTS][PATCH] fix tx crc issue
> 
> Some comments below, thanks.
> 
> > -----Original Message-----
> > From: dts [mailto:dts-bounces at dpdk.org] On Behalf Of haifeng
> > Sent: Wednesday, November 25, 2015 3:56 PM
> > To: dts at dpdk.org
> > Subject: [dts] [DTS][PATCH] fix tx crc issue
> >
> > Signed-off-by: haifeng <haifengx.tang at intel.com>
> > ---
> >  tests/TestSuite_shutdown_api.py | 27 ++++++++-------------------
> >  1 file changed, 8 insertions(+), 19 deletions(-)
> >
> > diff --git a/tests/TestSuite_shutdown_api.py
> > b/tests/TestSuite_shutdown_api.py
> > index 23888f4..411e4bf 100644
> > --- a/tests/TestSuite_shutdown_api.py
> > +++ b/tests/TestSuite_shutdown_api.py
> > @@ -82,7 +82,7 @@ class TestShutdownApi(TestCase):
> >          stats = output.get_pmd_stats(portid)
> >          return stats
> >
> > -    def check_forwarding(self, ports=None, pktSize=68, received=True,
> > vlan=False, promisc=False, crcStrip=False):
> > +    def check_forwarding(self, ports=None, pktSize=68, received=True,
> > vlan=False, promisc=False, crcStrip=True):
> 
> The parameter "crcStrip" here is mean enable crc strip feature on port.
> Please do not change the default for most case not enable crc strip.
> 
> If packet length not include crc all the time, this parameter will be useless.
> Please remove it from function parameters.
> 
> >          if ports is None:
> >              ports = self.ports
> >          if len(ports) == 1:
> > @@ -146,25 +146,14 @@ class TestShutdownApi(TestCase):
> >                  # RRC will always strip rx/tx vlan
> >                  rx_bytes_exp -= 4
> >                  tx_bytes_exp -= 4
> > -        elif self.nic in ["fortville_eagle", "fortville_spirit",
> > -                        "fortville_spirit_single", "bartonhills"]:
> > -            # some NIC will always strip tx crc
> > -            tx_bytes_exp -= 4
> > -            if vlan is True:
> > -                # vlan strip default is on
> > -                tx_bytes_exp -= 4
> > -        elif self.nic in ["springville", "powerville"]:
> > -            if vlan is True:
> > -                # vlan strip default is on
> > -                tx_bytes_exp -= 4
> >          else:
> > -            # some NIC will always include tx crc
> > -            if crcStrip is True:
> > -                rx_bytes_exp -= 4
> > -            if vlan is True:
> > -                # vlan strip default is on
> > -                tx_bytes_exp -= 4
> > -
> 
> Here maybe one bug for all packet length should be the same between NICs.
> 
> > +             if self.nic not in ['kawela_4']:
> > +                 tx_bytes_exp -= 4
> > +                 if crcStrip is True:
> > +                     rx_bytes_exp -= 4
> > +             if vlan is True:
> > +                tx_bytes_exp -= 4
> > +
> >          if received:
> >              self.verify(p0tx_pkts == p1rx_pkts, "Wrong TX pkts p0_tx=%d,
> > p1_rx=%d" % (p0tx_pkts, p1rx_pkts))
> >              self.verify(p1rx_bytes == rx_bytes_exp, "Wrong Rx bytes
> > p1_rx=%d, expect=%d" % (p1rx_bytes, rx_bytes_exp))
> > --
> > 1.9.3



More information about the dts mailing list