test suite reviews and discussions
 help / color / Atom feed
* Re: [dts] [PATCH V1 0/6] Remove 8 duplicate cases
  2020-11-20 10:45 [dts] [PATCH V1 0/6] Remove 8 duplicate cases sunqin
@ 2020-11-20  2:16 ` Sun, QinX
  2020-11-20 10:45 ` [dts] [PATCH V1 1/6] tests/iavf_fdir remove 6 cases sunqin
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Sun, QinX @ 2020-11-20  2:16 UTC (permalink / raw)
  To: dts

[-- Attachment #1: Type: text/plain, Size: 295 bytes --]

Tested-by: Sun, QinX <qinx.sun@intel.com>
 
Regards,
Sun Qin

> -----Original Message-----
> From: sunqin <qinx.sun@intel.com>
> Sent: Friday, November 20, 2020 6:46 PM
> To: dts@dpdk.org
> Cc: Sun, QinX <qinx.sun@intel.com>
> Subject: [dts] [PATCH V1 0/6] Remove 8 duplicate cases


[-- Attachment #2: TestIAVFFdir.log --]
[-- Type: application/octet-stream, Size: 5131523 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [dts]  [PATCH V1 0/6] Remove 8 duplicate cases
@ 2020-11-20 10:45 sunqin
  2020-11-20  2:16 ` Sun, QinX
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: sunqin @ 2020-11-20 10:45 UTC (permalink / raw)
  To: dts; +Cc: sunqin

Remove 8 duplicate cases from 3 suite and plan.

iavf_fdir: 6 cases
cvl_fdir: 1 case
cvl_dcf_switch_filter: 1 case

These 8 cases have been made as a new test suite 'cvl_limit_value_test',

so remove them from original suite and plan

sunqin (6):
  tests/iavf_fdir remove 6 cases
  test_plans/iavf_fdir remove 6 subcases
  tests/cvl_fdir remove 1 case
  test_plans/cvl_fdir remove 1 subcase
  tests/cvl_dcf_switch_filter remove 1 case
  test_plans/cvl_dcf_switch_filter remove 1 case

 .../cvl_dcf_switch_filter_test_plan.rst       |  57 ---
 test_plans/cvl_fdir_test_plan.rst             |  38 +-
 test_plans/iavf_fdir_test_plan.rst            | 304 +-------------
 tests/TestSuite_cvl_dcf_switch_filter.py      |  73 ----
 tests/TestSuite_cvl_fdir.py                   |  39 --
 tests/TestSuite_iavf_fdir.py                  | 393 ------------------
 6 files changed, 8 insertions(+), 896 deletions(-)

-- 
2.17.1


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [dts]  [PATCH V1 1/6] tests/iavf_fdir remove 6 cases
  2020-11-20 10:45 [dts] [PATCH V1 0/6] Remove 8 duplicate cases sunqin
  2020-11-20  2:16 ` Sun, QinX
@ 2020-11-20 10:45 ` sunqin
  2020-11-20 10:45 ` [dts] [PATCH V1 2/6] test_plans/iavf_fdir remove 6 subcases sunqin
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: sunqin @ 2020-11-20 10:45 UTC (permalink / raw)
  To: dts; +Cc: sunqin

Remove 6 cases:

test_maxnum_14336rules_1vf
test_maxnum_14336rules_2vf
test_maxnum_15360rules_1pf_2vf
test_maxnum_15360rules_1pf_0_rules_vf
test_stress_add_delete_rules_1vf
test_stress_add_delete_rules_2vf

The 6 cases have been moved to 'cvl_limit_value_test' suite

Signed-off-by: sunqin <qinx.sun@intel.com>
---
 tests/TestSuite_iavf_fdir.py | 393 -----------------------------------
 1 file changed, 393 deletions(-)

diff --git a/tests/TestSuite_iavf_fdir.py b/tests/TestSuite_iavf_fdir.py
index 7ee6f4a2..e53f55e8 100644
--- a/tests/TestSuite_iavf_fdir.py
+++ b/tests/TestSuite_iavf_fdir.py
@@ -2989,328 +2989,6 @@ class TestIAVFFdir(TestCase):
         self.dut.close_session(self.session_secondary)
         self.dut.close_session(self.session_third)
 
-    def test_maxnum_14336rules_1vf(self):
-        """
-        vfs share 14336 rules table
-        """
-        self.dut.kill_all()
-        src_file = 'create_14336_rules'
-        flows=open(self.src_file_dir + src_file,mode='w')
-        count=0
-        for i in range(56):
-            for j in range(256):
-                flows.write('flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.%d.%d / end actions queue index 5 / mark / end \n'%(i,j))
-                count=count+1
-        flows.close()
-        self.verify(count == 14336, "failed to create 14336 fdir rules on vf.")
-        self.dut.session.copy_file_to(self.src_file_dir + src_file, self.dut_file_dir)
-
-        eal_param = "-c f -n 6 -w %s -w %s" % (self.sriov_vfs_pf0[0].pci,self.sriov_vfs_pf0[1].pci)
-        command = self.path + eal_param + " -- -i --rxq=%s --txq=%s" % (self.cvlq_num, self.cvlq_num) + " --cmdline-file=%s" % self.dut_file_dir + src_file
-        self.dut.send_expect(command, "testpmd> ", 300)
-        self.config_testpmd()
-
-        # can't create more than 14336 rules on vf0
-        rule_14336_vf0 = "flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.56.0 / end actions queue index 5 / mark / end"
-        self.create_fdir_rule(rule_14336_vf0, check_stats=False)
-        #check there are 14336 rules created.
-        out = self.check_rule_number(port_id=0, num=14336)
-        self.verify("14336" not in out, "more than 14336 rules can be created on 1vf")
-
-        # can't create rule on vf1
-        rule_0_vf1 = "flow create 1 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.56.0 / end actions queue index 5 / mark / end"
-        self.create_fdir_rule(rule_0_vf1, check_stats=False)
-        self.check_fdir_rule(port_id=1, stats=False)
-
-        pkt_0 = 'Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.20",dst="192.168.0.0")/Raw("x" * 80)'
-        pkt_14335 = 'Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.20",dst="192.168.55.255")/Raw("x" * 80)'
-        pkt_14336 = 'Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.20",dst="192.168.56.0")/Raw("x" * 80)'
-
-        # check packet match rule 0 and rule 14335 can be redirected to expected queue
-        out_0 = self.send_pkts_getouput(pkts=pkt_0, pf_id=0)
-        rfc.check_iavf_fdir_mark(out_0, pkt_num=1, check_param={"port_id": 0, "mark_id": 0, "queue": 5}, stats=True)
-        out_14335 = self.send_pkts_getouput(pkts=pkt_14335, pf_id=0)
-        rfc.check_iavf_fdir_mark(out_14335, pkt_num=1, check_param={"port_id": 0, "mark_id": 0, "queue": 5}, stats=True)
-        # check packet match rule 14336 can't be redirected to expected queue.
-        out_14336 = self.send_pkts_getouput(pkts=pkt_14336, pf_id=0)
-        rfc.check_iavf_fdir_mark(out_14336, pkt_num=1, check_param={"port_id": 0, "queue": 5}, stats=False)
-
-        # delete one rule of vf0
-        self.dut.send_expect("flow destroy 0 rule 0", "testpmd> ", timeout=200)
-        self.create_fdir_rule(rule_0_vf1, check_stats=True)
-        pkt_0_vf1 = 'Ether(dst="00:11:22:33:44:66")/IP(src="192.168.0.20",dst="192.168.56.0")/Raw("x" * 80)'
-        out_0_vf1 = self.send_pkts_getouput(pkts=pkt_0_vf1, pf_id=0)
-        rfc.check_iavf_fdir_mark(out_0_vf1, pkt_num=1, check_param={"port_id": 1, "mark_id": 0, "queue": 5}, stats=True)
-
-        # flush all the rules
-        self.dut.send_expect("flow flush 0", "testpmd> ", timeout=200)
-        self.check_fdir_rule(port_id=0, stats=False)
-        out_0 = self.send_pkts_getouput(pkts=pkt_0, pf_id=0)
-        out_14335 = self.send_pkts_getouput(pkts=pkt_14335, pf_id=0)
-        rfc.check_iavf_fdir_mark(out_0, pkt_num=1, check_param={"port_id": 0, "mark_id": 0, "queue": 5}, stats=False)
-        rfc.check_iavf_fdir_mark(out_14335, pkt_num=1, check_param={"port_id": 0, "mark_id": 0, "queue": 5}, stats=False)
-
-        self.create_fdir_rule(rule_14336_vf0, check_stats=True)
-        out_14336 = self.send_pkts_getouput(pkts=pkt_14336, pf_id=0)
-        rfc.check_iavf_fdir_mark(out_14336, pkt_num=1, check_param={"port_id": 0, "mark_id": 0, "queue": 5}, stats=True)
-
-    def test_maxnum_14336rules_2vf(self):
-        """
-        vfs share 14336 rules table
-        """
-        self.dut.kill_all()
-        self.session_secondary = self.dut.new_session()
-        src_file = 'create_14336_rules_2vf'
-        flows=open(self.src_file_dir + src_file,mode='w')
-        flows.write('flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.0 / end actions queue index 5 / mark / end \n')
-        count=1
-        for i in range(55):
-            for j in range(256):
-                flows.write('flow create 1 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.%d.%d / end actions queue index 5 / mark / end \n'%(i,j))
-                count=count+1
-        for j in range(255):
-            flows.write('flow create 1 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.55.%d / end actions queue index 5 / mark / end \n' % j)
-            count=count+1
-        flows.close()
-        self.verify(count == 14336, "failed to create 14336 fdir rules on 2 vfs.")
-        self.dut.session.copy_file_to(self.src_file_dir + src_file, self.dut_file_dir)
-
-        eal_param = "-c f -n 6 -w %s -w %s" % (self.sriov_vfs_pf0[0].pci,self.sriov_vfs_pf1[0].pci)
-        command = self.path + eal_param + " -- -i --rxq=%s --txq=%s" % (self.cvlq_num, self.cvlq_num) + " --cmdline-file=%s" % self.dut_file_dir + src_file
-        self.dut.send_expect(command, "testpmd> ", 300)
-
-        self.config_testpmd()
-        self.check_fdir_rule(port_id=0, rule_list=['0'])
-
-        # can't create more than 14336 rules on 2vf
-        rule_14335_vf1 = "flow create 1 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.56.0 / end actions queue index 5 / mark / end"
-        self.create_fdir_rule(rule_14335_vf1, check_stats=False)
-        #check there are 14336 rules created.
-        out = self.check_rule_number(port_id=1, num=14335)
-        self.verify("14335" not in out, "more than 14336 rules are created on 2vf")
-
-        # can't create new rule on vf0
-        rule_1_vf0 = "flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.56.0 / end actions queue index 5 / mark / end"
-        self.create_fdir_rule(rule_1_vf0, check_stats=False)
-        self.check_rule_number(port_id=0, num=1)
-
-        pkt_0 = 'Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.20",dst="192.168.0.0")/Raw("x" * 80)'
-        pkt_1 = 'Ether(dst="00:11:22:33:44:77")/IP(src="192.168.0.20",dst="192.168.0.0")/Raw("x" * 80)'
-        pkt_14335 = 'Ether(dst="00:11:22:33:44:77")/IP(src="192.168.0.20",dst="192.168.55.254")/Raw("x" * 80)'
-        pkt_14336 = 'Ether(dst="00:11:22:33:44:77")/IP(src="192.168.0.20",dst="192.168.56.0")/Raw("x" * 80)'
-
-        self.session_secondary.send_expect("ifconfig %s up" % self.pf0_intf, "# ", 15)
-        self.session_secondary.send_expect("ifconfig %s up" % self.pf1_intf, "# ", 15)
-        time.sleep(1)
-
-        # check packet match rule 0 and rule 14335 can be redirected to expected queue
-        out_0 = self.send_pkts_getouput(pkts=pkt_0, pf_id=0)
-        rfc.check_iavf_fdir_mark(out_0, pkt_num=1, check_param={"port_id": 0, "mark_id": 0, "queue": 5}, stats=True)
-        out_1 = self.send_pkts_getouput(pkts=pkt_1, pf_id=1)
-        rfc.check_iavf_fdir_mark(out_1, pkt_num=1, check_param={"port_id": 1, "mark_id": 0, "queue": 5}, stats=True)
-
-        out_14335 = self.send_pkts_getouput(pkts=pkt_14335, pf_id=1)
-        rfc.check_iavf_fdir_mark(out_14335, pkt_num=1, check_param={"port_id": 1, "mark_id": 0, "queue": 5}, stats=True)
-        # check packet match rule 14336 can't be redirected to expected queue.
-        out_14336 = self.send_pkts_getouput(pkts=pkt_14336, pf_id=1)
-        rfc.check_iavf_fdir_mark(out_14336, pkt_num=1, check_param={"port_id": 1, "queue": 5}, stats=False)
-
-        # destroy rule 0 on vf0, then create a new rule on vf1 successfully.
-        self.dut.send_expect("flow flush 0", "testpmd> ")
-        self.create_fdir_rule(rule_14335_vf1, check_stats=True)
-        out_14336 = self.send_pkts_getouput(pkts=pkt_14336, pf_id=1)
-        rfc.check_iavf_fdir_mark(out_14336, pkt_num=1, check_param={"port_id": 1, "mark_id": 0, "queue": 5}, stats=True)
-
-        self.dut.send_expect("flow flush 1", "testpmd> ", timeout=300)
-
-        self.check_fdir_rule(port_id=0, stats=False)
-        self.check_fdir_rule(port_id=1, stats=False)
-
-        out_0 = self.send_pkts_getouput(pkts=pkt_0, pf_id=0)
-        out_1 = self.send_pkts_getouput(pkts=pkt_1, pf_id=1)
-        out_14335 = self.send_pkts_getouput(pkts=pkt_14335, pf_id=1)
-        rfc.check_iavf_fdir_mark(out_0, pkt_num=1, check_param={"port_id": 0, "mark_id": 0, "queue": 5}, stats=False)
-        rfc.check_iavf_fdir_mark(out_1, pkt_num=1, check_param={"port_id": 1, "mark_id": 0, "queue": 5}, stats=False)
-        rfc.check_iavf_fdir_mark(out_14335, pkt_num=1, check_param={"port_id": 1, "mark_id": 0, "queue": 5}, stats=False)
-
-        self.dut.close_session(self.session_secondary)
-
-    def test_maxnum_15360rules_1pf_2vf(self):
-        """
-        2*100G NIC, each pf can create 1024 rules at least, vfs share 14336 rules table
-        4*25G NIC, each pf can create 512 rules at least, vfs share 14336 rules table
-        so if 2*25G NIC, max number is 14848 on 1pf and 2vfs.
-        """
-        self.dut.kill_all()
-        self.session_secondary = self.dut.new_session()
-
-        #create 1025 rules on pf1
-        src_file = 'create_1025_kernel_rules'
-        flows=open(self.src_file_dir + src_file,mode='w')
-        count=0
-        if self.nic in ["columbiaville_100g"]:
-            for i in range(4):
-                for j in range(256):
-                    flows.write('ethtool -N %s flow-type tcp4 src-ip 192.168.%d.%d dst-ip 192.168.100.2 src-port 32 dst-port 33 action 8 \n' % (self.pf1_intf,i,j))
-                    count=count+1
-            flows.write('ethtool -N %s flow-type tcp4 src-ip 192.168.100.0 dst-ip 192.168.100.2 src-port 32 dst-port 33 action 8 \n' % self.pf1_intf)
-            count=count+1
-            flows.close()
-            self.verify(count == 1025, "failed to create 1025 fdir rules on pf.")
-        elif self.nic in ["columbiaville_25g"]:
-            for i in range(2):
-                for j in range(256):
-                    flows.write('ethtool -N %s flow-type tcp4 src-ip 192.168.%d.%d dst-ip 192.168.100.2 src-port 32 dst-port 33 action 8 \n' % (self.pf1_intf,i,j))
-                    count=count+1
-            flows.write('ethtool -N %s flow-type tcp4 src-ip 192.168.100.0 dst-ip 192.168.100.2 src-port 32 dst-port 33 action 8 \n' % self.pf1_intf)
-            count=count+1
-            flows.close()
-            self.verify(count == 513, "failed to create 1025 fdir rules on pf.")
-        self.dut.session.copy_file_to(self.src_file_dir + src_file, self.dut_file_dir)
-        # create 1025 rules on pf1
-        fkr = open(self.src_file_dir + src_file, "r+")
-        kernel_rules = fkr.read()
-        fkr.close()
-        self.dut.send_expect(kernel_rules, "# ")
-        time.sleep(15)
-
-        #create 1 rule on vf00, and 14334 rules on vf01
-        src_file_vf = 'create_14335_rules_on_2vfs'
-        flows = open(self.src_file_dir + src_file_vf, mode='w')
-        flows.write('flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.0 / end actions queue index 5 / mark / end \n')
-        count=1
-        for i in range(55):
-            for j in range(256):
-                flows.write('flow create 1 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.%d.%d / end actions queue index 5 / mark / end \n'%(i,j))
-                count=count+1
-        for j in range(254):
-            flows.write('flow create 1 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.55.%d / end actions queue index 5 / mark / end \n' % j)
-            count=count+1
-        flows.close()
-        self.verify(count == 14335, "failed to create 14335 fdir rules on vfs.")
-        self.dut.session.copy_file_to(self.src_file_dir + src_file_vf, self.dut_file_dir)
-
-        # start testpmd with creating rules in commandline
-        eal_param = "-c f -n 6 -w %s -w %s" % (self.sriov_vfs_pf0[0].pci,self.sriov_vfs_pf0[1].pci)
-        command = self.path + eal_param + " -- -i --rxq=%s --txq=%s" % (self.cvlq_num, self.cvlq_num) + " --cmdline-file=%s" % self.dut_file_dir + src_file_vf
-        fdw = open("15360_rules_vf_result.txt", "w")
-        fdw.write(self.dut.send_expect(command, "testpmd> ", 360))
-        fdw.close()
-
-        self.config_testpmd()
-        # check there is 1 rule created on vf00
-        self.check_fdir_rule(port_id=0, rule_list=['0'])
-
-        # can't create more than 14335 rules on 2vf, the rule index is from 0
-        rule_14334_vf1 = "flow create 1 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.56.0 / end actions queue index 5 / mark / end"
-        pkt_14334 = 'Ether(dst="00:11:22:33:44:66")/IP(src="192.168.0.20",dst="192.168.56.0")/Raw("x" * 80)'
-        self.create_fdir_rule(rule_14334_vf1, check_stats=False)
-
-        #check there are 14334 rules created on vf01
-        out = self.check_rule_number(port_id=1, num=14334)
-        self.verify("14334" not in out, "more than 15360 rules are created on 2vf")
-
-        # delete a rule on pf0
-        self.session_secondary.send_expect("ethtool -N %s delete 14847" % self.pf1_intf, "# ")
-
-        # then can create one more rule on vf01
-        self.create_fdir_rule(rule_14334_vf1, check_stats=True)
-        out_14334 = self.send_pkts_getouput(pkts=pkt_14334, pf_id=0)
-        rfc.check_iavf_fdir_mark(out_14334, pkt_num=1, check_param={"port_id": 1, "mark_id": 0, "queue": 5}, stats=True)
-
-        self.dut.send_expect("flow flush 0", "testpmd> ", timeout=200)
-        self.dut.send_expect("flow flush 1", "testpmd> ", timeout=200)
-        self.check_fdir_rule(port_id=0, stats=False)
-        self.check_fdir_rule(port_id=1, stats=False)
-        out_14334 = self.send_pkts_getouput(pkts=pkt_14334, pf_id=0)
-        rfc.check_iavf_fdir_mark(out_14334, pkt_num=1, check_param={"port_id": 1, "mark_id": 0, "queue": 5}, stats=False)
-
-        self.dut.send_expect("quit", "# ")
-        self.dut.close_session(self.session_secondary)
-        self.re_load_ice_driver()
-        self.setup_2pf_4vf_env()
-
-    def test_maxnum_15360rules_1pf_0_rules_vf(self):
-        """
-        2*100G NIC, each pf can create 1024 rules at least, vfs share 14336 rules table
-        4*25G NIC, each pf can create 512 rules at least, vfs share 14336 rules table
-        so if 2*25G NIC, max number is 14848 on 1pf and vfs.
-        create 15360/14848 rules on pf1, check failed to create rule on vf00 and vf10
-        """
-        self.dut.kill_all()
-        self.session_secondary = self.dut.new_session()
-
-        #create 15360 rules on pf1
-        src_file = 'create_15360_kernel_rules'
-        flows=open(self.src_file_dir + src_file,mode='w')
-        count=0
-        if self.nic in ["columbiaville_100g"]:
-            for i in range(60):
-                for j in range(256):
-                    flows.write('ethtool -N %s flow-type tcp4 src-ip 192.168.%d.%d dst-ip 192.168.100.2 src-port 32 dst-port 33 action 8 \n' % (self.pf1_intf,i,j))
-                    count=count+1
-            flows.close()
-            self.verify(count == 15360, "failed to create 15360 fdir rules on pf.")
-        elif self.nic in ["columbiaville_25g"]:
-            for i in range(58):
-                for j in range(256):
-                    flows.write('ethtool -N %s flow-type tcp4 src-ip 192.168.%d.%d dst-ip 192.168.100.2 src-port 32 dst-port 33 action 8 \n' % (self.pf1_intf,i,j))
-                    count=count+1
-            flows.close()
-            self.verify(count == 14848, "failed to create 14848 fdir rules on pf.")
-        self.dut.session.copy_file_to(self.src_file_dir + src_file, self.dut_file_dir)
-        # create 15360 rules on pf1
-        fkr = open(self.src_file_dir + src_file, "r+")
-        kernel_rules = fkr.read()
-        fkr.close()
-        self.dut.send_expect(kernel_rules, "# ")
-        time.sleep(200)
-        # failed to create 1 more rule on pf1
-        self.dut.send_expect("ethtool -N %s flow-type tcp4 src-ip 192.168.100.0 dst-ip 192.168.100.2 src-port 32 dst-port 33 action 8" % self.pf1_intf, "Cannot insert RX class rule: No space left on device")
-        # start testpmd with creating rules in commandline
-        eal_param = "-c f -n 6 -w %s -w %s" % (self.sriov_vfs_pf0[0].pci,self.sriov_vfs_pf1[0].pci)
-        command = self.path + eal_param + " -- -i --rxq=%s --txq=%s" % (self.cvlq_num, self.cvlq_num)
-        self.dut.send_expect(command, "testpmd> ", 20)
-
-        self.config_testpmd()
-        rule_0_vf00 = "flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.56.0 / end actions queue index 5 / mark / end"
-        pkt_0_vf00 = 'Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.20",dst="192.168.56.0")/Raw("x" * 80)'
-        rule_0_vf10 = "flow create 1 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.56.0 / end actions queue index 5 / mark / end"
-        pkt_0_vf10 = 'Ether(dst="00:11:22:33:44:77")/IP(src="192.168.0.20",dst="192.168.56.0")/Raw("x" * 80)'
-
-        #failed to create rule on vf00 and vf10
-        self.create_fdir_rule(rule_0_vf00, check_stats=False)
-        self.create_fdir_rule(rule_0_vf10, check_stats=False)
-        self.check_rule_number(port_id=0, num=0)
-        self.check_rule_number(port_id=1, num=0)
-
-        # delete a rule on pf1
-        self.session_secondary.send_expect("ethtool -N %s delete 14847" % self.pf1_intf, "# ")
-
-        # then can create one rule on vf00
-        self.create_fdir_rule(rule_0_vf00, check_stats=True)
-        self.create_fdir_rule(rule_0_vf10, check_stats=False)
-        self.check_rule_number(port_id=0, num=1)
-        self.check_rule_number(port_id=1, num=0)
-
-        # delete a rule on pf1
-        self.session_secondary.send_expect("ethtool -N %s delete 14846" % self.pf1_intf, "# ")
-
-        # then can create one rule on vf10
-        self.create_fdir_rule(rule_0_vf10, check_stats=True)
-        self.check_rule_number(port_id=1, num=1)
-
-        out_0_vf00 = self.send_pkts_getouput(pkts=pkt_0_vf00, pf_id=0)
-        rfc.check_iavf_fdir_mark(out_0_vf00, pkt_num=1, check_param={"port_id": 0, "mark_id": 0, "queue": 5}, stats=True)
-
-        out_0_vf10 = self.send_pkts_getouput(pkts=pkt_0_vf10, pf_id=1)
-        rfc.check_iavf_fdir_mark(out_0_vf10, pkt_num=1, check_param={"port_id": 1, "mark_id": 0, "queue": 5}, stats=True)
-
-        self.dut.send_expect("quit", "# ")
-        self.dut.close_session(self.session_secondary)
-        self.re_load_ice_driver()
-        self.setup_2pf_4vf_env()
-
     def test_maxnum_128_profiles(self):
         """
         There are 128 profiles in total.
@@ -3390,77 +3068,6 @@ class TestIAVFFdir(TestCase):
         out = self.send_pkts_getouput(pkts=pkt)
         rfc.check_iavf_fdir_mark(out, pkt_num=1, check_param={"port_id": 0, "mark_id": 0, "queue": 1}, stats=True)
 
-    def test_stress_add_delete_rules_1vf(self):
-        """
-        add/delete rules 14336 times on 1 vf
-        """
-        rules = [
-            "flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / udp src is 22 dst is 23 / end actions queue index 6 / mark / end",
-            "flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions rss queues 2 3 end / mark id 1 / end"]
-        pkts = [
-            'Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.20",dst="192.168.0.21")/UDP(sport=22,dport=23)/Raw("x" * 80)',
-            'Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.20",dst="192.168.0.21")/TCP(sport=22,dport=23)/Raw("x" * 80)']
-        self.dut.kill_all()
-        src_file = 'add_delete_rules_1vf'
-        flows=open(self.src_file_dir + src_file,mode='w')
-        count=0
-        for i in range(14336):
-            flows.write('%s \n' % rules[0])
-            flows.write('%s \n' % rules[1])
-            flows.write('flow flush 0\n')
-            count=count+1
-        flows.close()
-        self.verify(count == 14336, "failed to add/delete 14336 times of fdir rules on vf.")
-        self.dut.session.copy_file_to(self.src_file_dir + src_file, self.dut_file_dir)
-
-        eal_param = "-c f -n 6 -w %s -w %s" % (self.sriov_vfs_pf0[0].pci,self.sriov_vfs_pf0[1].pci)
-        command = self.path + eal_param + " -- -i --rxq=%s --txq=%s" % (self.cvlq_num, self.cvlq_num) + " --cmdline-file=%s" % self.dut_file_dir + src_file
-        self.dut.send_expect(command, "testpmd> ", 900)
-        self.config_testpmd()
-        self.check_fdir_rule(port_id=0, stats=False)
-        self.create_fdir_rule(rules, check_stats=True)
-        out_0 = self.send_pkts_getouput(pkts=pkts[0])
-        rfc.check_iavf_fdir_mark(out_0, pkt_num=1, check_param={"port_id": 0, "mark_id": 0, "queue": 6}, stats=True)
-        out_1 = self.send_pkts_getouput(pkts=pkts[1])
-        rfc.check_iavf_fdir_mark(out_1, pkt_num=1, check_param={"port_id": 0, "mark_id": 1, "queue": [2, 3]}, stats=True)
-
-    def test_stress_add_delete_rules_2vf(self):
-        """
-        add/delete rules 14336 times on 2 vfs
-        """
-        rules = [
-            "flow create 0 ingress pattern eth / ipv4 src is 192.168.56.0 dst is 192.1.0.0 tos is 4 / tcp src is 22 dst is 23 / end actions queue index 5 / end",
-            "flow create 1 ingress pattern eth / ipv4 src is 192.168.56.0 dst is 192.1.0.0 tos is 4 / tcp src is 22 dst is 23 / end actions queue index 5 / end"]
-        pkts = [
-            'Ether(dst="00:11:22:33:44:55")/IP(src="192.168.56.0",dst="192.1.0.0", tos=4)/TCP(sport=22,dport=23)/Raw("x" * 80)',
-            'Ether(dst="00:11:22:33:44:66")/IP(src="192.168.56.0",dst="192.1.0.0", tos=4)/TCP(sport=22,dport=23)/Raw("x" * 80)']
-        self.dut.kill_all()
-        src_file = 'add_delete_rules_2vfs'
-        flows=open(self.src_file_dir + src_file,mode='w')
-        count=0
-        for i in range(14336):
-            flows.write('%s \n' % rules[0])
-            flows.write('%s \n' % rules[1])
-            flows.write('flow flush 0\n')
-            flows.write('flow flush 1\n')
-            count=count+1
-        flows.close()
-        self.verify(count == 14336, "failed to add/delete 14336 times of fdir rules on 2 vfs.")
-        self.dut.session.copy_file_to(self.src_file_dir + src_file, self.dut_file_dir)
-
-        eal_param = "-c f -n 6 -w %s -w %s" % (self.sriov_vfs_pf0[0].pci,self.sriov_vfs_pf0[1].pci)
-        command = self.path + eal_param + " -- -i --rxq=%s --txq=%s" % (self.cvlq_num, self.cvlq_num) + " --cmdline-file=%s" % self.dut_file_dir + src_file
-        self.dut.send_expect(command, "testpmd> ", 900)
-        self.config_testpmd()
-        self.check_fdir_rule(port_id=0, stats=False)
-        self.check_fdir_rule(port_id=1, stats=False)
-
-        self.create_fdir_rule(rules, check_stats=True)
-        out_0 = self.send_pkts_getouput(pkts=pkts[0], pf_id=0)
-        rfc.check_iavf_fdir_mark(out_0, pkt_num=1, check_param={"port_id": 0, "queue": 5}, stats=True)
-        out_1 = self.send_pkts_getouput(pkts=pkts[1], pf_id=0)
-        rfc.check_iavf_fdir_mark(out_1, pkt_num=1, check_param={"port_id": 1, "queue": 5}, stats=True)
-
     def test_stress_delete_rules(self):
         """
         delete 1st/2nd/last rule won't affect other rules
-- 
2.17.1


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [dts]  [PATCH V1 2/6] test_plans/iavf_fdir remove 6 subcases
  2020-11-20 10:45 [dts] [PATCH V1 0/6] Remove 8 duplicate cases sunqin
  2020-11-20  2:16 ` Sun, QinX
  2020-11-20 10:45 ` [dts] [PATCH V1 1/6] tests/iavf_fdir remove 6 cases sunqin
@ 2020-11-20 10:45 ` sunqin
  2020-11-20 10:45 ` [dts] [PATCH V1 3/6] tests/cvl_fdir remove 1 case sunqin
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: sunqin @ 2020-11-20 10:45 UTC (permalink / raw)
  To: dts; +Cc: sunqin

Remove 6 cases:

test_maxnum_14336rules_1vf
test_maxnum_14336rules_2vf
test_maxnum_15360rules_1pf_2vf
test_maxnum_15360rules_1pf_0_rules_vf
test_stress_add_delete_rules_1vf
test_stress_add_delete_rules_2vf

The 6 cases have been moved to 'cvl_limit_value_test' suite

Signed-off-by: sunqin <qinx.sun@intel.com>
---
 test_plans/iavf_fdir_test_plan.rst | 304 +----------------------------
 1 file changed, 7 insertions(+), 297 deletions(-)

diff --git a/test_plans/iavf_fdir_test_plan.rst b/test_plans/iavf_fdir_test_plan.rst
index ed71d589..64f6dae9 100644
--- a/test_plans/iavf_fdir_test_plan.rst
+++ b/test_plans/iavf_fdir_test_plan.rst
@@ -3742,220 +3742,7 @@ All the max number cases are designed based on 2*100G NIC.
 If the hardware is 4*25G NIC, the guaranteed rule number of PF is 512.
 So in subcase 3 and subcase 4, there can be created at most 14848 rules on 1pf and 2vfs.
 
-Subcase 1: 14336 rules on 1 vf
-------------------------------
-
-1. create 14336 rules on vf00::
-
-    flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.0 / end actions queue index 1 / mark / end
-    flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.1 / end actions queue index 1 / mark / end
-    ......
-    flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.55.255 / end actions queue index 1 / mark / end
-
-   all the rules are created successfully.
-
-2. create one more rule::
-
-    flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.56.0 / end actions queue index 1 / mark / end
-
-   the rule failed to create. return the error message.
-
-3. check the rule list, there are 14336 rules listed.
-
-4. send matched packets for rule 0 and rule 14335::
-
-    sendp([Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.20",dst="192.168.0.0")/Raw('x' * 80)],iface="enp134s0f1")
-    sendp([Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.20",dst="192.168.55.255")/Raw('x' * 80)],iface="enp134s0f1")
-
-   check all packets are redirected to expected queue with FDIR matched ID=0x0
-
-5. create a rule on vf01, it failed,
-   check the error message, the rule number has expired the max rule number.
-
-6. create a rule on vf10, it failed,
-   check the error message, the rule number has expired the max rule number.
-
-7. flush all the rules, check the rule list,
-   there is no rule listed.
-
-8. verify matched packets for rule 0  and rule 14335 received without FDIR matched ID.
-
-Subcase 2: 14336 rules on 2 vfs of 2pfs
----------------------------------------
-
-1. start testpmd on vf00::
-
-    ./testpmd -c 0xf -n 6 -w 86:01.0 --file-prefix=vf00 -- -i --rxq=4 --txq=4
-
-   create 1 rule on vf00::
-
-    flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.0 / end actions queue index 1 / mark / end
-
-   created successfully, check the rule is listed.
-
-2. start testpmd on vf10::
-
-    ./testpmd -c 0xf0 -n 6 -w 86:0a.0 --file-prefix=vf10 -- -i --rxq=4 --txq=4
-
-   create 14336 rules on vf10::
-
-    flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.0 / end actions queue index 1 / mark / end
-    flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.1 / end actions queue index 1 / mark / end
-    ......
-    flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.55.255 / end actions queue index 1 / mark / end
-
-   all the rules except the last one are created successfully.
-   check the rule list, there listed 14335 rules.
-
-3. send matched packet to vf00 and matched packet for rule 14334 to vf10,
-   check all packets are redirected to expected queue with FDIR matched ID=0x0
-
-4. flush all the rules, check the rule list,
-   there is no rule listed.
-
-5. verify matched packet received without FDIR matched ID.
-
-Subcase 3: 1025 rules on 1pf and 14335 rules on 2vfs
-----------------------------------------------------
-each pf can create 1024 rules at least in 2 ports card.
-each pf can create 512 rules at least in 4 ports card.
-there are 14k rules shared by pfs and vfs.
-so 1 pf and 2 vfs can create 15360 rules at most on 2 ports card.
-1 pf and 2 vfs can create 14848 rules at most on 4 ports card.
-
-1. create 1025 rules on pf0::
-
-    ethtool -N enp134s0f0 flow-type tcp4 src-ip 192.168.0.0 dst-ip 192.168.100.2 src-port 32 dst-port 33 action 8
-    ethtool -N enp134s0f0 flow-type tcp4 src-ip 192.168.0.1 dst-ip 192.168.100.2 src-port 32 dst-port 33 action 8
-    ......
-    ethtool -N enp134s0f0 flow-type tcp4 src-ip 192.168.3.255 dst-ip 192.168.100.2 src-port 32 dst-port 33 action 8
-    ethtool -N enp134s0f0 flow-type tcp4 src-ip 192.168.4.0 dst-ip 192.168.100.2 src-port 32 dst-port 33 action 8
-
-   all the rules can be created successfully::
-
-    Added rule with ID <Rule ID>
-
-   List the rules on pf0::
-
-    ethtool -n enp134s0f0
-
-2. start testpmd on vf00::
-
-    ./testpmd -c 0xf -n 6 -w 86:01.0 --file-prefix=vf00 -- -i --rxq=4 --txq=4
-
-   create 1 rule on vf00::
-
-    flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.0 / end actions queue index 1 / mark / end
-
-   created successfully, check the rule is listed.
-
-2. start testpmd on vf10::
-
-    ./testpmd -c 0xf0 -n 6 -w 86:0a.0 --file-prefix=vf10 -- -i --rxq=4 --txq=4
-
-   create 14335 rules on vf10::
-
-    flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.0 / end actions queue index 1 / mark / end
-    flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.1 / end actions queue index 1 / mark / end
-    ......
-    flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.55.254 / end actions queue index 1 / mark / end
-
-   all the rules except the last one are created successfully.
-   check the rule list, there listed 14334 rules.
-
-3. send matched packet to vf00 and matched packet for rule 14333 to vf10,
-   check all packets are redirected to expected queue with FDIR matched ID=0x0
-
-4. delete 1 rule on pf0::
-
-    ethtool -N enp134s0f0 delete <Rule ID>
-
-5. create one more rule on vf10::
-
-    flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.55.254 / end actions queue index 1 / mark / end
-
-   the rule can be created successfully.
-
-6. send matched packet to vf10, it can be redirected to queue 1 with FDIR matched ID=0x0.
-
-7. flush all the rules, check the rule list,
-   there is no rule listed.
-
-8. verify matched packet received without FDIR matched ID.
-
-Subcase 4: 15360 rules on 1pf and 0 rules on 2vfs
--------------------------------------------------
-each pf can create 1024 rules at least in 2 ports card.
-each pf can create 512 rules at least in 4 ports card.
-there are 14k rules shared by pfs and vfs.
-so 1 pf and 2 vfs can create 15360 rules at most on 2 ports card.
-1 pf and 2 vfs can create 14848 rules at most on 4 ports card.
-so if create 15360/14848 rules on 1 pf, there can't create rule on vf successfully.
-
-1. create 15360 rules on pf0::
-
-    ethtool -N enp134s0f0 flow-type tcp4 src-ip 192.168.0.0 dst-ip 192.168.100.2 src-port 32 dst-port 33 action 8
-    ethtool -N enp134s0f0 flow-type tcp4 src-ip 192.168.0.1 dst-ip 192.168.100.2 src-port 32 dst-port 33 action 8
-    ......
-    ethtool -N enp134s0f0 flow-type tcp4 src-ip 192.168.57.255 dst-ip 192.168.100.2 src-port 32 dst-port 33 action 8
-
-   all the rules can be created successfully::
-
-    Added rule with ID <Rule ID>
-
-2. failed to create one more rule on pf0::
-
-    ethtool -N enp134s0f0 flow-type tcp4 src-ip 192.168.58.0 dst-ip 192.168.100.2 src-port 32 dst-port 33 action 8
-
-3. start testpmd on vf00 and vf10::
-
-    ./testpmd -c 0xf -n 6 -w 86:01.0 -w 86:11.0 --file-prefix=vf00 -- -i --rxq=4 --txq=4
-
-   create 1 rule on vf00::
-
-    flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.0 / end actions queue index 1 / mark / end
-
-   failed to create the rule, check there is no rule listed.
-
-   create 1 rule on vf10::
-
-    flow create 1 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.0 / end actions queue index 1 / mark / end
-
-   failed to create the rule, check there is no rule listed.
-
-4. delete 1 rule on pf0::
-
-    ethtool -N enp134s0f0 delete <Rule ID>
-
-5. create 1 rule on vf00::
-
-    flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.55.254 / end actions queue index 1 / mark / end
-
-   the rule can be created successfully.
-
-   create 1 rule on vf10::
-
-    flow create 1 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.0 / end actions queue index 1 / mark / end
-
-   failed to create the rule, check there is no rule listed.
-
-6. send matched packet to vf00, it can be redirected to queue 1 with FDIR matched ID=0x0.
-   send matched packet to vf10, it is received without FDIR matched ID.
-
-7. delete 1 more rule on pf0::
-
-    ethtool -N enp134s0f0 delete <Rule ID>
-
-8. create 1 rule on vf10::
-
-    flow create 1 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.0 / end actions queue index 1 / mark / end
-
-   the rule can be created successfully.
-
-9. send matched packet to vf00, it can be redirected to queue 1 with FDIR matched ID=0x0.
-   send matched packet to vf10, it can be redirected to queue 1 with FDIR matched ID=0x0.
-
-Subcase 5: 128 profiles
+Subcase 1: 128 profiles
 -----------------------
 
 1. create 16 vfs on pf0::
@@ -4061,84 +3848,7 @@ Subcase 1: port stop/port start
 
 5. verify matched packet can be still redirected to queue 1 with FDIR matched ID=0x0.
 
-Subcase 2: add/delete rules
----------------------------
-
-1. create two rules::
-
-    flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / udp src is 22 dst is 23 / end actions queue index 1 / mark id 0 / end
-    flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions rss queues 2 3 end / mark id 1 / end
-
-   return the message::
-
-    Flow rule #0 created
-    Flow rule #1 created
-
-   list the rules::
-
-    testpmd> flow list 0
-    ID      Group   Prio    Attr    Rule
-    0       0       0       i--     ETH IPV4 UDP => QUEUE MARK
-    1       0       0       i--     ETH IPV4 TCP => RSS MARK
-
-2. delete the rules::
-
-    testpmd> flow flush 0
-
-3. repeat the create and delete operations in step1-2 14336 times.
-
-4. create the two rules one more time, check the rules listed.
-
-5. send matched packet::
-
-    sendp([Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.20",dst="192.168.0.21")/UDP(sport=22,dport=23)/Raw('x' * 80)],iface="enp134s0f1")
-    sendp([Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.20",dst="192.168.0.21")/TCP(sport=22,dport=23)/Raw('x' * 80)],iface="enp134s0f1")
-
-   check packet 1 is redirected to queue 1 with FDIR matched ID=0x0
-   check packet 2 is redirected to queue 2 or queue 3 with FDIR matched ID=0x1
-
-Subcase 3: add/delete rules on two VFs
---------------------------------------
-
-1. create a rule on each vf::
-
-    flow create 0 ingress pattern eth / ipv4 src is 192.168.0.0 dst is 192.1.0.0 tos is 4 / tcp src is 22 dst is 23 / end actions queue index 5 / end
-    flow create 1 ingress pattern eth / ipv4 src is 192.168.0.0 dst is 192.1.0.0 tos is 4 / tcp src is 22 dst is 23 / end actions queue index 5 / end
-
-   return the message::
-
-    Flow rule #0 created
-    Flow rule #0 created
-
-   list the rules::
-
-    testpmd> flow list 0
-    ID      Group   Prio    Attr    Rule
-    0       0       0       i--     ETH IPV4 TCP => QUEUE
-    testpmd> flow list 1
-    ID      Group   Prio    Attr    Rule
-    0       0       0       i--     ETH IPV4 TCP => QUEUE
-
-2. delete the rules::
-
-    flow destroy 0 rule 0
-    flow destroy 1 rule 0
-
-3. repeate the create and delete operations in step1-2 14336 times with different IP src address.
-
-4. create the rule on each vf one more time, check the rules listed::
-
-    flow create 0 ingress pattern eth / ipv4 src is 192.168.56.0 dst is 192.1.0.0 tos is 4 / tcp src is 22 dst is 23 / end actions queue index 5 / end
-    flow create 1 ingress pattern eth / ipv4 src is 192.168.56.0 dst is 192.1.0.0 tos is 4 / tcp src is 22 dst is 23 / end actions queue index 5 / end
-
-5. send matched packet::
-
-    sendp([Ether(dst="00:11:22:33:44:55")/IP(src="192.168.56.0",dst="192.1.0.0",tos=4)/TCP(sport=22,dport=23)/Raw('x' * 80)],iface="enp134s0f1")
-    sendp([Ether(dst="00:11:22:33:44:66")/IP(src="192.168.56.0",dst="192.1.0.0",tos=4)/TCP(sport=22,dport=23)/Raw('x' * 80)],iface="enp134s0f1")
-
-   check the packet is redirected to queue 5 of two vfs.
-
-Subcase 4: delete rules
+Subcase 2: delete rules
 -----------------------
 
 1. create 3 rules and destory the first rule::
@@ -4216,7 +3926,7 @@ Subcase 4: delete rules
 
    send packets match rule 0, rule 1 and rule 2, verify all packets are received without FDIR matched ID.
 
-Subcase 5: VF port reset and create a new rule
+Subcase 3: VF port reset and create a new rule
 ----------------------------------------------
 
 1. create a rule on vf00 and vf01::
@@ -4250,7 +3960,7 @@ Subcase 5: VF port reset and create a new rule
 
 7. send matched packets, check them redirected to expected queue with FDIR matched ID.
 
-Subcase 6: VF port reset and delete the rule
+Subcase 4: VF port reset and delete the rule
 --------------------------------------------
 
 1. create a rule on vf00 and vf01::
@@ -4286,7 +3996,7 @@ Subcase 6: VF port reset and delete the rule
 
 7. send matched packets, check them redirected to expected queue with FDIR matched ID.
 
-Subcase 7: PF reset VF and create a new rule
+Subcase 5: PF reset VF and create a new rule
 --------------------------------------------
 
 1. create a rule on vf00 and vf01::
@@ -4331,7 +4041,7 @@ Subcase 7: PF reset VF and create a new rule
 
 8. send matched packets, check them redirected to expected queue with FDIR matched ID.
 
-Subcase 8: PF reset VF and delete the rule
+Subcase 6: PF reset VF and delete the rule
 ------------------------------------------
 
 1. create a rule on vf00 and vf01::
@@ -4374,7 +4084,7 @@ Subcase 8: PF reset VF and delete the rule
 
 8. send matched packets, check them redirected to expected queue with FDIR matched ID.
 
-Subcase 9: check profile delete
+Subcase 7: check profile delete
 -------------------------------
 
 1. create ipv4-tcp and ipv6-udp rules::
-- 
2.17.1


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [dts]  [PATCH V1 3/6] tests/cvl_fdir remove 1 case
  2020-11-20 10:45 [dts] [PATCH V1 0/6] Remove 8 duplicate cases sunqin
                   ` (2 preceding siblings ...)
  2020-11-20 10:45 ` [dts] [PATCH V1 2/6] test_plans/iavf_fdir remove 6 subcases sunqin
@ 2020-11-20 10:45 ` sunqin
  2020-11-20 10:45 ` [dts] [PATCH V1 4/6] test_plans/cvl_fdir remove 1 subcase sunqin
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: sunqin @ 2020-11-20 10:45 UTC (permalink / raw)
  To: dts; +Cc: sunqin

Remove 1 case:

test_add_delete_rules

The case has been moved to 'cvl_limit_value_test' suite

Signed-off-by: sunqin <qinx.sun@intel.com>
---
 tests/TestSuite_cvl_fdir.py | 39 -------------------------------------
 1 file changed, 39 deletions(-)

diff --git a/tests/TestSuite_cvl_fdir.py b/tests/TestSuite_cvl_fdir.py
index 50a0236c..31bdfc7d 100644
--- a/tests/TestSuite_cvl_fdir.py
+++ b/tests/TestSuite_cvl_fdir.py
@@ -3018,45 +3018,6 @@ class TestCVLFdir(TestCase):
         out3 = self.send_pkts_getouput(pkts='Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.22",dst="192.168.0.23") / Raw("x" * 80)', port_id=0, count=1)
         rfc.check_mark(out3, pkt_num=1, check_param={"port_id": 0, "queue": 2, "mark_id": 1}, stats=True)
 
-    def test_add_delete_rules(self):
-        self.pmd_output.execute_cmd("stop")
-        self.dut.send_command("quit", timeout=2)
-        cmd_path = '/tmp/add_delete_rules'
-        cmds = [
-                   'flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / udp src is 22 dst is 23 / end actions queue index 1 / mark / end',
-                   'flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions rss queues 2 3 end / mark id 1 / end',
-                   'flow list 0', 'flow flush 0'] * 15360
-        cmds_li = map(lambda x: x + os.linesep, cmds)
-        with open(cmd_path, 'w') as f:
-            f.writelines(cmds_li)
-        self.dut.session.copy_file_to(cmd_path, cmd_path)
-        try:
-            eal_param = self.dut.create_eal_parameters(cores="1S/4C/1T", ports=[self.pci0, self.pci1], socket=self.ports_socket)
-            param = " --log-level='ice,7' -- -i --portmask=%s --rxq=%d --txq=%d --port-topology=loop --cmdline-file=%s" % (
-                self.portMask, 64, 64, cmd_path)
-            command_line = self.dut.apps_name['test-pmd'] + eal_param + param
-            out = self.dut.send_expect(command_line, 'testpmd>', timeout=600)
-            self.verify('Failed to create file' not in out, "create some rule failed: %s" % out)
-            self.config_testpmd()
-            self.pmd_output.execute_cmd('start')
-            rules = [
-                'flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / udp src is 22 dst is 23 / end actions queue index 1 / mark / end',
-                'flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions rss queues 2 3 end / mark id 1 / end']
-            rule_li = self.create_fdir_rule(rule=rules, check_stats=True)
-            self.check_fdir_rule(port_id=0, stats=True, rule_list=rule_li)
-            pkts = [
-                'Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.20",dst="192.168.0.21")/UDP(sport=22,dport=23)/Raw("x" * 80)',
-                'Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.20",dst="192.168.0.21")/TCP(sport=22,dport=23)/Raw("x" * 80)']
-            out1 = self.send_pkts_getouput(pkts=pkts[0], port_id=0, count=1)
-            rfc.check_mark(out1, pkt_num=1, check_param={"port_id": 0, "queue": 1, "mark_id": 0}, stats=True)
-            out2 = self.send_pkts_getouput(pkts=pkts[1], port_id=0, count=1)
-            rfc.check_mark(out2, pkt_num=1, check_param={"port_id": 0, "queue": [2, 3], "mark_id": 1}, stats=True)
-        except Exception as e:
-            raise Exception(e)
-        finally:
-            self.dut.kill_all()
-            self.launch_testpmd_with_mark()
-
     def test_delete_rules(self):
         rules = [
             'flow create 0 ingress pattern eth / ipv4 src is 192.168.56.0 dst is 192.1.0.0 tos is 4 / tcp src is 22 dst is 23 / end actions queue index 1 / mark / end',
-- 
2.17.1


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [dts]  [PATCH V1 4/6] test_plans/cvl_fdir remove 1 subcase
  2020-11-20 10:45 [dts] [PATCH V1 0/6] Remove 8 duplicate cases sunqin
                   ` (3 preceding siblings ...)
  2020-11-20 10:45 ` [dts] [PATCH V1 3/6] tests/cvl_fdir remove 1 case sunqin
@ 2020-11-20 10:45 ` sunqin
  2020-11-20 10:45 ` [dts] [PATCH V1 5/6] tests/cvl_dcf_switch_filter remove 1 case sunqin
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: sunqin @ 2020-11-20 10:45 UTC (permalink / raw)
  To: dts; +Cc: sunqin

Remove 1 case:

test_add_delete_rules

The case has been moved to 'cvl_limit_value_test' suite

Signed-off-by: sunqin <qinx.sun@intel.com>
---
 test_plans/cvl_fdir_test_plan.rst | 38 +------------------------------
 1 file changed, 1 insertion(+), 37 deletions(-)

diff --git a/test_plans/cvl_fdir_test_plan.rst b/test_plans/cvl_fdir_test_plan.rst
index 740cb37c..c6b6a8c5 100644
--- a/test_plans/cvl_fdir_test_plan.rst
+++ b/test_plans/cvl_fdir_test_plan.rst
@@ -3699,43 +3699,7 @@ Subcase 1: port stop/port start/port reset
 
    check the packet are redirected to queue 2 with FDIR matched ID=0x1
 
-Subcase 2: add/delete rules
----------------------------
-
-1. create two rules::
-
-    flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / udp src is 22 dst is 23 / end actions queue index 1 / mark / end
-    flow create 0 ingress pattern eth / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions rss queues 2 3 end / mark id 1 / end
-
-   return the message::
-
-    Flow rule #0 created
-    Flow rule #1 created
-
-   list the rules::
-
-    testpmd> flow list 0
-    ID      Group   Prio    Attr    Rule
-    0       0       0       i--     ETH IPV4 UDP => QUEUE MARK
-    1       0       0       i--     ETH IPV4 TCP => RSS MARK
-
-2. delete the rules::
-
-    testpmd> flow flush 0
-
-3. repeate the create and delete operations in step1-2 15360 times.
-
-4. create the two rules one more time, check the rules listed.
-
-5. send matched packet::
-
-    sendp([Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.20",dst="192.168.0.21")/UDP(sport=22,dport=23)/Raw('x' * 80)],iface="enp175s0f0")
-    sendp([Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.20",dst="192.168.0.21")/TCP(sport=22,dport=23)/Raw('x' * 80)],iface="enp175s0f0")
-
-   check packet 1 is redirected to queue 1 with FDIR matched ID=0x0
-   check packet 2 is redirected to queue 2 or queue 3 with FDIR matched ID=0x1
-
-Subcase 3: delete rules
+Subcase 2: delete rules
 -----------------------
 
 1. create 3 rules and destory the first rule::
-- 
2.17.1


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [dts]  [PATCH V1 5/6] tests/cvl_dcf_switch_filter remove 1 case
  2020-11-20 10:45 [dts] [PATCH V1 0/6] Remove 8 duplicate cases sunqin
                   ` (4 preceding siblings ...)
  2020-11-20 10:45 ` [dts] [PATCH V1 4/6] test_plans/cvl_fdir remove 1 subcase sunqin
@ 2020-11-20 10:45 ` sunqin
  2020-11-20 10:45 ` [dts] [PATCH V1 6/6] test_plans/cvl_dcf_switch_filter " sunqin
  2020-11-23  3:14 ` [dts] [PATCH V1 0/6] Remove 8 duplicate cases Tu, Lijuan
  7 siblings, 0 replies; 9+ messages in thread
From: sunqin @ 2020-11-20 10:45 UTC (permalink / raw)
  To: dts; +Cc: sunqin

Remove 1 case:

test_max_rule_number

The case has been moved to 'cvl_limit_value_test' suite

Signed-off-by: sunqin <qinx.sun@intel.com>
---
 tests/TestSuite_cvl_dcf_switch_filter.py | 73 ------------------------
 1 file changed, 73 deletions(-)

diff --git a/tests/TestSuite_cvl_dcf_switch_filter.py b/tests/TestSuite_cvl_dcf_switch_filter.py
index 64f50de4..a65b73a3 100644
--- a/tests/TestSuite_cvl_dcf_switch_filter.py
+++ b/tests/TestSuite_cvl_dcf_switch_filter.py
@@ -2025,79 +2025,6 @@ class CVLDCFSwitchFilterTest(TestCase):
         destroy_dict["expect_results"]["expect_pkts"] = 0
         self.send_and_check_packets(destroy_dict)
 
-    def test_max_rule_number(self):
-        #set up 4 vfs on 1 pf environment
-        self.setup_1pf_vfs_env()
-        #create 32563 rules with the same pattern, but different input set to file
-        src_file = 'dep/testpmd_cmds_32k_switch_rules'
-        flows = open(src_file, mode='w')
-        rule_count = 1
-        for i in range(0,255):
-            for j in range(0,255):
-                if not rule_count > 32563:
-                    flows.write('flow create 0 ingress pattern eth / ipv4 src is 192.168.%d.%d / end actions vf id 1 / end \n' % (i, j))
-                    matched_scapy_str = 'Ether(dst="68:05:ca:8d:ed:a8")/IP(src="192.168.%d.%d")/TCP(sport=25,dport=23)/Raw("X"*480)' % (i, j)
-                    tv_max_rule_number["matched"]["scapy_str"].append(matched_scapy_str)
-                    rule_count += 1
-                else:
-                    break
-            if rule_count > 32563:
-                break
-        flows.close()
-        self.dut_file_dir = '/tmp'
-        self.dut.session.copy_file_to(src_file, self.dut_file_dir)
-        #launch testpmd with 32563 rules
-        vf0_pci = self.sriov_vfs_port_0[0].pci
-        vf1_pci = self.sriov_vfs_port_0[1].pci
-        all_eal_param = self.dut.create_eal_parameters(cores="1S/4C/1T", ports=[vf0_pci, vf1_pci], port_options={vf0_pci:"cap=dcf"})
-        command = self.path + all_eal_param +  " -- -i --cmdline-file=/tmp/testpmd_cmds_32k_switch_rules"
-        out = self.dut.send_expect(command, "testpmd> ", 360)
-        self.testpmd_status = "running"
-        self.dut.send_expect("set portlist 1", "testpmd> ", 15)
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 15)
-        #check the rule list with 32563 rules
-        rule_list_num = list(range(0, 32563))
-        rule_list = [str(x) for x in rule_list_num]
-        self.check_switch_filter_rule_list(0, rule_list)
-        #create other rules to make switch filter table full
-        m = i
-        t = j
-        p = re.compile(r"Flow rule #(\d+) created")
-        switch_table_full_flag = False
-        count = 0
-        for i in range(m,255):
-            for j in range(t,255):
-                rule = 'flow create 0 ingress pattern eth / ipv4 src is 192.168.%d.%d / end actions vf id 1 / end \n' % (i, j)
-                matched_packet = 'Ether(dst="68:05:ca:8d:ed:a8")/IP(src="192.168.%d.%d")/TCP(sport=25,dport=23)/Raw("X"*480)' % (i, j)
-                out = self.dut.send_expect(rule, "testpmd> ", timeout=2)  #create a rule
-                m1 = p.search(out)
-                if m1:
-                    rule_list.append(m1.group(1))
-                    tv_max_rule_number["matched"]["scapy_str"].append(matched_packet)
-                    count += 1
-                else:
-                    self.verify("Failed to create flow" in out, "Log not provide a friendly output to indicate that the rule failed to create.")
-                    switch_table_full_flag = True
-                    break
-            if switch_table_full_flag:
-                break
-        tv_max_rule_number["matched"]["expect_results"]["expect_pkts"] += count
-        #check the rule list
-        self.check_switch_filter_rule_list(0, rule_list)
-        #send matched packets and check
-        matched_dic = tv_max_rule_number["matched"]
-        self.send_and_check_packets(matched_dic)
-        #send mismatched packets and check
-        mismatched_dic = tv_max_rule_number["mismatched"]
-        self.send_and_check_packets(mismatched_dic)
-        #destroy rules and send matched packets
-        self.dut.send_expect("flow flush 0", "testpmd> ", 300)
-        self.check_switch_filter_rule_list(0, [])
-        #send matched packets and check
-        destroy_dict = copy.deepcopy(matched_dic)
-        destroy_dict["expect_results"]["expect_pkts"] = 0
-        self.send_and_check_packets(destroy_dict)
-
     def test_dcf_stop_start(self):
         #set up 4 vfs on 1 pf environment
         self.setup_1pf_vfs_env()
-- 
2.17.1


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [dts] [PATCH V1 6/6] test_plans/cvl_dcf_switch_filter remove 1 case
  2020-11-20 10:45 [dts] [PATCH V1 0/6] Remove 8 duplicate cases sunqin
                   ` (5 preceding siblings ...)
  2020-11-20 10:45 ` [dts] [PATCH V1 5/6] tests/cvl_dcf_switch_filter remove 1 case sunqin
@ 2020-11-20 10:45 ` " sunqin
  2020-11-23  3:14 ` [dts] [PATCH V1 0/6] Remove 8 duplicate cases Tu, Lijuan
  7 siblings, 0 replies; 9+ messages in thread
From: sunqin @ 2020-11-20 10:45 UTC (permalink / raw)
  To: dts; +Cc: sunqin

Remove 1 case:

test_max_rule_number

The case has been moved to 'cvl_limit_value_test' suite

Signed-off-by: sunqin <qinx.sun@intel.com>
---
 .../cvl_dcf_switch_filter_test_plan.rst       | 57 -------------------
 1 file changed, 57 deletions(-)

diff --git a/test_plans/cvl_dcf_switch_filter_test_plan.rst b/test_plans/cvl_dcf_switch_filter_test_plan.rst
index ff7c4454..55ea726f 100644
--- a/test_plans/cvl_dcf_switch_filter_test_plan.rst
+++ b/test_plans/cvl_dcf_switch_filter_test_plan.rst
@@ -4157,63 +4157,6 @@ will not hang and provide a friendly output.
    check the rules not exist in the list.
    send matched packets, check the packets are not to port 1.
 
-Test case: max rule number
-==========================
-
-Description: 32k switch filter rules can be created on a CVL card,
-and all PFs and VFs share the 32k rules. But the system will first create
-some MAC_VLAN rules in switch table, and as the number of rules increased,
-the hash conflicts in the switch filter table are increased, so we can
-create a total of 32563 switch filter rules on a DCF.
-
-1. create 32563 rules with the same pattern, but different input set::
-
-     testpmd> flow create 0 ingress pattern eth / ipv4 src is 192.168.0.0 / end actions vf id 1 / end
-     testpmd> flow create 0 ingress pattern eth / ipv4 src is 192.168.0.1 / end actions vf id 1 / end
-     ......
-     testpmd> flow create 0 ingress pattern eth / ipv4 src is 192.168.127.177 / end actions vf id 1 / end
-     testpmd> flow list 0
-
-   check the rules exist in the list.
-
-2. create one more rule::
-
-     testpmd> flow create 0 ingress pattern eth / ipv4 src is 192.168.127.178 / end actions vf id 1 / end
-
-   check the rule can not be created successfully, and
-   testpmd provide a friendly output, showing::
-
-     ice_flow_create(): Failed to create flow
-     port_flow_complain(): Caught PMD error type 2 (flow rule (handle)): switch filter create flow fail: Invalid argument
-
-3. check the rule list
-
-     testpmd> flow list 0
-
-   check the rule in step 2 not exists in the list.
-
-4. send 32563 matched packets for rule 0-32562::
-
-     sendp([Ether(dst="68:05:ca:8d:ed:a8")/IP(src="192.168.0.0")/TCP(sport=25,dport=23)/("X"*480)], iface="ens786f0", count=1)
-     sendp([Ether(dst="68:05:ca:8d:ed:a8")/IP(src="192.168.0.1")/TCP(sport=25,dport=23)/("X"*480)], iface="ens786f0", count=1)
-     ......
-     sendp([Ether(dst="68:05:ca:8d:ed:a8")/IP(src="192.168.127.177")/TCP(sport=25,dport=23)/("X"*480)], iface="ens786f0", count=1)
-
-   check port 1 receive the 32563 packets.
-   send 1 mismatched packet::
-
-     sendp([Ether(dst="68:05:ca:8d:ed:a8")/IP(src="192.167.0.1")/TCP(sport=25,dport=23)/("X"*480)], iface="ens786f0", count=1)
-
-   check the packet are not to port 1.
-
-5. verify rules can be destroyed::
-
-     testpmd> flow flush 0
-     testpmd> flow list 0
-
-   check the rules not exist in the list.
-   send 32563 matched packets, check the packets are not to port 1.
-
 Test case: negative cases
 =========================
 
-- 
2.17.1


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [dts] [PATCH V1 0/6] Remove 8 duplicate cases
  2020-11-20 10:45 [dts] [PATCH V1 0/6] Remove 8 duplicate cases sunqin
                   ` (6 preceding siblings ...)
  2020-11-20 10:45 ` [dts] [PATCH V1 6/6] test_plans/cvl_dcf_switch_filter " sunqin
@ 2020-11-23  3:14 ` Tu, Lijuan
  7 siblings, 0 replies; 9+ messages in thread
From: Tu, Lijuan @ 2020-11-23  3:14 UTC (permalink / raw)
  To: Sun, QinX, dts; +Cc: Sun, QinX

> Remove 8 duplicate cases from 3 suite and plan.
> 
> iavf_fdir: 6 cases
> cvl_fdir: 1 case
> cvl_dcf_switch_filter: 1 case
> 
> These 8 cases have been made as a new test suite 'cvl_limit_value_test',
> 
> so remove them from original suite and plan
> 
> sunqin (6):
>   tests/iavf_fdir remove 6 cases
>   test_plans/iavf_fdir remove 6 subcases
>   tests/cvl_fdir remove 1 case
>   test_plans/cvl_fdir remove 1 subcase
>   tests/cvl_dcf_switch_filter remove 1 case
>   test_plans/cvl_dcf_switch_filter remove 1 case

Applied

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, back to index

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-20 10:45 [dts] [PATCH V1 0/6] Remove 8 duplicate cases sunqin
2020-11-20  2:16 ` Sun, QinX
2020-11-20 10:45 ` [dts] [PATCH V1 1/6] tests/iavf_fdir remove 6 cases sunqin
2020-11-20 10:45 ` [dts] [PATCH V1 2/6] test_plans/iavf_fdir remove 6 subcases sunqin
2020-11-20 10:45 ` [dts] [PATCH V1 3/6] tests/cvl_fdir remove 1 case sunqin
2020-11-20 10:45 ` [dts] [PATCH V1 4/6] test_plans/cvl_fdir remove 1 subcase sunqin
2020-11-20 10:45 ` [dts] [PATCH V1 5/6] tests/cvl_dcf_switch_filter remove 1 case sunqin
2020-11-20 10:45 ` [dts] [PATCH V1 6/6] test_plans/cvl_dcf_switch_filter " sunqin
2020-11-23  3:14 ` [dts] [PATCH V1 0/6] Remove 8 duplicate cases Tu, Lijuan

test suite reviews and discussions

Archives are clonable:
	git clone --mirror http://inbox.dpdk.org/dts/0 dts/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 dts dts/ http://inbox.dpdk.org/dts \
		dts@dpdk.org
	public-inbox-index dts


Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.dts


AGPL code for this site: git clone https://public-inbox.org/ public-inbox