From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 4572642C0E; Fri, 2 Jun 2023 09:24:12 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 30D7240EF0; Fri, 2 Jun 2023 09:24:12 +0200 (CEST) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by mails.dpdk.org (Postfix) with ESMTP id 1DE90406B8 for ; Fri, 2 Jun 2023 09:24:09 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1685690650; x=1717226650; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=+G+e3kbdnsGmPO6lqr96Z3vI3I9BZH/EbuCdiOfudz8=; b=fFnsUfiZ8SXIIIKYRZ5mhJB9+a4d2xzlV4stTanOvW0TWssYFsyacv+k ggJLUPh/lnyvdf9rCM9K+LkPOnCbuQw70FsWMLGHnQYUhhdIrU5hpaWOa aF/p/jzT9T/GqjjQug0WosVk1Iq/oP2iDcg8F8lTEBRVO5GcdRJB8qlxX yPDw+JDPlS3tLWuxca3C1ywaRkm8uVXePbJsHf77nz0nzjsHkFuW80Jvd Xl0+WNvZ6LSILsMWzZBCibHRbO3OLubxxv+F6HifrNjrG5xmMXTYbElf4 NodpqXttB3zUn0ODhQ9Q5ULf5aOSfm7lcJ2YV6VeSV2wy78wPQXZEZlZJ w==; X-IronPort-AV: E=McAfee;i="6600,9927,10728"; a="335413739" X-IronPort-AV: E=Sophos;i="6.00,212,1681196400"; d="scan'208";a="335413739" Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Jun 2023 00:24:09 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10728"; a="1037822219" X-IronPort-AV: E=Sophos;i="6.00,212,1681196400"; d="scan'208";a="1037822219" Received: from unknown (HELO localhost.localdomain) ([10.239.252.44]) by fmsmga005-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Jun 2023 00:24:07 -0700 From: Dukai Yuan To: dts@dpdk.org Cc: Dukai Yuan Subject: [dts][PATCH V1] test_plans/pvp_vhost_user_reconnect: optimize qemu startup parameters Date: Fri, 2 Jun 2023 15:01:34 +0000 Message-Id: <20230602150134.2799101-1-dukaix.yuan@intel.com> X-Mailer: git-send-email 2.31.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 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 --- .../pvp_vhost_user_reconnect_test_plan.rst | 198 ++++++++++-------- 1 file changed, 109 insertions(+), 89 deletions(-) diff --git a/test_plans/pvp_vhost_user_reconnect_test_plan.rst b/test_plans/pvp_vhost_user_reconnect_test_plan.rst index ee9d136a..e5bee2fd 100644 --- a/test_plans/pvp_vhost_user_reconnect_test_plan.rst +++ b/test_plans/pvp_vhost_user_reconnect_test_plan.rst @@ -40,17 +40,19 @@ Flow: TG--> NIC --> Vhost --> Virtio --> Vhost--> NIC--> TG 2. Start VM with 1 virtio device, and set the qemu as server mode:: - qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 2 -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 \ + 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=./vhost-net0,server \ -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce \ -device virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:01,mrg_rxbuf=on,rx_queue_size=1024,tx_queue_size=1024 \ - -vnc :10 + -monitor unix:/tmp/vm0_monitor.sock,server,nowait -vnc :4 3. On VM, bind virtio net to vfio-pci and run testpmd:: @@ -90,17 +92,19 @@ Flow: TG--> NIC --> Vhost --> Virtio --> Vhost--> NIC--> TG 2. Start VM with 1 virtio device, and set the qemu as server mode:: - qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 2 -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 \ + 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=./vhost-net0,server \ -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce \ -device virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:01,mrg_rxbuf=on,rx_queue_size=1024,tx_queue_size=1024 \ - -vnc :10 + -monitor unix:/tmp/vm0_monitor.sock,server,nowait -vnc :4 3. On VM, bind virtio net to vfio-pci and run testpmd:: @@ -137,29 +141,33 @@ Test Case 4: vhost-user/virtio-pmd pvp split ring with multi VMs reconnect from 2. Launch VM1 and VM2:: - qemu-system-x86_64 -name vm1 -enable-kvm -cpu host -smp 12 -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 \ + 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=./vhost-net0,server \ -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce \ -device virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:01,mrg_rxbuf=on,rx_queue_size=1024,tx_queue_size=1024 \ - -vnc :10 + -monitor unix:/tmp/vm0_monitor.sock,server,nowait -vnc :4 - qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 12 -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-1.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:6003-:22 \ + qemu-system-x86_64 -name vm1 -enable-kvm -daemonize \ + -drive file=/home/image/ubuntu2004_2.img -pidfile /tmp/.vm1.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:6001-:22 \ + -chardev socket,path=/tmp/vm1_qga0.sock,server,nowait,id=vm1_qga0 \ + -device virtio-serial \ + -device virtserialport,chardev=vm1_qga0,name=org.qemu.guest_agent.0 \ -chardev socket,id=char0,path=./vhost-net1,server \ -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce \ -device virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:02,mrg_rxbuf=on,rx_queue_size=1024,tx_queue_size=1024 \ - -vnc :11 + -monitor unix:/tmp/vm1_monitor.sock,server,nowait -vnc :5 3. On VM1, bind virtio1 to vfio-pci and run testpmd:: @@ -205,29 +213,33 @@ Test Case 5: vhost-user/virtio-pmd pvp split ring with multi VMs reconnect from 2. Launch VM1 and VM2:: - qemu-system-x86_64 -name vm1 -enable-kvm -cpu host -smp 2 -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 \ + 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=./vhost-net0,server \ -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce \ -device virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:01,mrg_rxbuf=on,rx_queue_size=1024,tx_queue_size=1024 \ - -vnc :10 + -monitor unix:/tmp/vm0_monitor.sock,server,nowait -vnc :4 - qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 2 -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-1.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:6003-:22 \ + qemu-system-x86_64 -name vm1 -enable-kvm -daemonize \ + -drive file=/home/image/ubuntu2004_2.img -pidfile /tmp/.vm1.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:6001-:22 \ + -chardev socket,path=/tmp/vm1_qga0.sock,server,nowait,id=vm1_qga0 \ + -device virtio-serial \ + -device virtserialport,chardev=vm1_qga0,name=org.qemu.guest_agent.0 \ -chardev socket,id=char0,path=./vhost-net1,server \ -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce \ - -device virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:01,mrg_rxbuf=on,rx_queue_size=1024,tx_queue_size=1024 \ - -vnc :11 + -device virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:02,mrg_rxbuf=on,rx_queue_size=1024,tx_queue_size=1024 \ + -monitor unix:/tmp/vm1_monitor.sock,server,nowait -vnc :5 3. On VM1, bind virtio1 to vfio-pci and run testpmd:: @@ -275,29 +287,33 @@ Flow: Virtio-net1 --> Vhost-user --> Virtio-net2 3. Launch VM1 and VM2:: - qemu-system-x86_64 -name vm1 -enable-kvm -cpu host -smp 2 -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 \ + 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=./vhost-net0,server \ -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce \ -device virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:01,mrg_rxbuf=on,rx_queue_size=1024,tx_queue_size=1024 \ - -vnc :10 - - qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 2 -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-1.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:6003-:22 \ + -monitor unix:/tmp/vm0_monitor.sock,server,nowait -vnc :4 + + qemu-system-x86_64 -name vm1 -enable-kvm -daemonize \ + -drive file=/home/image/ubuntu2004_2.img -pidfile /tmp/.vm1.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:10.239.252.214:6001-:22 \ + -chardev socket,path=/tmp/vm1_qga0.sock,server,nowait,id=vm1_qga0 \ + -device virtio-serial \ + -device virtserialport,chardev=vm1_qga0,name=org.qemu.guest_agent.0 \ -chardev socket,id=char0,path=./vhost-net1,server \ -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce \ -device virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:02,mrg_rxbuf=on,rx_queue_size=1024,tx_queue_size=1024 \ - -vnc :11 + -monitor unix:/tmp/vm1_monitor.sock,server,nowait -vnc :5 4. Set virtio device IP and run arp protocal on two VMs:: @@ -334,29 +350,33 @@ Flow: Virtio-net1 --> Vhost-user --> Virtio-net2 3. Launch VM1 and VM2:: - qemu-system-x86_64 -name vm1 -enable-kvm -cpu host -smp 2 -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 \ + 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=./vhost-net0,server \ -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce \ -device virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:01,mrg_rxbuf=on,rx_queue_size=1024,tx_queue_size=1024 \ - -vnc :10 - - qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 2 -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-1.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:6003-:22 \ + -monitor unix:/tmp/vm0_monitor.sock,server,nowait -vnc :4 + + qemu-system-x86_64 -name vm1 -enable-kvm -daemonize \ + -drive file=/home/image/ubuntu2004_2.img -pidfile /tmp/.vm1.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:10.239.252.214:6001-:22 \ + -chardev socket,path=/tmp/vm1_qga0.sock,server,nowait,id=vm1_qga0 \ + -device virtio-serial \ + -device virtserialport,chardev=vm1_qga0,name=org.qemu.guest_agent.0 \ -chardev socket,id=char0,path=./vhost-net1,server \ -netdev type=vhost-user,id=netdev0,chardev=char0,vhostforce \ -device virtio-net-pci,netdev=netdev0,mac=52:54:00:00:00:02,mrg_rxbuf=on,rx_queue_size=1024,tx_queue_size=1024 \ - -vnc :11 + -monitor unix:/tmp/vm1_monitor.sock,server,nowait -vnc :5 4. Set virtio device IP and run arp protocal on two VMs:: -- 2.31.1