From patchwork Thu Jun 1 16:24:24 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Yuan, DukaiX" X-Patchwork-Id: 127827 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 528BB42C01; Thu, 1 Jun 2023 10:47:01 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 1B9B3406B3; Thu, 1 Jun 2023 10:47:01 +0200 (CEST) Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by mails.dpdk.org (Postfix) with ESMTP id E1DCA406A2 for ; Thu, 1 Jun 2023 10:46:58 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1685609219; x=1717145219; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=bcvfvZ+WupeZ0IV7UwNf75B2MrmpbdcvCiwFhmukTAQ=; b=ZrEmgenlhoASZF566MsgofJtK9gR/k3NoDejvW/dDJzjOj8Qd55Iowne vuD734EpA52rU/idHJpd4Yk5PaDQLD3RPCEhWXMSh1VWgsQftDffy8b8o Ez9lEVPVwho49rKHB7p1m0KMR2vFmh4qu17HczkxkTaK2jb4WNXzgn/7q lXMcojf9phrD/haX7yLG89/PbHwmUjdHlxyQOA8XoCCJzfJfWd8tJyBjw MWE14NzeWmpl32Zb1DsnDn0aRwhxN0RRKompsvShBA1lOVxcSeG94HlqR uu7BgZkvgG689y+WQnPZvLRh+DiU80ZXKxyqmjU+YL8OBGDHO9zSHhq9/ w==; X-IronPort-AV: E=McAfee;i="6600,9927,10727"; a="358773587" X-IronPort-AV: E=Sophos;i="6.00,209,1681196400"; d="scan'208";a="358773587" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Jun 2023 01:46:57 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10727"; a="684768736" X-IronPort-AV: E=Sophos;i="6.00,209,1681196400"; d="scan'208";a="684768736" Received: from unknown (HELO localhost.localdomain) ([10.239.252.44]) by orsmga006-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Jun 2023 01:46:56 -0700 From: Dukai Yuan To: dts@dpdk.org Cc: Dukai Yuan Subject: [dts][PATCH V1] test_plans/virtio_pvp_regression: optimize qemu start-up parameters Date: Thu, 1 Jun 2023 16:24:24 +0000 Message-Id: <20230601162424.3109447-1-dukaix.yuan@intel.com> X-Mailer: git-send-email 2.31.1 MIME-Version: 1.0 X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dts-bounces@dpdk.org Starting from QEMU 5.2, the "-net" parameter has been removed and replaced by the "-device" parameter. In the new QEMU version, you can use the "-device" parameter to set network devices. Signed-off-by: Dukai Yuan --- .../virtio_pvp_regression_test_plan.rst | 158 ++++++++++-------- 1 file changed, 88 insertions(+), 70 deletions(-) diff --git a/test_plans/virtio_pvp_regression_test_plan.rst b/test_plans/virtio_pvp_regression_test_plan.rst index a953e2bb..dac179a4 100644 --- a/test_plans/virtio_pvp_regression_test_plan.rst +++ b/test_plans/virtio_pvp_regression_test_plan.rst @@ -28,18 +28,21 @@ Test Case 1: pvp test with virtio 0.95 mergeable path testpmd>set fwd mac testpmd>start -2. Check dut machine already has installed different version qemu, includes [qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0], launch VM with different qemu version separately:: - - qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 3 -m 4096 \ - -object memory-backend-file,id=mem,size=4096M,mem-path=/mnt/huge,share=on \ - -numa node,memdev=mem -mem-prealloc -drive file=/home/osimg/ubuntu16.img \ - -chardev socket,path=/tmp/vm2_qga0.sock,server,nowait,id=vm2_qga0 -device virtio-serial \ - -device virtserialport,chardev=vm2_qga0,name=org.qemu.guest_agent.2 -daemonize \ - -monitor unix:/tmp/vm2_monitor.sock,server,nowait -net nic,macaddr=00:00:00:08:e8:aa,addr=1f -net user,hostfwd=tcp:127.0.0.1:6002-:22 \ - -chardev socket,id=char0,path=./vhost-net,server \ - -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce,queues=2 \ - -device virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:01,mrg_rxbuf=on,rx_queue_size=1024,tx_queue_size=1024,mq=on,vectors=15 \ - -vnc :10 +2. Check dut machine already has installed different version qemu, includes [qemu-4.2.0, qemu-5.2.0, qemu-6.2.0, qemu-7.2.0, qemu-8.x], launch VM with different qemu version separately:: + + qemu-system-x86_64 -name vm0 -enable-kvm -daemonize \ + -drive file=/home/image/ubuntu2004.img -pidfile /tmp/.vm0.pid \ + -cpu host -smp 8 -m 8192 -numa node,memdev=mem -mem-prealloc \ + -object memory-backend-file,id=mem,size=8192M,mem-path=/dev/hugepages,share=on \ + -device e1000,netdev=nttsip1 \ + -netdev user,id=nttsip1,hostfwd=tcp:127.0.0.1:6000-:22 \ + -chardev socket,path=/tmp/vm0_qga0.sock,server,nowait,id=vm0_qga0 \ + -device virtio-serial \ + -device virtserialport,chardev=vm0_qga0,name=org.qemu.guest_agent.0 \ + -chardev socket,id=char0,path=/root/dpdk/vhost-net,server \ + -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce,queues=2 \ + -device virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:01,disable-modern=true,mrg_rxbuf=on,rx_queue_size=1024,tx_queue_size=1024,mq=on,vectors=15 \ + -monitor unix:/tmp/vm0_monitor.sock,server,nowait -vnc :4 3. On VM, bind virtio net to vfio-pci and run testpmd without tx-offloads:: @@ -67,18 +70,21 @@ Test Case 2: pvp test with virtio 0.95 non-mergeable path testpmd>set fwd mac testpmd>start -2. Check dut machine already has installed different version qemu, includes [qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0], launch VM with different qemu version separately:: - - qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 3 -m 4096 \ - -object memory-backend-file,id=mem,size=4096M,mem-path=/mnt/huge,share=on \ - -numa node,memdev=mem -mem-prealloc -drive file=/home/osimg/ubuntu16.img \ - -chardev socket,path=/tmp/vm2_qga0.sock,server,nowait,id=vm2_qga0 -device virtio-serial \ - -device virtserialport,chardev=vm2_qga0,name=org.qemu.guest_agent.2 -daemonize \ - -monitor unix:/tmp/vm2_monitor.sock,server,nowait -net nic,macaddr=00:00:00:08:e8:aa,addr=1f -net user,hostfwd=tcp:127.0.0.1:6002-:22 \ - -chardev socket,id=char0,path=./vhost-net,server \ - -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce,queues=2 \ - -device virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:01,mrg_rxbuf=off,rx_queue_size=1024,tx_queue_size=1024,mq=on,vectors=15 \ - -vnc :10 +2. Check dut machine already has installed different version qemu, includes [qemu-4.2.0, qemu-5.2.0, qemu-6.2.0, qemu-7.2.0, qemu-8.x], launch VM with different qemu version separately:: + + qemu-system-x86_64 -name vm0 -enable-kvm -daemonize \ + -drive file=/home/image/ubuntu2004.img -pidfile /tmp/.vm0.pid \ + -cpu host -smp 8 -m 8192 -numa node,memdev=mem -mem-prealloc \ + -object memory-backend-file,id=mem,size=8192M,mem-path=/dev/hugepages,share=on \ + -device e1000,netdev=nttsip1 \ + -netdev user,id=nttsip1,hostfwd=tcp:127.0.0.1:6000-:22 \ + -chardev socket,path=/tmp/vm0_qga0.sock,server,nowait,id=vm0_qga0 \ + -device virtio-serial \ + -device virtserialport,chardev=vm0_qga0,name=org.qemu.guest_agent.0 \ + -chardev socket,id=char0,path=/root/dpdk/vhost-net,server \ + -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce,queues=2 \ + -device virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:01,disable-modern=true,mrg_rxbuf=off,rx_queue_size=1024,tx_queue_size=1024,mq=on,vectors=15 \ + -monitor unix:/tmp/vm0_monitor.sock,server,nowait -vnc :4 3. On VM, bind virtio net to vfio-pci and run testpmd without tx-offloads:: @@ -106,18 +112,21 @@ Test Case 3: pvp test with virtio 0.95 vrctor_rx path testpmd>set fwd mac testpmd>start -2. Check dut machine already has installed different version qemu, includes [qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0], launch VM with different qemu version separately:: - - qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 3 -m 4096 \ - -object memory-backend-file,id=mem,size=4096M,mem-path=/mnt/huge,share=on \ - -numa node,memdev=mem -mem-prealloc -drive file=/home/osimg/ubuntu16.img \ - -chardev socket,path=/tmp/vm2_qga0.sock,server,nowait,id=vm2_qga0 -device virtio-serial \ - -device virtserialport,chardev=vm2_qga0,name=org.qemu.guest_agent.2 -daemonize \ - -monitor unix:/tmp/vm2_monitor.sock,server,nowait -net nic,macaddr=00:00:00:08:e8:aa,addr=1f -net user,hostfwd=tcp:127.0.0.1:6002-:22 \ - -chardev socket,id=char0,path=./vhost-net,server \ - -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce,queues=2 \ - -device virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:01,mrg_rxbuf=off,rx_queue_size=1024,tx_queue_size=1024,mq=on,vectors=15 \ - -vnc :10 +2. Check dut machine already has installed different version qemu, includes [qemu-4.2.0, qemu-5.2.0, qemu-6.2.0, qemu-7.2.0, qemu-8.x], launch VM with different qemu version separately:: + + qemu-system-x86_64 -name vm0 -enable-kvm -daemonize \ + -drive file=/home/image/ubuntu2004.img -pidfile /tmp/.vm0.pid \ + -cpu host -smp 8 -m 8192 -numa node,memdev=mem -mem-prealloc \ + -object memory-backend-file,id=mem,size=8192M,mem-path=/dev/hugepages,share=on \ + -device e1000,netdev=nttsip1 \ + -netdev user,id=nttsip1,hostfwd=tcp:127.0.0.1:6000-:22 \ + -chardev socket,path=/tmp/vm0_qga0.sock,server,nowait,id=vm0_qga0 \ + -device virtio-serial \ + -device virtserialport,chardev=vm0_qga0,name=org.qemu.guest_agent.0 \ + -chardev socket,id=char0,path=/root/dpdk/vhost-net,server \ + -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce,queues=2 \ + -device virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:01,disable-modern=true,mrg_rxbuf=off,rx_queue_size=1024,tx_queue_size=1024,mq=on,vectors=15 \ + -monitor unix:/tmp/vm0_monitor.sock,server,nowait -vnc :4 3. On VM, bind virtio net to vfio-pci and run testpmd without tx-offloads, [0000:xx.00] is [Bus,Device,Function] of virtio-net:: @@ -145,18 +154,21 @@ Test Case 4: pvp test with virtio 1.0 mergeable path testpmd>set fwd mac testpmd>start -2. Check dut machine already has installed different version qemu, includes [qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0], launch VM with different qemu version separately, note: we need add "disable-modern=false" to enable virtio 1.0:: - - qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 3 -m 4096 \ - -object memory-backend-file,id=mem,size=4096M,mem-path=/mnt/huge,share=on \ - -numa node,memdev=mem -mem-prealloc -drive file=/home/osimg/ubuntu16.img \ - -chardev socket,path=/tmp/vm2_qga0.sock,server,nowait,id=vm2_qga0 -device virtio-serial \ - -device virtserialport,chardev=vm2_qga0,name=org.qemu.guest_agent.2 -daemonize \ - -monitor unix:/tmp/vm2_monitor.sock,server,nowait -net nic,macaddr=00:00:00:08:e8:aa,addr=1f -net user,hostfwd=tcp:127.0.0.1:6002-:22 \ - -chardev socket,id=char0,path=./vhost-net,server \ - -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce,queues=2 \ +2. Check dut machine already has installed different version qemu, includes [qemu-4.2.0, qemu-5.2.0, qemu-6.2.0, qemu-7.2.0, qemu-8.x], launch VM with different qemu version separately, note: we need add "disable-modern=false" to enable virtio 1.0:: + + qemu-system-x86_64 -name vm0 -enable-kvm -daemonize \ + -drive file=/home/image/ubuntu2004.img -pidfile /tmp/.vm0.pid \ + -cpu host -smp 8 -m 8192 -numa node,memdev=mem -mem-prealloc \ + -object memory-backend-file,id=mem,size=8192M,mem-path=/dev/hugepages,share=on \ + -device e1000,netdev=nttsip1 \ + -netdev user,id=nttsip1,hostfwd=tcp:127.0.0.1:6000-:22 \ + -chardev socket,path=/tmp/vm0_qga0.sock,server,nowait,id=vm0_qga0 \ + -device virtio-serial \ + -device virtserialport,chardev=vm0_qga0,name=org.qemu.guest_agent.0 \ + -chardev socket,id=char0,path=/root/dpdk/vhost-net,server \ + -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce,queues=2 \ -device virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:01,disable-modern=false,mrg_rxbuf=on,rx_queue_size=1024,tx_queue_size=1024,mq=on,vectors=15 \ - -vnc :10 + -monitor unix:/tmp/vm0_monitor.sock,server,nowait -vnc :4 3. On VM, bind virtio net to vfio-pci and run testpmd without tx-offloads:: @@ -184,18 +196,21 @@ Test Case 5: pvp test with virtio 1.0 non-mergeable path testpmd>set fwd mac testpmd>start -2. Check dut machine already has installed different version qemu, includes [qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0], launch VM with different qemu version separately, note: we need add "disable-modern=false" to enable virtio 1.0:: - - qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 3 -m 4096 \ - -object memory-backend-file,id=mem,size=4096M,mem-path=/mnt/huge,share=on \ - -numa node,memdev=mem -mem-prealloc -drive file=/home/osimg/ubuntu16.img \ - -chardev socket,path=/tmp/vm2_qga0.sock,server,nowait,id=vm2_qga0 -device virtio-serial \ - -device virtserialport,chardev=vm2_qga0,name=org.qemu.guest_agent.2 -daemonize \ - -monitor unix:/tmp/vm2_monitor.sock,server,nowait -net nic,macaddr=00:00:00:08:e8:aa,addr=1f -net user,hostfwd=tcp:127.0.0.1:6002-:22 \ - -chardev socket,id=char0,path=./vhost-net,server \ - -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce,queues=2 \ +2. Check dut machine already has installed different version qemu, includes [qemu-4.2.0, qemu-5.2.0, qemu-6.2.0, qemu-7.2.0, qemu-8.x], launch VM with different qemu version separately, note: we need add "disable-modern=false" to enable virtio 1.0:: + + qemu-system-x86_64 -name vm0 -enable-kvm -daemonize \ + -drive file=/home/image/ubuntu2004.img -pidfile /tmp/.vm0.pid \ + -cpu host -smp 8 -m 8192 -numa node,memdev=mem -mem-prealloc \ + -object memory-backend-file,id=mem,size=8192M,mem-path=/dev/hugepages,share=on \ + -device e1000,netdev=nttsip1 \ + -netdev user,id=nttsip1,hostfwd=tcp:127.0.0.1:6000-:22 \ + -chardev socket,path=/tmp/vm0_qga0.sock,server,nowait,id=vm0_qga0 \ + -device virtio-serial \ + -device virtserialport,chardev=vm0_qga0,name=org.qemu.guest_agent.0 \ + -chardev socket,id=char0,path=/root/dpdk/vhost-net,server \ + -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce,queues=2 \ -device virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:01,disable-modern=false,mrg_rxbuf=off,rx_queue_size=1024,tx_queue_size=1024,mq=on,vectors=15 \ - -vnc :10 + -monitor unix:/tmp/vm0_monitor.sock,server,nowait -vnc :4 3. On VM, bind virtio net to vfio-pci and run testpmd without tx-offloads:: @@ -223,18 +238,21 @@ Test Case 6: pvp test with virtio 1.0 vrctor_rx path testpmd>set fwd mac testpmd>start -2. Check dut machine already has installed different version qemu, includes [qemu_2.7, qemu_2.8, qemu_2.9, qemu_2.10, qemu_2.11, qemu_2.12, qemu_3.0], launch VM with different qemu version separately, note: we need add "disable-modern=false" to enable virtio 1.0:: - - qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 3 -m 4096 \ - -object memory-backend-file,id=mem,size=4096M,mem-path=/mnt/huge,share=on \ - -numa node,memdev=mem -mem-prealloc -drive file=/home/osimg/ubuntu16.img \ - -chardev socket,path=/tmp/vm2_qga0.sock,server,nowait,id=vm2_qga0 -device virtio-serial \ - -device virtserialport,chardev=vm2_qga0,name=org.qemu.guest_agent.2 -daemonize \ - -monitor unix:/tmp/vm2_monitor.sock,server,nowait -net nic,macaddr=00:00:00:08:e8:aa,addr=1f -net user,hostfwd=tcp:127.0.0.1:6002-:22 \ - -chardev socket,id=char0,path=./vhost-net,server \ - -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce,queues=2 \ +2. Check dut machine already has installed different version qemu, includes [qemu-4.2.0, qemu-5.2.0, qemu-6.2.0, qemu-7.2.0, qemu-8.x], launch VM with different qemu version separately, note: we need add "disable-modern=false" to enable virtio 1.0:: + + qemu-system-x86_64 -name vm0 -enable-kvm -daemonize \ + -drive file=/home/image/ubuntu2004.img -pidfile /tmp/.vm0.pid \ + -cpu host -smp 8 -m 8192 -numa node,memdev=mem -mem-prealloc \ + -object memory-backend-file,id=mem,size=8192M,mem-path=/dev/hugepages,share=on \ + -device e1000,netdev=nttsip1 \ + -netdev user,id=nttsip1,hostfwd=tcp:127.0.0.1:6000-:22 \ + -chardev socket,path=/tmp/vm0_qga0.sock,server,nowait,id=vm0_qga0 \ + -device virtio-serial \ + -device virtserialport,chardev=vm0_qga0,name=org.qemu.guest_agent.0 \ + -chardev socket,id=char0,path=/root/dpdk/vhost-net,server \ + -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce,queues=2 \ -device virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:01,disable-modern=false,mrg_rxbuf=off,rx_queue_size=1024,tx_queue_size=1024,mq=on,vectors=15 \ - -vnc :10 + -monitor unix:/tmp/vm0_monitor.sock,server,nowait -vnc :4 3. On VM, bind virtio net to vfio-pci and run testpmd without tx-offloads, [0000:xx.00] is [Bus,Device,Function] of virtio-net:: @@ -249,7 +267,7 @@ Test Case 6: pvp test with virtio 1.0 vrctor_rx path 5. Quit vhost-user, then re-launch, check if the reconnect can work and ensure the traffic can continue. -6. Kill VM, then re-launch VM, check if the reconnect can work and ensure the traffic can continue. +6. Kill VM, thcat en re-launch VM, check if the reconnect can work and ensure the traffic can continue. Test Case 7: pvp test with virtio 1.1 mergeable path ====================================================