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

Can't migrate VM from RHEL 9.4 to RHEL 9.5 with virtio-gpu

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: Undefined Undefined
    • None
    • rhel-9.5
    • qemu-kvm
    • Yes
    • Critical
    • Regression
    • sst_virtualization
    • ssg_virtualization
    • None
    • False
    • Hide

      None

      Show
      None
    • None
    • None
    • None
    • None
    • Unspecified
    • None

      What were you trying to do that didn't work?

      Cross migrate a KVM guest from 9.4 -> 9.5 for a guest with an attached virtio-gpu device.

      Please provide the package NVR for which bug is seen:

      qemu-kvm-9.0.0-3.el9.s390x

      (source: qemu-kvm-8.2.0-11.el9_4.2.s390x)

      How reproducible:

      100%

      Steps to reproduce

      1. Define a VM with a virtio-gpu device on a host with RHEL 9.4, e.g.
        • # #qemu-kvm
            -vnc 127.0.0.1:0,audiodev=audio1
           -device {"driver":"virtio-gpu-ccw","id":"video0","max_outputs":1,"devno":"fe.0.0002"}
          
        •     <graphics type='vnc' port='-1' autoport='yes'>
                <listen type='address'/>
              </graphics>
              <audio id='1' type='none'/>
              <video>
                <model type='virtio' heads='1' primary='yes'/>
                <address type='ccw' cssid='0xfe' ssid='0x0' devno='0x0002'/>
              </video>
          
      2. Migrate the VM to a host with RHEL 9.5, e.g.
        •  migrate --live --p2p --verbose --domain avocado-vt-vm1 --desturi qemu+ssh://<ip>/system
        • migrate --live --verbose --domain avocado-vt-vm1 --desturi qemu+ssh://<ip>/system --tls --postcopy-after-precopy --postcopy

      Expected results

      The migration finishes successfully

      Actual results

      The migration stops shortly before completion with error

      emu-kvm: Missing section footer for /fe.0.0002/virtio-gpu2024-06-07T10:23:10.929189Z qemu-kvm: load of migration failed: Invalid argument&#10;

      Additional notes

      The migration succeeds when the virtio-gpu / video device is removed from the domain definition

      Many automated test cases fail with this error, e.g. virsh.migrate_options_shared.positive_test.p2p_migration.disable_keepalive.on_both.without_postcopy

      In some of the tests (virsh.migrate_options_shared.positive_test.native_tls.verify_client.post_after_precopy.with_postcopy) I see an additional error afterwards.

      qemu-kvm: error while loading state section id 2(ram)qemu-kvm: ../util/oslib-posix.c:232: void qemu_socket_set_nonblock(int): Assertion `f == 0' failed.&#10;

      or the migration just fails due to a connection reset (migrate --live --verbose --domain avocado-vt-vm1 --desturi qemu+ssh://<ip>/system --tls --postcopy-after-precopy --postcopy)

      error: operation failed: job 'migration out' failed: Unable to read from socket: Connection reset by peer&#10;}

      Again, those tests pass without the graphic device.

      I don't know yet if this only applies to s390x or if it is with virtio-gpu for all archs.

              virt-maint virt-maint
              smitterl@redhat.com Sebastian Mitterle
              Aihua Liang, Luyao Huang
              IBM Confidential Group
              virt-maint virt-maint
              Votes:
              0 Vote for this issue
              Watchers:
              18 Start watching this issue

                Created:
                Updated:
                Resolved: