[dts] [PATCH V1 1/1] dts/pktgen: fix rfc2544 rate percent bug

yufengmx yufengx.mo at intel.com
Thu Sep 26 09:23:17 CEST 2019


When do rfc2544, streams rate percent should be set a new rate percent and
stream attached on port should be cleared.

Signed-off-by: yufengmx <yufengx.mo at intel.com>
---
 framework/pktgen_base.py | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/framework/pktgen_base.py b/framework/pktgen_base.py
index cd541b0..7855f6f 100644
--- a/framework/pktgen_base.py
+++ b/framework/pktgen_base.py
@@ -145,14 +145,14 @@ class PacketGenerator(object):
         if not self.__streams:
             return
         for stream in self.__streams:
-            stream['rate'] = rate_percent
+            stream['options']['stream_config']['rate'] = rate_percent
 
     def _set_stream_pps(self, pps):
         ''' set all streams' pps '''
         if not self.__streams:
             return
         for stream in self.__streams:
-            stream['pps'] = pps
+            stream['options']['stream_config']['pps'] = pps
 
     def reset_streams(self):
         self.__streams = []
@@ -265,12 +265,15 @@ class PacketGenerator(object):
             tx_num, rx_num = result.values()[0][1:]
             return rate_percent, tx_num, rx_num
         _options = deepcopy(options)
+        if 'rate' in _options:
+            _options.pop('rate')
         while not status and rate_percent > 0:
             rate_percent = rate_percent - rate_step
             if rate_percent <= 0:
                 msg = "rfc2544 run under zero rate"
                 self.logger.warning(msg)
                 break
+            self._clear_streams()
             # set stream rate percent to custom value
             self._set_stream_rate_percent(rate_percent)
             # run loss rate testing
-- 
2.21.0



More information about the dts mailing list