From patchwork Tue Apr 18 14:00:10 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Jiale, SongX" X-Patchwork-Id: 126209 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id F1B4942977; Tue, 18 Apr 2023 07:42:46 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id ED54B410EA; Tue, 18 Apr 2023 07:42:46 +0200 (CEST) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by mails.dpdk.org (Postfix) with ESMTP id 7A92740EDF for ; Tue, 18 Apr 2023 07:42:45 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1681796565; x=1713332565; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=nzE5leo8Zgl7b2qgJvNP+vu14UwCs0lnarPGOqLDxSk=; b=Da1KJ7BB6ObOBISg3/NB6Md4EU7WB94aCxKLfKymPgQ38ZpHwWQk3j0v 0ihQeicNabQ2wbgybc9ILE/+IVB7cNZKDGYfPKJQREehP94hJzwPSXvTo +jT1vDZKaRnn53LDp0RYaCd5bb42J3lBTMu2+V1/PmFTpGn3dJ7VjeQiN 6bQX8m2dITTzst22UbBbO/KYHjURS3NCFKI3yd3c8pIi0vFQ4voHoJjX1 R1rHg5jSuGue8YGalTovobb9NawCoY/sp53RgGzzD8qldLiygNZICV4l7 pF8sUSgDrYrZspitYX16Jy8WP/Z7pqMfbLCCaSkBmythqQqjjN8vl9pSJ Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10683"; a="342575387" X-IronPort-AV: E=Sophos;i="5.99,206,1677571200"; d="scan'208";a="342575387" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Apr 2023 22:42:45 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10683"; a="641232043" X-IronPort-AV: E=Sophos;i="5.99,206,1677571200"; d="scan'208";a="641232043" Received: from unknown (HELO localhost.localdomain) ([10.239.252.96]) by orsmga003-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Apr 2023 22:42:43 -0700 From: Jiale Song To: dts@dpdk.org Cc: Jiale Song Subject: [dts] [PATCH V3 2/2] tests/stats_checks: add a case Date: Tue, 18 Apr 2023 14:00:10 +0000 Message-Id: <20230418140010.168944-3-songx.jiale@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230418140010.168944-1-songx.jiale@intel.com> References: <20230418140010.168944-1-songx.jiale@intel.com> MIME-Version: 1.0 X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.29 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 add a case to test pf negative xstats check. Signed-off-by: Jiale Song Acked-by: Yuan Peng --- tests/TestSuite_stats_checks.py | 47 +++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/tests/TestSuite_stats_checks.py b/tests/TestSuite_stats_checks.py index 6ab5dd19..a9c6e040 100644 --- a/tests/TestSuite_stats_checks.py +++ b/tests/TestSuite_stats_checks.py @@ -28,6 +28,8 @@ prefix_list = [ "tx_good_packets", "rx_good_bytes", "tx_good_bytes", + "rx_errors", + "rx_unicast_packets", "tx_size_64_packets", "tx_size_65_to_127_packets", "tx_size_128_to_255_packets", @@ -42,6 +44,7 @@ prefix_list = [ "rx_size_512_to_1023_packets", "rx_size_1024_to_1522_packets", "rx_size_1523_to_max_packets", + "rx_oversize_errors", "rx_size_1024_to_max_packets", # ixgbe "tx_size_1024_to_max_packets", # ixgbe ] @@ -384,6 +387,7 @@ class TestStatsChecks(TestCase): """ self.netobj_0.enable_jumbo(framesize=1518) self.netobj_1.enable_jumbo(framesize=1518) + self.pmdout.quit() self.dut.kill_all() if self._suite_result.test_case == "test_xstats_check_vf": self.dut.destroy_sriov_vfs_by_port(self.dut_ports[0]) @@ -442,3 +446,46 @@ class TestStatsChecks(TestCase): dcf_flag=self.dcf_mode, param="--txq=4 --rxq=4 --max-pkt-len=9000" ) self.xstats_check(0, 0, if_vf=True) + + def test_negative_xstats_check_pf(self): + """ + Test Case: PF negative xstats check + """ + self.pmdout.start_testpmd("default") + self.pmdout.execute_cmd("set fwd mac") + self.pmdout.execute_cmd("start") + self.netobj_0.enable_jumbo(framesize=5018) + self.pmdout.wait_link_status_up("all") + self.pmdout.execute_cmd("clear port xstats all") + self.pmdout.execute_cmd("show port xstats all") + # send jumbo frames + self.send_scapy_packet( + self.rx_port, + f'Ether(dst=dutmac, src="52:00:00:00:00:00")/IP()/Raw(load="X"*4980)', + ) + # get all port xstats + all_xstats = self.get_xstats([self.rx_port, self.tx_port]) + rx_xstats = all_xstats[self.rx_port] + # check rx port can not receive packet and rx_errors increased + for key, value in rx_xstats.items(): + if key in ["rx_errors", "rx_oversize_errors"]: + self.verify( + value == 1, + "the expected value of %s is 1, but the actual value is %s!!!" + % (key, value), + ) + else: + self.verify( + value == 0, + "the expected value of %s is 0, but the actual value is %s!!!" + % (key, value), + ) + # check all statistics are 0 for tx port. + tx_xstats = all_xstats[self.tx_port] + for key, value in tx_xstats.items(): + self.verify( + value == 0, + "the expected value of %s is 0, but the actual value is %s!!!" + % (key, value), + ) + self.pmdout.execute_cmd("stop")