From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by dpdk.org (Postfix) with ESMTP id 3E6A12C5 for ; Mon, 15 May 2017 03:14:23 +0200 (CEST) Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 14 May 2017 18:14:22 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.38,342,1491289200"; d="scan'208";a="856765013" Received: from stv-crb-56.sh.intel.com (HELO [10.239.128.116]) ([10.239.128.116]) by FMSMGA003.fm.intel.com with ESMTP; 14 May 2017 18:14:22 -0700 Message-ID: <5918FDF9.4040700@intel.com> Date: Mon, 15 May 2017 09:01:45 +0800 From: "Liu, Yong" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.5.0 MIME-Version: 1.0 To: Peng Yuan , dts@dpdk.org References: <1493832439-182586-1-git-send-email-yuan.peng@intel.com> In-Reply-To: <1493832439-182586-1-git-send-email-yuan.peng@intel.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [dts] [PATCH v2] tests: fix the bug of verifyResult_symmetric of pmdrss_hash 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: , X-List-Received-Date: Mon, 15 May 2017 01:14:24 -0000 Yuan, please add some descriptions for your changes in the commit log. On 05/04/2017 01:27 AM, Peng Yuan wrote: > Signed-off-by: Peng Yuan > > diff --git a/tests/TestSuite_pmdrss_hash.py b/tests/TestSuite_pmdrss_hash.py > index 78ae34d..612042d 100644 > --- a/tests/TestSuite_pmdrss_hash.py > +++ b/tests/TestSuite_pmdrss_hash.py > @@ -374,9 +374,49 @@ class TestPmdrssHash(TestCase): > reta_line[name.strip()] = value.strip() > reta_lines.append(reta_line) > > - self.verifyResult_symmetric() > + def verifyResult_simple_symmetric(self): > + """ > + Verify whether or not the result passes. > + """ > + > + global reta_lines > + global reta_num > + result = [] > + self.result_table_create( > + ['packet index', 'RSS hash', 'hash index', 'queue id', 'actual queue id', 'pass ']) > + > + i = 0 > + for tmp_reta_line in reta_lines: > + status = "true" > + # compute the hash result of five tuple into the 7 LSBs value. > + hash_index = int(tmp_reta_line["RSS hash"], 16) % reta_num > + > + if(i % 2 == 1): > + if(pre_RSS_hash == tmp_reta_line["RSS hash"]): > + if(int(tmp_reta_line["RSS hash"], 16) > int("ffff", 16)): > + status = "true" > + result.insert((i - 1) / 2, 0) > + elif(reta_entries[hash_index] == int(tmp_reta_line["queue"])): > + status = "true" > + result.insert((i - 1) / 2, 0) > + else: > + status = "fail" > + result.insert((i - 1) / 2, 0) > + else: > + status = "fail" > + result.insert((i - 1) / 2, 1) > + pre_RSS_hash = tmp_reta_line["RSS hash"] > > - def verifyResult_symmetric(self): > + self.result_table_add( > + [i, tmp_reta_line["RSS hash"], hash_index, reta_entries[hash_index], tmp_reta_line["queue"], status]) > + i = i + 1 > + > + self.result_table_print() > + reta_lines = [] > + self.verify( > + sum(result) == 0, "the symmetric RSS hash function failed!") > + > + def verifyResult_toeplitz_symmetric(self): > """ > Verify whether or not the result passes. > """ > @@ -395,8 +435,12 @@ class TestPmdrssHash(TestCase): > > if(i % 2 == 1): > if(pre_RSS_hash == tmp_reta_line["RSS hash"]): > - status = "true" > - result.insert((i - 1) / 2, 0) > + if(reta_entries[hash_index] == int(tmp_reta_line["queue"])): > + status = "true" > + result.insert((i - 1) / 2, 0) > + else: > + status = "fail" > + result.insert((i - 1) / 2, 0) > else: > status = "fail" > result.insert((i - 1) / 2, 1) > @@ -539,6 +583,8 @@ class TestPmdrssHash(TestCase): > > self.send_packet_symmetric(itf, iptype) > > + self.verifyResult_toeplitz_symmetric() > + > self.dut.send_expect("quit", "# ", 30) > > def test_simple(self): > @@ -649,6 +695,8 @@ class TestPmdrssHash(TestCase): > > self.send_packet_symmetric(itf, iptype) > > + self.verifyResult_simple_symmetric() > + > self.dut.send_expect("quit", "# ", 30) > > def tear_down(self):