From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 01BFAA0613 for ; Mon, 26 Aug 2019 03:17:49 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id DC65D1BF65; Mon, 26 Aug 2019 03:17:49 +0200 (CEST) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by dpdk.org (Postfix) with ESMTP id 36C391BF50 for ; Mon, 26 Aug 2019 03:17:45 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 25 Aug 2019 18:17:45 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.64,431,1559545200"; d="scan'208";a="263783097" Received: from dpdk-moyufen01.sh.intel.com ([10.67.111.77]) by orsmga001.jf.intel.com with ESMTP; 25 Aug 2019 18:17:44 -0700 From: yufengmx To: dts@dpdk.org, lihongx.ma@intel.com Cc: yufengmx Date: Mon, 26 Aug 2019 09:18:53 +0800 Message-Id: <1566782333-153289-2-git-send-email-yufengx.mo@intel.com> X-Mailer: git-send-email 1.9.3 In-Reply-To: <1566782333-153289-1-git-send-email-yufengx.mo@intel.com> References: <1566782333-153289-1-git-send-email-yufengx.mo@intel.com> Subject: [dts] [PATCH V2]framework/pktgen_base: fix rfc2544 return value missing zero X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dts-bounces@dpdk.org Sender: "dts" loss rate fix rfc2544 return value missing zero loss rate. Signed-off-by: yufengmx --- framework/pktgen_base.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/framework/pktgen_base.py b/framework/pktgen_base.py index e9d3fcb..06ad738 100644 --- a/framework/pktgen_base.py +++ b/framework/pktgen_base.py @@ -256,20 +256,20 @@ class PacketGenerator(object): def measure_rfc2544(self, stream_ids=[], options={}): """ check loss rate with rate percent dropping """ loss_rate_table = [] - rate_percent = float(100) + rate_percent = options.get('rate') or float(100) permit_loss_rate = options.get('pdr') or 0 self.logger.info("allow loss rate: %f " % permit_loss_rate) rate_step = options.get('drop_step') or 1 result = self._measure_loss(stream_ids, options) status = self._check_loss_rate(result, permit_loss_rate) - loss_rate_table.append( - [options.get('rate') or rate_percent, result]) + loss_rate_table.append([rate_percent, result]) # if first time loss rate is ok, ignore left flow if status: # return data is the same with dts/etgen format # In fact, multiple link peer have multiple loss rate value, # here only pick one - return result.values()[0] + tx_num, rx_num = result.values()[0][1:] + return rate_percent, tx_num, rx_num _options = deepcopy(options) while not status and rate_percent > 0: rate_percent = rate_percent - rate_step @@ -288,7 +288,10 @@ class PacketGenerator(object): # use last result as return data to keep the same with dts/etgen format # In fact, multiple link peer have multiple loss rate value, # here only pick one - return loss_rate_table[-1][1].values()[0] + last_result = loss_rate_table[-1] + rate_percent = last_result[0] + tx_num, rx_num = last_result[1].values()[0][1:] + return rate_percent, tx_num, rx_num def measure_rfc2544_with_pps(self, stream_ids=[], options={}): """ -- 1.9.3