* [dts] [PATCH V2] tests/vf_kernel:adjust to dpdk17.08 @ 2017-08-31 9:59 xie,beibei 2017-09-01 1:44 ` Liu, Yong 0 siblings, 1 reply; 5+ messages in thread From: xie,beibei @ 2017-08-31 9:59 UTC (permalink / raw) To: dts; +Cc: xie,beibei In the dpdk pf + kernel vf test,it may have some unknown problems for frequent start the testpmd on PF device ,so the developer suggest only one time to start testpmd on PF device. Signed-off-by: xie,beibei <beibeix.xie@intel.com> --- tests/TestSuite_vf_kernel.py | 79 ++++++++++---------------------------------- 1 file changed, 18 insertions(+), 61 deletions(-) diff --git a/tests/TestSuite_vf_kernel.py b/tests/TestSuite_vf_kernel.py index fa89379..204467d 100644 --- a/tests/TestSuite_vf_kernel.py +++ b/tests/TestSuite_vf_kernel.py @@ -76,10 +76,8 @@ class TestVfKernel(TestCase): """ Run before each test case. """ - self.start_pf_vf() self.verify(self.check_pf_vf_link_status( self.vm0_dut, self.vm0_intf0), "vf link down") - pass def generate_pcap_pkt(self, macs, pktname='flow.pcap'): @@ -116,6 +114,7 @@ class TestVfKernel(TestCase): # so finally the pool will be full, then no more packet will be # received by VF self.dut_testpmd.execute_cmd("start") + time.sleep(5) vf0_prop_1 = {'opt_host': self.sriov_vfs_port[0].pci} vf0_prop_2 = {'opt_host': self.sriov_vfs_port[1].pci} @@ -180,8 +179,6 @@ class TestVfKernel(TestCase): self.vm0_dut.send_expect("systemctl stop NetworkManager", "# ", 60) self.vm1_dut.send_expect("systemctl stop NetworkManager", "# ", 60) - self.dut_testpmd.quit() - def destroy_vm_env(self): """ destroy vm environment @@ -216,26 +213,13 @@ class TestVfKernel(TestCase): self.vm0_dut.send_expect("ifconfig %s up" % self.vm0_intf0, "#") out = self.vm0_dut.send_expect("ethtool %s" % self.vm0_intf0, "#") self.verify("Link detected: yes" in out, "Wrong link status") + time.sleep(3) # pf up + vf down -> vf down self.vm0_dut.send_expect("ifconfig %s down" % self.vm0_intf0, "#") out = self.vm0_dut.send_expect("ethtool %s" % self.vm0_intf0, "#") self.verify("Link detected: no" in out, "Wrong link status") - - self.dut_testpmd.quit() - # pf down + vf up -> vf down - self.vm0_dut.send_expect("ifconfig %s up" % self.vm0_intf0, "#") - out = self.vm0_dut.send_expect("ethtool %s" % self.vm0_intf0, "#") - self.verify("Link detected: no" in out, "Wrong link status") - - # pf down + vf down -> vf down - self.vm0_dut.send_expect("ifconfig %s down" % self.vm0_intf0, "#") - out = self.vm0_dut.send_expect("ethtool %s" % self.vm0_intf0, "#") - self.verify("Link detected: no" in out, "Wrong link status") - - self.start_pf_vf() - self.verify(self.check_pf_vf_link_status( - self.vm0_dut, self.vm0_intf0), "vf link down") + time.sleep(3) def ping4(self, session, intf, ipv4): """ @@ -295,8 +279,6 @@ class TestVfKernel(TestCase): "ifconfig %s 0.0.0.0" % self.vm0_intf1, "#") self.tester.send_expect("ifconfig %s 0.0.0.0" % self.tester_intf, "#") - self.dut_testpmd.quit() - self.start_pf_vf() def test_reset(self): """ @@ -320,8 +302,6 @@ class TestVfKernel(TestCase): self.verify(self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, vm0_vf0_mac), "Unload VF1 kernel driver impact VF0") - self.dut_testpmd.quit() - self.start_pf_vf() self.verify(self.check_pf_vf_link_status( self.vm0_dut, self.vm0_intf0), "vm0_vf0 link down") @@ -343,6 +323,7 @@ class TestVfKernel(TestCase): vm0_vf0_mac = self.vm0_dut.ports_info[0]['port'].get_mac_addr() self.verify(self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, vm0_vf0_mac), "Reset VF1 kernel driver impact VF0") + self.vm1_dut.send_expect("modprobe %svf" % self.kdriver, "#") def test_address(self): """ @@ -356,6 +337,7 @@ class TestVfKernel(TestCase): "ifconfig %s %s netmask 255.255.255.0" % (self.vm0_intf0, vm0_ip0), "#") self.tester.send_expect( "ifconfig %s %s netmask 255.255.255.0" % (self.tester_intf, pf_ip), "#") + # pf ping vm0_vf0 self.verify(self.ping4(self.tester, self.tester_intf, vm0_ip0), "%s ping %s failed" % (self.tester_intf, vm0_ip0)) @@ -434,6 +416,7 @@ class TestVfKernel(TestCase): # Send packet from tester to VF MAC with not-matching vlan id, check # the packet can't be received at the vlan device wrong_vlan = vlan_ids % 4095 + 1 + self.verify(self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, vm0_vf0_mac, vlan_id='%d' % wrong_vlan) == False, "received wrong vlan packet") @@ -462,7 +445,7 @@ class TestVfKernel(TestCase): """ verify packet statistic """ - + time.sleep(10) out = self.vm0_dut.send_expect("ethtool -S %s" % self.vm0_intf0, "#") rx_packets_before = re.findall("\s*rx.*packets:\s*(\d*)", out) nb_rx_pkts_before = 0 @@ -482,21 +465,6 @@ class TestVfKernel(TestCase): self.verify(nb_rx_pkts_after == 10 + nb_rx_pkts_before, "rx_packets calculate error") - def start_pf_vf(self): - """ - know issue DPDK-2208. dpdk-2849 - """ - self.dut_testpmd.start_testpmd( - "Default", "--rxq=4 --txq=4 --port-topology=chained") - self.dut_testpmd.execute_cmd('set fwd rxonly') - self.dut_testpmd.execute_cmd('set verbose 1') - self.dut_testpmd.execute_cmd("start") - time.sleep(10) - self.vm0_dut.send_expect("rmmod %svf" % self.kdriver, "#") - self.vm1_dut.send_expect("rmmod %svf" % self.kdriver, "#") - self.vm0_dut.send_expect("modprobe %svf" % self.kdriver, "#") - self.vm1_dut.send_expect("modprobe %svf" % self.kdriver, "#") - def check_pf_vf_link_status(self, session, intf): """ sometimes pf/vf will up abnormal, retry 5 times @@ -511,9 +479,7 @@ class TestVfKernel(TestCase): if "Network is down" in out: print GREEN(out) print GREEN("Try again") - self.dut_testpmd.quit() self.vm0_dut.restore_interfaces_linux() - self.start_pf_vf() else: out = session.send_expect("ethtool %s" % intf, "#") if "Link detected: yes" in out: @@ -553,17 +519,11 @@ class TestVfKernel(TestCase): vm0_vf0_mac, pkt_lens=2000) == False, "kernel VF receive error packet") # Change DPDK PF mtu as 3000,check no confusion/crash on kernel VF - if self.nic.startswith('niantic'): - self.dut_testpmd.quit() - self.dut_testpmd.start_testpmd( - "Default", "--rxq=4 --txq=4 --port-topology=chained --max-pkt-len=3000") - elif self.nic.startswith('fortville'): - self.dut_testpmd.execute_cmd('stop') - self.dut_testpmd.execute_cmd('port stop all') - self.dut_testpmd.execute_cmd('port config mtu 0 3000') - self.dut_testpmd.execute_cmd('port start all') - self.dut_testpmd.execute_cmd('stop') + self.dut_testpmd.execute_cmd('port stop all') + self.dut_testpmd.execute_cmd('port config mtu 0 3000') + self.dut_testpmd.execute_cmd('port start all') + self.dut_testpmd.execute_cmd('set promisc all off') self.dut_testpmd.execute_cmd('set fwd rxonly') self.dut_testpmd.execute_cmd('set verbose 1') @@ -593,15 +553,10 @@ class TestVfKernel(TestCase): self.verify(self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, vm0_vf0_mac, pkt_lens=2000), "VF can't receive packet") - if self.nic.startswith('niantic'): - self.dut_testpmd.quit() - self.dut_testpmd.start_testpmd( - "Default", "--rxq=4 --txq=4 --port-topology=chained") - elif self.nic.startswith('fortville'): - self.dut_testpmd.execute_cmd('stop') - self.dut_testpmd.execute_cmd('port stop all') - self.dut_testpmd.execute_cmd('port config mtu 0 1500') - self.dut_testpmd.execute_cmd('port start all') + self.dut_testpmd.execute_cmd('stop') + self.dut_testpmd.execute_cmd('port stop all') + self.dut_testpmd.execute_cmd('port config mtu 0 1500') + self.dut_testpmd.execute_cmd('port start all') self.dut_testpmd.execute_cmd('start') @@ -767,6 +722,7 @@ class TestVfKernel(TestCase): if date_now >= date_new: break + time.sleep(3) def send_packets(self): self.tester.scapy_foreground() @@ -1088,7 +1044,6 @@ class TestVfKernel(TestCase): self.vm0_dut.close_session(vm0_vf2_newvmsession) if getattr(self, 'vm0_vf3_newvmsession', None): self.vm0_dut.close_session(vm0_vf3_newvmsession) - self.dut_testpmd.quit() # Sometime test failed ,we still need clear ip. self.vm0_dut.send_expect( @@ -1097,12 +1052,14 @@ class TestVfKernel(TestCase): "ifconfig %s 0.0.0.0" % self.vm0_intf1, "#") self.tester.send_expect("ifconfig %s 0.0.0.0" % self.tester_intf, "#") + time.sleep(5) def tear_down_all(self): """ Run after each test suite. """ + self.dut_testpmd.quit() self.destroy_vm_env() self.dut.kill_all() time.sleep(2) -- 2.5.5 ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dts] [PATCH V2] tests/vf_kernel:adjust to dpdk17.08 2017-08-31 9:59 [dts] [PATCH V2] tests/vf_kernel:adjust to dpdk17.08 xie,beibei @ 2017-09-01 1:44 ` Liu, Yong 2017-09-01 3:18 ` Xie, BeibeiX 0 siblings, 1 reply; 5+ messages in thread From: Liu, Yong @ 2017-09-01 1:44 UTC (permalink / raw) To: Xie, BeibeiX, dts; +Cc: Xu, Qian Q Beibei, Could you please give the bug id for this issue? We should not modify overall test plan without any approval. Thanks, Marvin > -----Original Message----- > From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of xie,beibei > Sent: Thursday, August 31, 2017 6:00 PM > To: dts@dpdk.org > Cc: Xie, BeibeiX <beibeix.xie@intel.com> > Subject: [dts] [PATCH V2] tests/vf_kernel:adjust to dpdk17.08 > > In the dpdk pf + kernel vf test,it may have some unknown problems > for frequent start the testpmd on PF device ,so the developer suggest > only one time to start testpmd on PF device. > > > Signed-off-by: xie,beibei <beibeix.xie@intel.com> > --- > tests/TestSuite_vf_kernel.py | 79 ++++++++++----------------------------- > ----- > 1 file changed, 18 insertions(+), 61 deletions(-) > > diff --git a/tests/TestSuite_vf_kernel.py b/tests/TestSuite_vf_kernel.py > index fa89379..204467d 100644 > --- a/tests/TestSuite_vf_kernel.py > +++ b/tests/TestSuite_vf_kernel.py > @@ -76,10 +76,8 @@ class TestVfKernel(TestCase): > """ > Run before each test case. > """ > - self.start_pf_vf() > self.verify(self.check_pf_vf_link_status( > self.vm0_dut, self.vm0_intf0), "vf link down") > - > pass > > def generate_pcap_pkt(self, macs, pktname='flow.pcap'): > @@ -116,6 +114,7 @@ class TestVfKernel(TestCase): > # so finally the pool will be full, then no more packet will be > # received by VF > self.dut_testpmd.execute_cmd("start") > + time.sleep(5) > > vf0_prop_1 = {'opt_host': self.sriov_vfs_port[0].pci} > vf0_prop_2 = {'opt_host': self.sriov_vfs_port[1].pci} > @@ -180,8 +179,6 @@ class TestVfKernel(TestCase): > self.vm0_dut.send_expect("systemctl stop NetworkManager", "# ", > 60) > self.vm1_dut.send_expect("systemctl stop NetworkManager", "# ", > 60) > > - self.dut_testpmd.quit() > - > def destroy_vm_env(self): > """ > destroy vm environment > @@ -216,26 +213,13 @@ class TestVfKernel(TestCase): > self.vm0_dut.send_expect("ifconfig %s up" % self.vm0_intf0, > "#") > out = self.vm0_dut.send_expect("ethtool %s" % self.vm0_intf0, > "#") > self.verify("Link detected: yes" in out, "Wrong link status") > + time.sleep(3) > > # pf up + vf down -> vf down > self.vm0_dut.send_expect("ifconfig %s down" % self.vm0_intf0, > "#") > out = self.vm0_dut.send_expect("ethtool %s" % self.vm0_intf0, > "#") > self.verify("Link detected: no" in out, "Wrong link status") > - > - self.dut_testpmd.quit() > - # pf down + vf up -> vf down > - self.vm0_dut.send_expect("ifconfig %s up" % self.vm0_intf0, > "#") > - out = self.vm0_dut.send_expect("ethtool %s" % self.vm0_intf0, > "#") > - self.verify("Link detected: no" in out, "Wrong link status") > - > - # pf down + vf down -> vf down > - self.vm0_dut.send_expect("ifconfig %s down" % self.vm0_intf0, > "#") > - out = self.vm0_dut.send_expect("ethtool %s" % self.vm0_intf0, > "#") > - self.verify("Link detected: no" in out, "Wrong link status") > - > - self.start_pf_vf() > - self.verify(self.check_pf_vf_link_status( > - self.vm0_dut, self.vm0_intf0), "vf link down") > + time.sleep(3) > > def ping4(self, session, intf, ipv4): > """ > @@ -295,8 +279,6 @@ class TestVfKernel(TestCase): > "ifconfig %s 0.0.0.0" % self.vm0_intf1, "#") > self.tester.send_expect("ifconfig %s 0.0.0.0" % > self.tester_intf, "#") > - self.dut_testpmd.quit() > - self.start_pf_vf() > > def test_reset(self): > """ > @@ -320,8 +302,6 @@ class TestVfKernel(TestCase): > self.verify(self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, > vm0_vf0_mac), "Unload VF1 > kernel driver impact VF0") > > - self.dut_testpmd.quit() > - self.start_pf_vf() > self.verify(self.check_pf_vf_link_status( > self.vm0_dut, self.vm0_intf0), "vm0_vf0 link down") > > @@ -343,6 +323,7 @@ class TestVfKernel(TestCase): > vm0_vf0_mac = self.vm0_dut.ports_info[0]['port'].get_mac_addr() > self.verify(self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, > vm0_vf0_mac), "Reset VF1 > kernel driver impact VF0") > + self.vm1_dut.send_expect("modprobe %svf" % self.kdriver, "#") > > def test_address(self): > """ > @@ -356,6 +337,7 @@ class TestVfKernel(TestCase): > "ifconfig %s %s netmask 255.255.255.0" % (self.vm0_intf0, > vm0_ip0), "#") > self.tester.send_expect( > "ifconfig %s %s netmask 255.255.255.0" % (self.tester_intf, > pf_ip), "#") > + > # pf ping vm0_vf0 > self.verify(self.ping4(self.tester, self.tester_intf, vm0_ip0), > "%s ping %s failed" % (self.tester_intf, vm0_ip0)) > @@ -434,6 +416,7 @@ class TestVfKernel(TestCase): > # Send packet from tester to VF MAC with not-matching vlan id, > check > # the packet can't be received at the vlan device > wrong_vlan = vlan_ids % 4095 + 1 > + > self.verify(self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, > vm0_vf0_mac, > vlan_id='%d' % wrong_vlan) == > False, "received wrong vlan packet") > > @@ -462,7 +445,7 @@ class TestVfKernel(TestCase): > """ > verify packet statistic > """ > - > + time.sleep(10) > out = self.vm0_dut.send_expect("ethtool -S %s" % self.vm0_intf0, > "#") > rx_packets_before = re.findall("\s*rx.*packets:\s*(\d*)", out) > nb_rx_pkts_before = 0 > @@ -482,21 +465,6 @@ class TestVfKernel(TestCase): > self.verify(nb_rx_pkts_after == 10 + nb_rx_pkts_before, > "rx_packets calculate error") > > - def start_pf_vf(self): > - """ > - know issue DPDK-2208. dpdk-2849 > - """ > - self.dut_testpmd.start_testpmd( > - "Default", "--rxq=4 --txq=4 --port-topology=chained") > - self.dut_testpmd.execute_cmd('set fwd rxonly') > - self.dut_testpmd.execute_cmd('set verbose 1') > - self.dut_testpmd.execute_cmd("start") > - time.sleep(10) > - self.vm0_dut.send_expect("rmmod %svf" % self.kdriver, "#") > - self.vm1_dut.send_expect("rmmod %svf" % self.kdriver, "#") > - self.vm0_dut.send_expect("modprobe %svf" % self.kdriver, "#") > - self.vm1_dut.send_expect("modprobe %svf" % self.kdriver, "#") > - > def check_pf_vf_link_status(self, session, intf): > """ > sometimes pf/vf will up abnormal, retry 5 times > @@ -511,9 +479,7 @@ class TestVfKernel(TestCase): > if "Network is down" in out: > print GREEN(out) > print GREEN("Try again") > - self.dut_testpmd.quit() > self.vm0_dut.restore_interfaces_linux() > - self.start_pf_vf() > else: > out = session.send_expect("ethtool %s" % intf, "#") > if "Link detected: yes" in out: > @@ -553,17 +519,11 @@ class TestVfKernel(TestCase): > vm0_vf0_mac, pkt_lens=2000) == > False, "kernel VF receive error packet") > > # Change DPDK PF mtu as 3000,check no confusion/crash on kernel > VF > - if self.nic.startswith('niantic'): > - self.dut_testpmd.quit() > - self.dut_testpmd.start_testpmd( > - "Default", "--rxq=4 --txq=4 --port-topology=chained -- > max-pkt-len=3000") > - elif self.nic.startswith('fortville'): > - self.dut_testpmd.execute_cmd('stop') > - self.dut_testpmd.execute_cmd('port stop all') > - self.dut_testpmd.execute_cmd('port config mtu 0 3000') > - self.dut_testpmd.execute_cmd('port start all') > - > self.dut_testpmd.execute_cmd('stop') > + self.dut_testpmd.execute_cmd('port stop all') > + self.dut_testpmd.execute_cmd('port config mtu 0 3000') > + self.dut_testpmd.execute_cmd('port start all') > + > self.dut_testpmd.execute_cmd('set promisc all off') > self.dut_testpmd.execute_cmd('set fwd rxonly') > self.dut_testpmd.execute_cmd('set verbose 1') > @@ -593,15 +553,10 @@ class TestVfKernel(TestCase): > self.verify(self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, > vm0_vf0_mac, pkt_lens=2000), > "VF can't receive packet") > > - if self.nic.startswith('niantic'): > - self.dut_testpmd.quit() > - self.dut_testpmd.start_testpmd( > - "Default", "--rxq=4 --txq=4 --port-topology=chained") > - elif self.nic.startswith('fortville'): > - self.dut_testpmd.execute_cmd('stop') > - self.dut_testpmd.execute_cmd('port stop all') > - self.dut_testpmd.execute_cmd('port config mtu 0 1500') > - self.dut_testpmd.execute_cmd('port start all') > + self.dut_testpmd.execute_cmd('stop') > + self.dut_testpmd.execute_cmd('port stop all') > + self.dut_testpmd.execute_cmd('port config mtu 0 1500') > + self.dut_testpmd.execute_cmd('port start all') > > self.dut_testpmd.execute_cmd('start') > > @@ -767,6 +722,7 @@ class TestVfKernel(TestCase): > > if date_now >= date_new: > break > + time.sleep(3) > > def send_packets(self): > self.tester.scapy_foreground() > @@ -1088,7 +1044,6 @@ class TestVfKernel(TestCase): > self.vm0_dut.close_session(vm0_vf2_newvmsession) > if getattr(self, 'vm0_vf3_newvmsession', None): > self.vm0_dut.close_session(vm0_vf3_newvmsession) > - self.dut_testpmd.quit() > > # Sometime test failed ,we still need clear ip. > self.vm0_dut.send_expect( > @@ -1097,12 +1052,14 @@ class TestVfKernel(TestCase): > "ifconfig %s 0.0.0.0" % self.vm0_intf1, "#") > self.tester.send_expect("ifconfig %s 0.0.0.0" % > self.tester_intf, "#") > + time.sleep(5) > > > def tear_down_all(self): > """ > Run after each test suite. > """ > + self.dut_testpmd.quit() > self.destroy_vm_env() > self.dut.kill_all() > time.sleep(2) > -- > 2.5.5 ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dts] [PATCH V2] tests/vf_kernel:adjust to dpdk17.08 2017-09-01 1:44 ` Liu, Yong @ 2017-09-01 3:18 ` Xie, BeibeiX 2017-09-01 5:02 ` Liu, Yong 0 siblings, 1 reply; 5+ messages in thread From: Xie, BeibeiX @ 2017-09-01 3:18 UTC (permalink / raw) To: Liu, Yong, dts; +Cc: Xu, Qian Q Hi,yong Modify the vf_kernel script is based on https://jira01.devtools.intel.com/browse/DPDK-2849 Best regards, Beibei -----Original Message----- From: Liu, Yong Sent: Friday, September 1, 2017 9:44 AM To: Xie, BeibeiX; dts@dpdk.org Cc: Xu, Qian Q Subject: RE: [dts] [PATCH V2] tests/vf_kernel:adjust to dpdk17.08 Beibei, Could you please give the bug id for this issue? We should not modify overall test plan without any approval. Thanks, Marvin > -----Original Message----- > From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of xie,beibei > Sent: Thursday, August 31, 2017 6:00 PM > To: dts@dpdk.org > Cc: Xie, BeibeiX <beibeix.xie@intel.com> > Subject: [dts] [PATCH V2] tests/vf_kernel:adjust to dpdk17.08 > > In the dpdk pf + kernel vf test,it may have some unknown problems for > frequent start the testpmd on PF device ,so the developer suggest only > one time to start testpmd on PF device. > > > Signed-off-by: xie,beibei <beibeix.xie@intel.com> > --- > tests/TestSuite_vf_kernel.py | 79 > ++++++++++----------------------------- > ----- > 1 file changed, 18 insertions(+), 61 deletions(-) > > diff --git a/tests/TestSuite_vf_kernel.py > b/tests/TestSuite_vf_kernel.py index fa89379..204467d 100644 > --- a/tests/TestSuite_vf_kernel.py > +++ b/tests/TestSuite_vf_kernel.py > @@ -76,10 +76,8 @@ class TestVfKernel(TestCase): > """ > Run before each test case. > """ > - self.start_pf_vf() > self.verify(self.check_pf_vf_link_status( > self.vm0_dut, self.vm0_intf0), "vf link down") > - > pass > > def generate_pcap_pkt(self, macs, pktname='flow.pcap'): > @@ -116,6 +114,7 @@ class TestVfKernel(TestCase): > # so finally the pool will be full, then no more packet will be > # received by VF > self.dut_testpmd.execute_cmd("start") > + time.sleep(5) > > vf0_prop_1 = {'opt_host': self.sriov_vfs_port[0].pci} > vf0_prop_2 = {'opt_host': self.sriov_vfs_port[1].pci} @@ > -180,8 +179,6 @@ class TestVfKernel(TestCase): > self.vm0_dut.send_expect("systemctl stop NetworkManager", "# > ", > 60) > self.vm1_dut.send_expect("systemctl stop NetworkManager", "# > ", > 60) > > - self.dut_testpmd.quit() > - > def destroy_vm_env(self): > """ > destroy vm environment > @@ -216,26 +213,13 @@ class TestVfKernel(TestCase): > self.vm0_dut.send_expect("ifconfig %s up" % > self.vm0_intf0, > "#") > out = self.vm0_dut.send_expect("ethtool %s" % > self.vm0_intf0, > "#") > self.verify("Link detected: yes" in out, "Wrong link > status") > + time.sleep(3) > > # pf up + vf down -> vf down > self.vm0_dut.send_expect("ifconfig %s down" % > self.vm0_intf0, > "#") > out = self.vm0_dut.send_expect("ethtool %s" % > self.vm0_intf0, > "#") > self.verify("Link detected: no" in out, "Wrong link > status") > - > - self.dut_testpmd.quit() > - # pf down + vf up -> vf down > - self.vm0_dut.send_expect("ifconfig %s up" % self.vm0_intf0, > "#") > - out = self.vm0_dut.send_expect("ethtool %s" % self.vm0_intf0, > "#") > - self.verify("Link detected: no" in out, "Wrong link status") > - > - # pf down + vf down -> vf down > - self.vm0_dut.send_expect("ifconfig %s down" % self.vm0_intf0, > "#") > - out = self.vm0_dut.send_expect("ethtool %s" % self.vm0_intf0, > "#") > - self.verify("Link detected: no" in out, "Wrong link status") > - > - self.start_pf_vf() > - self.verify(self.check_pf_vf_link_status( > - self.vm0_dut, self.vm0_intf0), "vf link down") > + time.sleep(3) > > def ping4(self, session, intf, ipv4): > """ > @@ -295,8 +279,6 @@ class TestVfKernel(TestCase): > "ifconfig %s 0.0.0.0" % self.vm0_intf1, "#") > self.tester.send_expect("ifconfig %s 0.0.0.0" % > self.tester_intf, "#") > - self.dut_testpmd.quit() > - self.start_pf_vf() > > def test_reset(self): > """ > @@ -320,8 +302,6 @@ class TestVfKernel(TestCase): > self.verify(self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, > vm0_vf0_mac), "Unload VF1 > kernel driver impact VF0") > > - self.dut_testpmd.quit() > - self.start_pf_vf() > self.verify(self.check_pf_vf_link_status( > self.vm0_dut, self.vm0_intf0), "vm0_vf0 link down") > > @@ -343,6 +323,7 @@ class TestVfKernel(TestCase): > vm0_vf0_mac = self.vm0_dut.ports_info[0]['port'].get_mac_addr() > self.verify(self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, > vm0_vf0_mac), "Reset VF1 > kernel driver impact VF0") > + self.vm1_dut.send_expect("modprobe %svf" % self.kdriver, "#") > > def test_address(self): > """ > @@ -356,6 +337,7 @@ class TestVfKernel(TestCase): > "ifconfig %s %s netmask 255.255.255.0" % (self.vm0_intf0, > vm0_ip0), "#") > self.tester.send_expect( > "ifconfig %s %s netmask 255.255.255.0" % > (self.tester_intf, pf_ip), "#") > + > # pf ping vm0_vf0 > self.verify(self.ping4(self.tester, self.tester_intf, vm0_ip0), > "%s ping %s failed" % (self.tester_intf, > vm0_ip0)) @@ -434,6 +416,7 @@ class TestVfKernel(TestCase): > # Send packet from tester to VF MAC with not-matching vlan > id, check > # the packet can't be received at the vlan device > wrong_vlan = vlan_ids % 4095 + 1 > + > self.verify(self.verify_vm_tcpdump(self.vm0_dut, > self.vm0_intf0, vm0_vf0_mac, > vlan_id='%d' % wrong_vlan) > == False, "received wrong vlan packet") > > @@ -462,7 +445,7 @@ class TestVfKernel(TestCase): > """ > verify packet statistic > """ > - > + time.sleep(10) > out = self.vm0_dut.send_expect("ethtool -S %s" % > self.vm0_intf0, > "#") > rx_packets_before = re.findall("\s*rx.*packets:\s*(\d*)", out) > nb_rx_pkts_before = 0 > @@ -482,21 +465,6 @@ class TestVfKernel(TestCase): > self.verify(nb_rx_pkts_after == 10 + nb_rx_pkts_before, > "rx_packets calculate error") > > - def start_pf_vf(self): > - """ > - know issue DPDK-2208. dpdk-2849 > - """ > - self.dut_testpmd.start_testpmd( > - "Default", "--rxq=4 --txq=4 --port-topology=chained") > - self.dut_testpmd.execute_cmd('set fwd rxonly') > - self.dut_testpmd.execute_cmd('set verbose 1') > - self.dut_testpmd.execute_cmd("start") > - time.sleep(10) > - self.vm0_dut.send_expect("rmmod %svf" % self.kdriver, "#") > - self.vm1_dut.send_expect("rmmod %svf" % self.kdriver, "#") > - self.vm0_dut.send_expect("modprobe %svf" % self.kdriver, "#") > - self.vm1_dut.send_expect("modprobe %svf" % self.kdriver, "#") > - > def check_pf_vf_link_status(self, session, intf): > """ > sometimes pf/vf will up abnormal, retry 5 times @@ -511,9 > +479,7 @@ class TestVfKernel(TestCase): > if "Network is down" in out: > print GREEN(out) > print GREEN("Try again") > - self.dut_testpmd.quit() > self.vm0_dut.restore_interfaces_linux() > - self.start_pf_vf() > else: > out = session.send_expect("ethtool %s" % intf, "#") > if "Link detected: yes" in out: > @@ -553,17 +519,11 @@ class TestVfKernel(TestCase): > vm0_vf0_mac, > pkt_lens=2000) == False, "kernel VF receive error packet") > > # Change DPDK PF mtu as 3000,check no confusion/crash on > kernel VF > - if self.nic.startswith('niantic'): > - self.dut_testpmd.quit() > - self.dut_testpmd.start_testpmd( > - "Default", "--rxq=4 --txq=4 --port-topology=chained -- > max-pkt-len=3000") > - elif self.nic.startswith('fortville'): > - self.dut_testpmd.execute_cmd('stop') > - self.dut_testpmd.execute_cmd('port stop all') > - self.dut_testpmd.execute_cmd('port config mtu 0 3000') > - self.dut_testpmd.execute_cmd('port start all') > - > self.dut_testpmd.execute_cmd('stop') > + self.dut_testpmd.execute_cmd('port stop all') > + self.dut_testpmd.execute_cmd('port config mtu 0 3000') > + self.dut_testpmd.execute_cmd('port start all') > + > self.dut_testpmd.execute_cmd('set promisc all off') > self.dut_testpmd.execute_cmd('set fwd rxonly') > self.dut_testpmd.execute_cmd('set verbose 1') @@ -593,15 > +553,10 @@ class TestVfKernel(TestCase): > self.verify(self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, > vm0_vf0_mac, > pkt_lens=2000), "VF can't receive packet") > > - if self.nic.startswith('niantic'): > - self.dut_testpmd.quit() > - self.dut_testpmd.start_testpmd( > - "Default", "--rxq=4 --txq=4 --port-topology=chained") > - elif self.nic.startswith('fortville'): > - self.dut_testpmd.execute_cmd('stop') > - self.dut_testpmd.execute_cmd('port stop all') > - self.dut_testpmd.execute_cmd('port config mtu 0 1500') > - self.dut_testpmd.execute_cmd('port start all') > + self.dut_testpmd.execute_cmd('stop') > + self.dut_testpmd.execute_cmd('port stop all') > + self.dut_testpmd.execute_cmd('port config mtu 0 1500') > + self.dut_testpmd.execute_cmd('port start all') > > self.dut_testpmd.execute_cmd('start') > > @@ -767,6 +722,7 @@ class TestVfKernel(TestCase): > > if date_now >= date_new: > break > + time.sleep(3) > > def send_packets(self): > self.tester.scapy_foreground() @@ -1088,7 +1044,6 @@ class > TestVfKernel(TestCase): > self.vm0_dut.close_session(vm0_vf2_newvmsession) > if getattr(self, 'vm0_vf3_newvmsession', None): > self.vm0_dut.close_session(vm0_vf3_newvmsession) > - self.dut_testpmd.quit() > > # Sometime test failed ,we still need clear ip. > self.vm0_dut.send_expect( > @@ -1097,12 +1052,14 @@ class TestVfKernel(TestCase): > "ifconfig %s 0.0.0.0" % self.vm0_intf1, "#") > self.tester.send_expect("ifconfig %s 0.0.0.0" % > self.tester_intf, "#") > + time.sleep(5) > > > def tear_down_all(self): > """ > Run after each test suite. > """ > + self.dut_testpmd.quit() > self.destroy_vm_env() > self.dut.kill_all() > time.sleep(2) > -- > 2.5.5 ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dts] [PATCH V2] tests/vf_kernel:adjust to dpdk17.08 2017-09-01 3:18 ` Xie, BeibeiX @ 2017-09-01 5:02 ` Liu, Yong 2017-09-01 5:24 ` Xie, BeibeiX 0 siblings, 1 reply; 5+ messages in thread From: Liu, Yong @ 2017-09-01 5:02 UTC (permalink / raw) To: Xie, BeibeiX, dts; +Cc: Xu, Qian Q Beibei, please add this information is your commit log and send the patch again. > -----Original Message----- > From: Xie, BeibeiX > Sent: Friday, September 01, 2017 11:19 AM > To: Liu, Yong <yong.liu@intel.com>; dts@dpdk.org > Cc: Xu, Qian Q <qian.q.xu@intel.com> > Subject: RE: [dts] [PATCH V2] tests/vf_kernel:adjust to dpdk17.08 > > Hi,yong > Modify the vf_kernel script is based on > https://jira01.devtools.intel.com/browse/DPDK-2849 > > Best regards, > Beibei > > -----Original Message----- > From: Liu, Yong > Sent: Friday, September 1, 2017 9:44 AM > To: Xie, BeibeiX; dts@dpdk.org > Cc: Xu, Qian Q > Subject: RE: [dts] [PATCH V2] tests/vf_kernel:adjust to dpdk17.08 > > Beibei, > Could you please give the bug id for this issue? We should not modify > overall test plan without any approval. > > Thanks, > Marvin > > > -----Original Message----- > > From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of xie,beibei > > Sent: Thursday, August 31, 2017 6:00 PM > > To: dts@dpdk.org > > Cc: Xie, BeibeiX <beibeix.xie@intel.com> > > Subject: [dts] [PATCH V2] tests/vf_kernel:adjust to dpdk17.08 > > > > In the dpdk pf + kernel vf test,it may have some unknown problems for > > frequent start the testpmd on PF device ,so the developer suggest only > > one time to start testpmd on PF device. > > > > > > Signed-off-by: xie,beibei <beibeix.xie@intel.com> > > --- > > tests/TestSuite_vf_kernel.py | 79 > > ++++++++++----------------------------- > > ----- > > 1 file changed, 18 insertions(+), 61 deletions(-) > > > > diff --git a/tests/TestSuite_vf_kernel.py > > b/tests/TestSuite_vf_kernel.py index fa89379..204467d 100644 > > --- a/tests/TestSuite_vf_kernel.py > > +++ b/tests/TestSuite_vf_kernel.py > > @@ -76,10 +76,8 @@ class TestVfKernel(TestCase): > > """ > > Run before each test case. > > """ > > - self.start_pf_vf() > > self.verify(self.check_pf_vf_link_status( > > self.vm0_dut, self.vm0_intf0), "vf link down") > > - > > pass > > > > def generate_pcap_pkt(self, macs, pktname='flow.pcap'): > > @@ -116,6 +114,7 @@ class TestVfKernel(TestCase): > > # so finally the pool will be full, then no more packet will be > > # received by VF > > self.dut_testpmd.execute_cmd("start") > > + time.sleep(5) > > > > vf0_prop_1 = {'opt_host': self.sriov_vfs_port[0].pci} > > vf0_prop_2 = {'opt_host': self.sriov_vfs_port[1].pci} @@ > > -180,8 +179,6 @@ class TestVfKernel(TestCase): > > self.vm0_dut.send_expect("systemctl stop NetworkManager", "# > > ", > > 60) > > self.vm1_dut.send_expect("systemctl stop NetworkManager", "# > > ", > > 60) > > > > - self.dut_testpmd.quit() > > - > > def destroy_vm_env(self): > > """ > > destroy vm environment > > @@ -216,26 +213,13 @@ class TestVfKernel(TestCase): > > self.vm0_dut.send_expect("ifconfig %s up" % > > self.vm0_intf0, > > "#") > > out = self.vm0_dut.send_expect("ethtool %s" % > > self.vm0_intf0, > > "#") > > self.verify("Link detected: yes" in out, "Wrong link > > status") > > + time.sleep(3) > > > > # pf up + vf down -> vf down > > self.vm0_dut.send_expect("ifconfig %s down" % > > self.vm0_intf0, > > "#") > > out = self.vm0_dut.send_expect("ethtool %s" % > > self.vm0_intf0, > > "#") > > self.verify("Link detected: no" in out, "Wrong link > > status") > > - > > - self.dut_testpmd.quit() > > - # pf down + vf up -> vf down > > - self.vm0_dut.send_expect("ifconfig %s up" % self.vm0_intf0, > > "#") > > - out = self.vm0_dut.send_expect("ethtool %s" % > self.vm0_intf0, > > "#") > > - self.verify("Link detected: no" in out, "Wrong link status") > > - > > - # pf down + vf down -> vf down > > - self.vm0_dut.send_expect("ifconfig %s down" % > self.vm0_intf0, > > "#") > > - out = self.vm0_dut.send_expect("ethtool %s" % > self.vm0_intf0, > > "#") > > - self.verify("Link detected: no" in out, "Wrong link status") > > - > > - self.start_pf_vf() > > - self.verify(self.check_pf_vf_link_status( > > - self.vm0_dut, self.vm0_intf0), "vf link down") > > + time.sleep(3) > > > > def ping4(self, session, intf, ipv4): > > """ > > @@ -295,8 +279,6 @@ class TestVfKernel(TestCase): > > "ifconfig %s 0.0.0.0" % self.vm0_intf1, "#") > > self.tester.send_expect("ifconfig %s 0.0.0.0" % > > self.tester_intf, "#") > > - self.dut_testpmd.quit() > > - self.start_pf_vf() > > > > def test_reset(self): > > """ > > @@ -320,8 +302,6 @@ class TestVfKernel(TestCase): > > self.verify(self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, > > vm0_vf0_mac), "Unload VF1 > > kernel driver impact VF0") > > > > - self.dut_testpmd.quit() > > - self.start_pf_vf() > > self.verify(self.check_pf_vf_link_status( > > self.vm0_dut, self.vm0_intf0), "vm0_vf0 link down") > > > > @@ -343,6 +323,7 @@ class TestVfKernel(TestCase): > > vm0_vf0_mac = self.vm0_dut.ports_info[0]['port'].get_mac_addr() > > self.verify(self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, > > vm0_vf0_mac), "Reset VF1 > > kernel driver impact VF0") > > + self.vm1_dut.send_expect("modprobe %svf" % self.kdriver, "#") > > > > def test_address(self): > > """ > > @@ -356,6 +337,7 @@ class TestVfKernel(TestCase): > > "ifconfig %s %s netmask 255.255.255.0" % (self.vm0_intf0, > > vm0_ip0), "#") > > self.tester.send_expect( > > "ifconfig %s %s netmask 255.255.255.0" % > > (self.tester_intf, pf_ip), "#") > > + > > # pf ping vm0_vf0 > > self.verify(self.ping4(self.tester, self.tester_intf, vm0_ip0), > > "%s ping %s failed" % (self.tester_intf, > > vm0_ip0)) @@ -434,6 +416,7 @@ class TestVfKernel(TestCase): > > # Send packet from tester to VF MAC with not-matching vlan > > id, check > > # the packet can't be received at the vlan device > > wrong_vlan = vlan_ids % 4095 + 1 > > + > > self.verify(self.verify_vm_tcpdump(self.vm0_dut, > > self.vm0_intf0, vm0_vf0_mac, > > vlan_id='%d' % wrong_vlan) > > == False, "received wrong vlan packet") > > > > @@ -462,7 +445,7 @@ class TestVfKernel(TestCase): > > """ > > verify packet statistic > > """ > > - > > + time.sleep(10) > > out = self.vm0_dut.send_expect("ethtool -S %s" % > > self.vm0_intf0, > > "#") > > rx_packets_before = re.findall("\s*rx.*packets:\s*(\d*)", out) > > nb_rx_pkts_before = 0 > > @@ -482,21 +465,6 @@ class TestVfKernel(TestCase): > > self.verify(nb_rx_pkts_after == 10 + nb_rx_pkts_before, > > "rx_packets calculate error") > > > > - def start_pf_vf(self): > > - """ > > - know issue DPDK-2208. dpdk-2849 > > - """ > > - self.dut_testpmd.start_testpmd( > > - "Default", "--rxq=4 --txq=4 --port-topology=chained") > > - self.dut_testpmd.execute_cmd('set fwd rxonly') > > - self.dut_testpmd.execute_cmd('set verbose 1') > > - self.dut_testpmd.execute_cmd("start") > > - time.sleep(10) > > - self.vm0_dut.send_expect("rmmod %svf" % self.kdriver, "#") > > - self.vm1_dut.send_expect("rmmod %svf" % self.kdriver, "#") > > - self.vm0_dut.send_expect("modprobe %svf" % self.kdriver, "#") > > - self.vm1_dut.send_expect("modprobe %svf" % self.kdriver, "#") > > - > > def check_pf_vf_link_status(self, session, intf): > > """ > > sometimes pf/vf will up abnormal, retry 5 times @@ -511,9 > > +479,7 @@ class TestVfKernel(TestCase): > > if "Network is down" in out: > > print GREEN(out) > > print GREEN("Try again") > > - self.dut_testpmd.quit() > > self.vm0_dut.restore_interfaces_linux() > > - self.start_pf_vf() > > else: > > out = session.send_expect("ethtool %s" % intf, "#") > > if "Link detected: yes" in out: > > @@ -553,17 +519,11 @@ class TestVfKernel(TestCase): > > vm0_vf0_mac, > > pkt_lens=2000) == False, "kernel VF receive error packet") > > > > # Change DPDK PF mtu as 3000,check no confusion/crash on > > kernel VF > > - if self.nic.startswith('niantic'): > > - self.dut_testpmd.quit() > > - self.dut_testpmd.start_testpmd( > > - "Default", "--rxq=4 --txq=4 --port-topology=chained -- > > max-pkt-len=3000") > > - elif self.nic.startswith('fortville'): > > - self.dut_testpmd.execute_cmd('stop') > > - self.dut_testpmd.execute_cmd('port stop all') > > - self.dut_testpmd.execute_cmd('port config mtu 0 3000') > > - self.dut_testpmd.execute_cmd('port start all') > > - > > self.dut_testpmd.execute_cmd('stop') > > + self.dut_testpmd.execute_cmd('port stop all') > > + self.dut_testpmd.execute_cmd('port config mtu 0 3000') > > + self.dut_testpmd.execute_cmd('port start all') > > + > > self.dut_testpmd.execute_cmd('set promisc all off') > > self.dut_testpmd.execute_cmd('set fwd rxonly') > > self.dut_testpmd.execute_cmd('set verbose 1') @@ -593,15 > > +553,10 @@ class TestVfKernel(TestCase): > > self.verify(self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, > > vm0_vf0_mac, > > pkt_lens=2000), "VF can't receive packet") > > > > - if self.nic.startswith('niantic'): > > - self.dut_testpmd.quit() > > - self.dut_testpmd.start_testpmd( > > - "Default", "--rxq=4 --txq=4 --port-topology=chained") > > - elif self.nic.startswith('fortville'): > > - self.dut_testpmd.execute_cmd('stop') > > - self.dut_testpmd.execute_cmd('port stop all') > > - self.dut_testpmd.execute_cmd('port config mtu 0 1500') > > - self.dut_testpmd.execute_cmd('port start all') > > + self.dut_testpmd.execute_cmd('stop') > > + self.dut_testpmd.execute_cmd('port stop all') > > + self.dut_testpmd.execute_cmd('port config mtu 0 1500') > > + self.dut_testpmd.execute_cmd('port start all') > > > > self.dut_testpmd.execute_cmd('start') > > > > @@ -767,6 +722,7 @@ class TestVfKernel(TestCase): > > > > if date_now >= date_new: > > break > > + time.sleep(3) > > > > def send_packets(self): > > self.tester.scapy_foreground() @@ -1088,7 +1044,6 @@ class > > TestVfKernel(TestCase): > > self.vm0_dut.close_session(vm0_vf2_newvmsession) > > if getattr(self, 'vm0_vf3_newvmsession', None): > > self.vm0_dut.close_session(vm0_vf3_newvmsession) > > - self.dut_testpmd.quit() > > > > # Sometime test failed ,we still need clear ip. > > self.vm0_dut.send_expect( > > @@ -1097,12 +1052,14 @@ class TestVfKernel(TestCase): > > "ifconfig %s 0.0.0.0" % self.vm0_intf1, "#") > > self.tester.send_expect("ifconfig %s 0.0.0.0" % > > self.tester_intf, "#") > > + time.sleep(5) > > > > > > def tear_down_all(self): > > """ > > Run after each test suite. > > """ > > + self.dut_testpmd.quit() > > self.destroy_vm_env() > > self.dut.kill_all() > > time.sleep(2) > > -- > > 2.5.5 ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dts] [PATCH V2] tests/vf_kernel:adjust to dpdk17.08 2017-09-01 5:02 ` Liu, Yong @ 2017-09-01 5:24 ` Xie, BeibeiX 0 siblings, 0 replies; 5+ messages in thread From: Xie, BeibeiX @ 2017-09-01 5:24 UTC (permalink / raw) To: Liu, Yong, dts; +Cc: Xu, Qian Q Thanks,yong. I will update it at next version -----Original Message----- From: Liu, Yong Sent: Friday, September 1, 2017 1:02 PM To: Xie, BeibeiX; dts@dpdk.org Cc: Xu, Qian Q Subject: RE: [dts] [PATCH V2] tests/vf_kernel:adjust to dpdk17.08 Beibei, please add this information is your commit log and send the patch again. > -----Original Message----- > From: Xie, BeibeiX > Sent: Friday, September 01, 2017 11:19 AM > To: Liu, Yong <yong.liu@intel.com>; dts@dpdk.org > Cc: Xu, Qian Q <qian.q.xu@intel.com> > Subject: RE: [dts] [PATCH V2] tests/vf_kernel:adjust to dpdk17.08 > > Hi,yong > Modify the vf_kernel script is based on > https://jira01.devtools.intel.com/browse/DPDK-2849 > > Best regards, > Beibei > > -----Original Message----- > From: Liu, Yong > Sent: Friday, September 1, 2017 9:44 AM > To: Xie, BeibeiX; dts@dpdk.org > Cc: Xu, Qian Q > Subject: RE: [dts] [PATCH V2] tests/vf_kernel:adjust to dpdk17.08 > > Beibei, > Could you please give the bug id for this issue? We should not modify > overall test plan without any approval. > > Thanks, > Marvin > > > -----Original Message----- > > From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of xie,beibei > > Sent: Thursday, August 31, 2017 6:00 PM > > To: dts@dpdk.org > > Cc: Xie, BeibeiX <beibeix.xie@intel.com> > > Subject: [dts] [PATCH V2] tests/vf_kernel:adjust to dpdk17.08 > > > > In the dpdk pf + kernel vf test,it may have some unknown problems > > for frequent start the testpmd on PF device ,so the developer > > suggest only one time to start testpmd on PF device. > > > > > > Signed-off-by: xie,beibei <beibeix.xie@intel.com> > > --- > > tests/TestSuite_vf_kernel.py | 79 > > ++++++++++----------------------------- > > ----- > > 1 file changed, 18 insertions(+), 61 deletions(-) > > > > diff --git a/tests/TestSuite_vf_kernel.py > > b/tests/TestSuite_vf_kernel.py index fa89379..204467d 100644 > > --- a/tests/TestSuite_vf_kernel.py > > +++ b/tests/TestSuite_vf_kernel.py > > @@ -76,10 +76,8 @@ class TestVfKernel(TestCase): > > """ > > Run before each test case. > > """ > > - self.start_pf_vf() > > self.verify(self.check_pf_vf_link_status( > > self.vm0_dut, self.vm0_intf0), "vf link down") > > - > > pass > > > > def generate_pcap_pkt(self, macs, pktname='flow.pcap'): > > @@ -116,6 +114,7 @@ class TestVfKernel(TestCase): > > # so finally the pool will be full, then no more packet will be > > # received by VF > > self.dut_testpmd.execute_cmd("start") > > + time.sleep(5) > > > > vf0_prop_1 = {'opt_host': self.sriov_vfs_port[0].pci} > > vf0_prop_2 = {'opt_host': self.sriov_vfs_port[1].pci} @@ > > -180,8 +179,6 @@ class TestVfKernel(TestCase): > > self.vm0_dut.send_expect("systemctl stop NetworkManager", > > "# ", > > 60) > > self.vm1_dut.send_expect("systemctl stop NetworkManager", > > "# ", > > 60) > > > > - self.dut_testpmd.quit() > > - > > def destroy_vm_env(self): > > """ > > destroy vm environment > > @@ -216,26 +213,13 @@ class TestVfKernel(TestCase): > > self.vm0_dut.send_expect("ifconfig %s up" % > > self.vm0_intf0, > > "#") > > out = self.vm0_dut.send_expect("ethtool %s" % > > self.vm0_intf0, > > "#") > > self.verify("Link detected: yes" in out, "Wrong link > > status") > > + time.sleep(3) > > > > # pf up + vf down -> vf down > > self.vm0_dut.send_expect("ifconfig %s down" % > > self.vm0_intf0, > > "#") > > out = self.vm0_dut.send_expect("ethtool %s" % > > self.vm0_intf0, > > "#") > > self.verify("Link detected: no" in out, "Wrong link > > status") > > - > > - self.dut_testpmd.quit() > > - # pf down + vf up -> vf down > > - self.vm0_dut.send_expect("ifconfig %s up" % self.vm0_intf0, > > "#") > > - out = self.vm0_dut.send_expect("ethtool %s" % > self.vm0_intf0, > > "#") > > - self.verify("Link detected: no" in out, "Wrong link status") > > - > > - # pf down + vf down -> vf down > > - self.vm0_dut.send_expect("ifconfig %s down" % > self.vm0_intf0, > > "#") > > - out = self.vm0_dut.send_expect("ethtool %s" % > self.vm0_intf0, > > "#") > > - self.verify("Link detected: no" in out, "Wrong link status") > > - > > - self.start_pf_vf() > > - self.verify(self.check_pf_vf_link_status( > > - self.vm0_dut, self.vm0_intf0), "vf link down") > > + time.sleep(3) > > > > def ping4(self, session, intf, ipv4): > > """ > > @@ -295,8 +279,6 @@ class TestVfKernel(TestCase): > > "ifconfig %s 0.0.0.0" % self.vm0_intf1, "#") > > self.tester.send_expect("ifconfig %s 0.0.0.0" % > > self.tester_intf, "#") > > - self.dut_testpmd.quit() > > - self.start_pf_vf() > > > > def test_reset(self): > > """ > > @@ -320,8 +302,6 @@ class TestVfKernel(TestCase): > > self.verify(self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, > > vm0_vf0_mac), "Unload > > VF1 kernel driver impact VF0") > > > > - self.dut_testpmd.quit() > > - self.start_pf_vf() > > self.verify(self.check_pf_vf_link_status( > > self.vm0_dut, self.vm0_intf0), "vm0_vf0 link down") > > > > @@ -343,6 +323,7 @@ class TestVfKernel(TestCase): > > vm0_vf0_mac = self.vm0_dut.ports_info[0]['port'].get_mac_addr() > > self.verify(self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, > > vm0_vf0_mac), "Reset VF1 > > kernel driver impact VF0") > > + self.vm1_dut.send_expect("modprobe %svf" % self.kdriver, > > + "#") > > > > def test_address(self): > > """ > > @@ -356,6 +337,7 @@ class TestVfKernel(TestCase): > > "ifconfig %s %s netmask 255.255.255.0" % > > (self.vm0_intf0, vm0_ip0), "#") > > self.tester.send_expect( > > "ifconfig %s %s netmask 255.255.255.0" % > > (self.tester_intf, pf_ip), "#") > > + > > # pf ping vm0_vf0 > > self.verify(self.ping4(self.tester, self.tester_intf, vm0_ip0), > > "%s ping %s failed" % (self.tester_intf, > > vm0_ip0)) @@ -434,6 +416,7 @@ class TestVfKernel(TestCase): > > # Send packet from tester to VF MAC with not-matching vlan > > id, check > > # the packet can't be received at the vlan device > > wrong_vlan = vlan_ids % 4095 + 1 > > + > > self.verify(self.verify_vm_tcpdump(self.vm0_dut, > > self.vm0_intf0, vm0_vf0_mac, > > vlan_id='%d' % > > wrong_vlan) == False, "received wrong vlan packet") > > > > @@ -462,7 +445,7 @@ class TestVfKernel(TestCase): > > """ > > verify packet statistic > > """ > > - > > + time.sleep(10) > > out = self.vm0_dut.send_expect("ethtool -S %s" % > > self.vm0_intf0, > > "#") > > rx_packets_before = re.findall("\s*rx.*packets:\s*(\d*)", out) > > nb_rx_pkts_before = 0 > > @@ -482,21 +465,6 @@ class TestVfKernel(TestCase): > > self.verify(nb_rx_pkts_after == 10 + nb_rx_pkts_before, > > "rx_packets calculate error") > > > > - def start_pf_vf(self): > > - """ > > - know issue DPDK-2208. dpdk-2849 > > - """ > > - self.dut_testpmd.start_testpmd( > > - "Default", "--rxq=4 --txq=4 --port-topology=chained") > > - self.dut_testpmd.execute_cmd('set fwd rxonly') > > - self.dut_testpmd.execute_cmd('set verbose 1') > > - self.dut_testpmd.execute_cmd("start") > > - time.sleep(10) > > - self.vm0_dut.send_expect("rmmod %svf" % self.kdriver, "#") > > - self.vm1_dut.send_expect("rmmod %svf" % self.kdriver, "#") > > - self.vm0_dut.send_expect("modprobe %svf" % self.kdriver, "#") > > - self.vm1_dut.send_expect("modprobe %svf" % self.kdriver, "#") > > - > > def check_pf_vf_link_status(self, session, intf): > > """ > > sometimes pf/vf will up abnormal, retry 5 times @@ -511,9 > > +479,7 @@ class TestVfKernel(TestCase): > > if "Network is down" in out: > > print GREEN(out) > > print GREEN("Try again") > > - self.dut_testpmd.quit() > > self.vm0_dut.restore_interfaces_linux() > > - self.start_pf_vf() > > else: > > out = session.send_expect("ethtool %s" % intf, "#") > > if "Link detected: yes" in out: > > @@ -553,17 +519,11 @@ class TestVfKernel(TestCase): > > vm0_vf0_mac, > > pkt_lens=2000) == False, "kernel VF receive error packet") > > > > # Change DPDK PF mtu as 3000,check no confusion/crash on > > kernel VF > > - if self.nic.startswith('niantic'): > > - self.dut_testpmd.quit() > > - self.dut_testpmd.start_testpmd( > > - "Default", "--rxq=4 --txq=4 --port-topology=chained -- > > max-pkt-len=3000") > > - elif self.nic.startswith('fortville'): > > - self.dut_testpmd.execute_cmd('stop') > > - self.dut_testpmd.execute_cmd('port stop all') > > - self.dut_testpmd.execute_cmd('port config mtu 0 3000') > > - self.dut_testpmd.execute_cmd('port start all') > > - > > self.dut_testpmd.execute_cmd('stop') > > + self.dut_testpmd.execute_cmd('port stop all') > > + self.dut_testpmd.execute_cmd('port config mtu 0 3000') > > + self.dut_testpmd.execute_cmd('port start all') > > + > > self.dut_testpmd.execute_cmd('set promisc all off') > > self.dut_testpmd.execute_cmd('set fwd rxonly') > > self.dut_testpmd.execute_cmd('set verbose 1') @@ -593,15 > > +553,10 @@ class TestVfKernel(TestCase): > > self.verify(self.verify_vm_tcpdump(self.vm0_dut, self.vm0_intf0, > > vm0_vf0_mac, > > pkt_lens=2000), "VF can't receive packet") > > > > - if self.nic.startswith('niantic'): > > - self.dut_testpmd.quit() > > - self.dut_testpmd.start_testpmd( > > - "Default", "--rxq=4 --txq=4 --port-topology=chained") > > - elif self.nic.startswith('fortville'): > > - self.dut_testpmd.execute_cmd('stop') > > - self.dut_testpmd.execute_cmd('port stop all') > > - self.dut_testpmd.execute_cmd('port config mtu 0 1500') > > - self.dut_testpmd.execute_cmd('port start all') > > + self.dut_testpmd.execute_cmd('stop') > > + self.dut_testpmd.execute_cmd('port stop all') > > + self.dut_testpmd.execute_cmd('port config mtu 0 1500') > > + self.dut_testpmd.execute_cmd('port start all') > > > > self.dut_testpmd.execute_cmd('start') > > > > @@ -767,6 +722,7 @@ class TestVfKernel(TestCase): > > > > if date_now >= date_new: > > break > > + time.sleep(3) > > > > def send_packets(self): > > self.tester.scapy_foreground() @@ -1088,7 +1044,6 @@ class > > TestVfKernel(TestCase): > > self.vm0_dut.close_session(vm0_vf2_newvmsession) > > if getattr(self, 'vm0_vf3_newvmsession', None): > > self.vm0_dut.close_session(vm0_vf3_newvmsession) > > - self.dut_testpmd.quit() > > > > # Sometime test failed ,we still need clear ip. > > self.vm0_dut.send_expect( > > @@ -1097,12 +1052,14 @@ class TestVfKernel(TestCase): > > "ifconfig %s 0.0.0.0" % self.vm0_intf1, "#") > > self.tester.send_expect("ifconfig %s 0.0.0.0" % > > self.tester_intf, "#") > > + time.sleep(5) > > > > > > def tear_down_all(self): > > """ > > Run after each test suite. > > """ > > + self.dut_testpmd.quit() > > self.destroy_vm_env() > > self.dut.kill_all() > > time.sleep(2) > > -- > > 2.5.5 ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2017-09-01 5:24 UTC | newest] Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2017-08-31 9:59 [dts] [PATCH V2] tests/vf_kernel:adjust to dpdk17.08 xie,beibei 2017-09-01 1:44 ` Liu, Yong 2017-09-01 3:18 ` Xie, BeibeiX 2017-09-01 5:02 ` Liu, Yong 2017-09-01 5:24 ` Xie, BeibeiX
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).