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

qemu-kvm crashed when migrating guest with failover vf

    • qemu-kvm-8.1.0-2.el9
    • Yes
    • Important
    • ZStream, Regression
    • rhel-sst-virtualization-storage
    • ssg_virtualization
    • 4
    • 7
    • 3
    • QE ack
    • False
    • Hide

      None

      Show
      None
    • None
    • None
    • Approved Blocker
    • x86_64
    • None

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

      When live migrating rhel93 or windows guest(e.g. win2022, win2016) with the failover vf, qemu-kvm will crash.

      qemu-kvm: ../block/graph-lock.c:257: void bdrv_graph_rdlock_main_loop(void): Assertion `!qemu_in_coroutine()' failed.

       

      qemu-kvm-7.2.0-14.el9_2.x86_64 works well, so it is a regression bug.

       

      And live migration without failover vf will not meet the issue, can succeed.

      Package versions

      qemu-kvm-8.0.0-1.el9.x86_64

      libvirt-9.5.0-2.el9.x86_64

      Steps to reproduce

      1.create vf on both src host and dst host

      echo 1 > /sys/bus/pci/devices/0000\:1a\:00.1/sriov_numvfs

       

      2.create failover-vf and failover-bridge network on both src and dst host

      1. virsh net-dumpxml failover-bridge 
        <network connections='1'>
          <name>failover-bridge</name>
          <uuid>1943a508-b0b7-4274-be5a-6f0143d10f40</uuid>
          <forward mode='bridge'/>
          <bridge name='br0'/>
        </network>
      1. virsh net-dumpxml failover-vf
        <network connections='1'>
          <name>failover-vf</name>
          <uuid>4319b666-8f4b-410a-886f-17b6df772224</uuid>
          <forward mode='hostdev' managed='yes'>
            <address type='pci' domain='0x0000' bus='0x1a' slot='0x08' function='0x2'/>
          </forward>
        </network>

      3.boot rhel93/win2022 guest with failover vf on src host
          <interface type='network'>
            <mac address='52:54:00:aa:1c:ef'/>
            <source network='failover-bridge'/>
            <model type='virtio'/>
            <teaming type='persistent'/>
            <alias name='ua-test'/>
            <address type='pci' domain='0x0000' bus='0x04' slot='0x00' function='0x0'/>
          </interface>
          <interface type='network'>
            <mac address='52:54:00:aa:1c:ef'/>
            <source network='failover-vf'/>
            <teaming type='transient' persistent='ua-test'/>
            <address type='pci' domain='0x0000' bus='0x05' slot='0x00' function='0x0'/>
          </interface>

      4. live migrating the guest

      Expected results

      Guest can be migrated successfully.

      Actual results

      qemu-kvm crashed with following info.

      qemu-kvm: ../block/graph-lock.c:257: void bdrv_graph_rdlock_main_loop(void): Assertion `!qemu_in_coroutine()' failed.

              kwolf@redhat.com Kevin Wolf
              yama@redhat.com Yanhui Ma
              Kevin Wolf Kevin Wolf
              Yanhui Ma Yanhui Ma
              Votes:
              0 Vote for this issue
              Watchers:
              25 Start watching this issue

                Created:
                Updated:
                Resolved: