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

Migration hangs when domjobabort returns migrate-pause is currently only supported during postcopy-active ...

Linking RHIVOS CVEs to...Migration: Automation ...SWIFT: POC ConversionSync from "Extern...XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Undefined Undefined
    • None
    • rhel-9.7
    • libvirt
    • No
    • None
    • rhel-virt-core-libvirt-1
    • None
    • False
    • False
    • Hide

      None

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

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

      Do migration and then pause the migration using domjobabort, but migration hangs

      Please provide the package NVR for which the bug is seen:

      libvirt-10.10.0-13.el9.aarch64
      qemu-kvm-9.1.0-25.el9.aarch64

      How reproducible is this bug?:

      10%

      Steps to reproduce

      1. Setup migration env with nfs and tcp
      1. In terminal 1, run

        virsh event --loop --all --timestamp

      2. In terminal 2, start vm and set migration speed to low, run migration command

        virsh start vm1
        Domain 'vm1' started
        virsh migrate-setspeed vm1 8 --postcopy
        virsh migrate-setspeed vm1 8
        virsh migrate --live --p2p --verbose --domain vm1 --desturi qemu+tcp://10.6.6.26/system --timeout 4 --timeout-postcopy --postcopy

      3. Monitor the event in terminal 1, when below event is printed, do domjobaort to pause the migration in terminal 3

        virsh event --loop --all --timestamp
        ...
        event 'migration-iteration' for domain 'vm1': iteration: '1'

      4. In terminal 3, run command to pause the migration. Sometimes below error from qemu will display

        virsh domjobabort vm1 --postcopy
        error: internal error: unable to execute QEMU command 'migrate-pause': migrate-pause is currently only supported during postcopy-active or postcopy-recover state

      5. At this time, the migration command in terminal 2 will hang

        virsh migrate --live --p2p --verbose --domain vm1 --desturi qemu+tcp://10.6.6.26/system --timeout 4 --timeout-postcopy --postcopy
        Migration: [12.10 %]
        Migration: [12.10 %]
        Migration: [12.10 %]
        Migration: [12.10 %]
        Migration: [12.10 %]

        Migration: [12.10 %]
        Migration: [12.10 %]

      1. On target host, see the vm1 running, but failed to destroy it

        virsh list --all
        Id Name State
        ----------------------------------------
        8 vm1 running

        • avocado-vt-remote-vm1 shut off

        virsh destroy vm1
        error: Failed to destroy domain 'vm1'
        error: Domain not found: no domain with matching uuid '39f45b7c-283a-4362-826d-85f8ca84724c' (vm1)

      2. then on source host, got

        Migration: [12.10 %]error: internal error: QEMU unexpectedly closed the monitor (vm='vm1'): 2025-07-18T06:57:22.579773Z qemu-kvm: warning: Machine type 'virt-rhel9.6.0' is deprecated: machines from the previous RHEL major release are subject to deletion in the next RHEL major release
        2025-07-18T06:57:26.602193Z qemu-kvm: error while loading state section id 3(ram)
        2025-07-18T06:57:26.602299Z qemu-kvm: Unable to shutdown socket: Transport endpoint is not connected
        2025-07-18T06:57:26.602354Z qemu-kvm: Unable to shutdown socket: Bad file descriptor
        2025-07-18T06:57:26.602516Z qemu-kvm: Detected IO failure for postcopy. Migration paused.

        Expected results

        Migration command either return error or continue, but should not hang.

        Actual results

        See above

              jdenemar@redhat.com Jiri Denemark
              rhn-support-dzheng Dan Zheng
              Jiri Denemark Jiri Denemark
              virt-bugs virt-bugs
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

                Created:
                Updated: