From: "Tu, Lijuan" <lijuan.tu@intel.com>
To: "Ling, WeiX" <weix.ling@intel.com>, "dts@dpdk.org" <dts@dpdk.org>
Cc: "Ling, WeiX" <weix.ling@intel.com>
Subject: Re: [dts] [PATCH V1] tests/vm2vm_virtio_net_perf: fix script issue
Date: Fri, 7 May 2021 06:12:42 +0000 [thread overview]
Message-ID: <ca743e47e1844c7281112e11a75709a0@intel.com> (raw)
In-Reply-To: <20210420053202.33753-1-weix.ling@intel.com>
> -----Original Message-----
> From: dts <dts-bounces@dpdk.org> On Behalf Of Wei Ling
> Sent: 2021年4月20日 13:32
> To: dts@dpdk.org
> Cc: Ling, WeiX <weix.ling@intel.com>
> Subject: [dts] [PATCH V1] tests/vm2vm_virtio_net_perf: fix script issue
>
> 1.Fix testcase 8 iperf test parameter wrong issue.
> 2.Add 'killall qemu-system-x86_64' step when use
> vm.stop() to quit vm exception.
>
> Signed-off-by: Wei Ling <weix.ling@intel.com>
> ---
> tests/TestSuite_vm2vm_virtio_net_perf.py | 41 ++++++++++++------------
> 1 file changed, 21 insertions(+), 20 deletions(-)
>
> diff --git a/tests/TestSuite_vm2vm_virtio_net_perf.py
> b/tests/TestSuite_vm2vm_virtio_net_perf.py
> index d1e94093..bb0ccb32 100644
> --- a/tests/TestSuite_vm2vm_virtio_net_perf.py
> +++ b/tests/TestSuite_vm2vm_virtio_net_perf.py
> @@ -73,12 +73,16 @@ class TestVM2VMVirtioNetPerf(TestCase):
> self.device_str = None
> self.checked_vm = False
> self.dut.restore_interfaces()
> + self.path=self.dut.apps_name['test-pmd']
> + self.testpmd_name=self.path.split("/")[-1]
>
> def set_up(self):
> """
> run before each test case.
> """
> self.dut.send_expect("rm -rf %s/vhost-net*" % self.base_dir, "#")
> + self.dut.send_expect("killall -s INT %s" % self.testpmd_name, "#")
> + self.dut.send_expect("killall qemu-system-x86_64", "#")
> self.vm_dut = []
> self.vm = []
>
> @@ -291,8 +295,12 @@ class TestVM2VMVirtioNetPerf(TestCase):
> return iperfdata
>
> def stop_all_apps(self):
> - for i in range(len(self.vm)):
> - self.vm[i].stop()
> + # add killall qemu-system-x86_64 step when use vm.stop() to quit vm
> exception
> + try:
> + for i in range(len(self.vm)):
> + self.vm[i].stop()
> + except:
> + self.dut.send_expect("killall qemu-system-x86_64", "#")
It's not a good idea to kill all qemu process, DTS records the process id, prefer to kill the specific process but not all.
> self.pmd_vhost.quit()
>
> def offload_capbility_check(self, vm_client):
> @@ -338,20 +346,13 @@ class TestVM2VMVirtioNetPerf(TestCase):
> self.verify(md5_send == md5_revd, 'the received file is different with send
> file')
>
> def bind_nic_driver(self, ports, driver=""):
> - if driver == "igb_uio":
> - for port in ports:
> - netdev = self.dut.ports_info[port]['port']
> - driver = netdev.get_nic_driver()
> - if driver != 'igb_uio':
> - netdev.bind_driver(driver='igb_uio')
> - else:
> - for port in ports:
> - netdev = self.dut.ports_info[port]['port']
> - driver_now = netdev.get_nic_driver()
> - if driver == "":
> - driver = netdev.default_driver
> - if driver != driver_now:
> - netdev.bind_driver(driver=driver)
> + for port in ports:
> + netdev = self.dut.ports_info[port]['port']
> + driver_now = netdev.get_nic_driver()
> + if driver == "":
> + driver = netdev.default_driver
> + if driver != driver_now:
> + netdev.bind_driver(driver=driver)
>
> def test_vm2vm_split_ring_iperf_with_tso(self):
> """
> @@ -490,7 +491,7 @@ class TestVM2VMVirtioNetPerf(TestCase):
> self.vm_args = "disable-
> modern=false,mrg_rxbuf=on,csum=on,guest_csum=on,host_tso4=on,guest_tso
> 4=on,guest_ecn=on,packed=on"
> self.prepare_test_env(cbdma=True, no_pci=False, client_mode=False,
> enable_queues=1, nb_cores=2,
> server_mode=False, opt_queue=None, combined=False,
> rxq_txq=None)
> - self.start_iperf_and_verify_vhost_xstats_info(iperf_mode='ufo')
> + self.start_iperf_and_verify_vhost_xstats_info(iperf_mode='tso')
>
> def test_vm2vm_packed_ring_iperf_with_ufo(self):
> """
> @@ -515,7 +516,7 @@ class TestVM2VMVirtioNetPerf(TestCase):
> """
> Test Case 11: VM2VM virtio-net packed ring mergeable 8 queues CBDMA
> enable test with large packet payload valid check
> """
> - # This test case need to use QEMU 3.0 to test
> + # This test case need to use QEMU version >= 4.x to test, but QEMU
> version >= 4.x reconnect vm also have issues.
> ipef_result = []
> self.get_cbdma_ports_info_and_bind_to_dpdk(cbdma_num=16,
> allow_diff_socket=True)
>
> @@ -555,7 +556,7 @@ class TestVM2VMVirtioNetPerf(TestCase):
> """
> Test Case 12: VM2VM virtio-net packed ring non-mergeable 8 queues
> CBDMA enable test with large packet payload valid check
> """
> - # This test case need to use QEMU 3.0 to test
> + # This test case need to use QEMU version >= 4.x to test, but QEMU
> version >= 4.x reconnect vm also have issues.
> ipef_result = []
> self.get_cbdma_ports_info_and_bind_to_dpdk(cbdma_num=16,
> allow_diff_socket=True)
>
> @@ -595,9 +596,9 @@ class TestVM2VMVirtioNetPerf(TestCase):
> """
> run after each test case.
> """
> + self.bind_cbdma_device_to_kernel()
> self.stop_all_apps()
> self.dut.kill_all()
> - self.bind_cbdma_device_to_kernel()
>
> def tear_down_all(self):
> """
> --
> 2.25.1
next prev parent reply other threads:[~2021-05-07 6:12 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-04-20 5:32 Wei Ling
2021-04-20 5:58 ` Ling, WeiX
2021-04-20 6:00 ` Wang, Yinan
2021-05-07 6:12 ` Tu, Lijuan [this message]
-- strict thread matches above, loose matches on Subject: below --
2021-04-20 5:04 Wei Ling
2021-04-16 7:06 Ling Wei
2021-04-16 7:12 ` Ling, WeiX
2021-04-20 1:54 ` Wang, Yinan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ca743e47e1844c7281112e11a75709a0@intel.com \
--to=lijuan.tu@intel.com \
--cc=dts@dpdk.org \
--cc=weix.ling@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).