Uploaded image for project: 'RHEL'
  1. RHEL
  2. RHEL-69455

Introduce libvirt support for vhost-user mode in passt(1)

    • libvirt-10.10.0-7.el9
    • None
    • rhel-sst-virtualization-networking
    • ssg_virtualization
    • 13
    • Dev ack
    • False
    • Hide

      None

      Show
      None
    • None
    • Red Hat Enterprise Linux
    • None
    • All
    • Linux
    • None

      Right now, libvirt has generic support for vhost-user network interfaces (<interface type='vhostuser'>), and for the passt back-end, but it's not possible to connect them together, that is, it's not possible to tell the passt back-end to enable vhost-user mode, and use the same control socket as the (libvirt) vhost-user interface.

      A typical invocation of passt in vhost-user mode is simply: "passt --vhost-user". The corresponding QEMU command line is... wait for it... qemu-system-x86_64 ...
      -chardev socket,id=chr0,path=/tmp/passt_1.socket
      -netdev vhost-user,id=netdev0,chardev=chr0
      -device virtio-net,netdev=netdev0
      -object memory-backend-memfd,id=memfd0,share=on,size=$RAMSIZE
      -numa node,memdev=memfd0.

      This supports 1. improved throughput/decreasing CPU load and 2. live migration of passt context (including TCP migration). 2. would be covered entirely by QEMU and passt themselves, without the need for libvirt's intervention, but it's much easier to implement this in passt in vhost-user mode because of https://qemu-project.gitlab.io/qemu/interop/vhost-user.html#migrating-back-end-state.

      vhost-user support has just been merged in passt and it will be available in a release (and distribution packages) in a couple of days, but I wanted to file this request as soon as possible. Patchset: https://archives.passt.top/passt-dev/20241122164337.3377854-1-lvivier@redhat.com/.

              lstump@redhat.com Laine Stump
              sbrivio@redhat.com Stefano Brivio
              virt-maint virt-maint
              Yalan Zhang Yalan Zhang
              Votes:
              0 Vote for this issue
              Watchers:
              16 Start watching this issue

                Created:
                Updated: