net/vhost-vdpa.c | 92 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 92 insertions(+)
This series enables shadowed CVQ to intercept VIRTIO_NET_CTRL_MQ_HASH_CONFIG command through shadowed CVQ, update the virtio NIC device model so qemu send it in a migration, and the restore of that Hash calculation state in the destination. Note that this patch should be based on patch "vdpa: Send all CVQ state load commands in parallel" at [1]. [1]. https://lore.kernel.org/all/cover.1693287885.git.yin31149@gmail.com/ TestStep ======== 1. test the migration using vp-vdpa device - For L0 guest, boot QEMU with two virtio-net-pci net device with `ctrl_vq`, `mq`, `hash` features on, command line like: -netdev tap,... -device virtio-net-pci,disable-legacy=on,disable-modern=off, iommu_platform=on,mq=on,ctrl_vq=on,hash=on,guest_announce=off, indirect_desc=off,queue_reset=off,... - For L1 guest, apply the relative patch series and compile the source code, start QEMU with two vdpa device with svq mode on, enable the `ctrl_vq`, `mq`, `hash` features on, command line like: -netdev type=vhost-vdpa,x-svq=true,... -device virtio-net-pci,mq=on,guest_announce=off,ctrl_vq=on, hash=on,... - For L2 source guest, run the following bash command: ```bash #!/bin/sh ethtool -K eth0 rxhash on ``` - Gdb attach the destination VM and break at the vhost_vdpa_net_load_rss() - Execute the live migration in L2 source monitor - Result * with this series, gdb can hit the breakpoint and continue the executing without triggering any error or warning. ChangeLog ========= v2: - resolve conflict with updated patch "vdpa: Send all CVQ state load commands in parallel", move the `table` declaration at the beginning of the vhost_vdpa_net_load_rss() in patch "vdpa: Restore hash calculation state" RFC: https://lore.kernel.org/all/cover.1691762906.git.yin31149@gmail.com/#t Hawkins Jiawei (2): vdpa: Restore hash calculation state vdpa: Allow VIRTIO_NET_F_HASH_REPORT in SVQ net/vhost-vdpa.c | 92 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 92 insertions(+) -- 2.25.1
On Tue, Aug 29, 2023 at 04:47:33PM +0800, Hawkins Jiawei wrote: > This series enables shadowed CVQ to intercept > VIRTIO_NET_CTRL_MQ_HASH_CONFIG command through shadowed CVQ, > update the virtio NIC device model so qemu send it in a > migration, and the restore of that Hash calculation state > in the destination. > > Note that this patch should be based on > patch "vdpa: Send all CVQ state load commands in parallel" at [1]. > > [1]. https://lore.kernel.org/all/cover.1693287885.git.yin31149@gmail.com/ Dropped due to CI failures: https://gitlab.com/qemu-project/qemu/-/jobs/5329820077 > TestStep > ======== > 1. test the migration using vp-vdpa device > - For L0 guest, boot QEMU with two virtio-net-pci net device with > `ctrl_vq`, `mq`, `hash` features on, command line like: > -netdev tap,... > -device virtio-net-pci,disable-legacy=on,disable-modern=off, > iommu_platform=on,mq=on,ctrl_vq=on,hash=on,guest_announce=off, > indirect_desc=off,queue_reset=off,... > > - For L1 guest, apply the relative patch series and compile the > source code, start QEMU with two vdpa device with svq mode on, > enable the `ctrl_vq`, `mq`, `hash` features on, command line like: > -netdev type=vhost-vdpa,x-svq=true,... > -device virtio-net-pci,mq=on,guest_announce=off,ctrl_vq=on, > hash=on,... > > - For L2 source guest, run the following bash command: > ```bash > #!/bin/sh > > ethtool -K eth0 rxhash on > ``` > - Gdb attach the destination VM and break at the > vhost_vdpa_net_load_rss() > > - Execute the live migration in L2 source monitor > > - Result > * with this series, gdb can hit the breakpoint and continue > the executing without triggering any error or warning. > > > ChangeLog > ========= > v2: > - resolve conflict with updated patch > "vdpa: Send all CVQ state load commands in parallel", move the > `table` declaration at the beginning of the vhost_vdpa_net_load_rss() > in patch > "vdpa: Restore hash calculation state" > > RFC: https://lore.kernel.org/all/cover.1691762906.git.yin31149@gmail.com/#t > > Hawkins Jiawei (2): > vdpa: Restore hash calculation state > vdpa: Allow VIRTIO_NET_F_HASH_REPORT in SVQ > > net/vhost-vdpa.c | 92 ++++++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 92 insertions(+) > > -- > 2.25.1
© 2016 - 2024 Red Hat, Inc.