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

'compress' capability reported in'query-migrate-parameters' despite -compat 'deprecated-output':'hide'

    • Icon: Bug Bug
    • Resolution: Not a Bug
    • Icon: Normal Normal
    • None
    • rhel-9.4
    • None
    • None
    • Moderate
    • rhel-sst-virtualization
    • ssg_virtualization
    • None
    • False
    • Hide

      None

      Show
      None
    • None
    • None
    • None
    • None
    • All
    • None

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

      Migration fails when deprecation_behavior='reject'

      Please provide the package NVR for which bug is seen:

      libvirt-10.0.0-1.el9.x86_64

      qemu-kvm-8.2.0-2.el9.x86_64

      How reproducible:

      100%

      Steps to reproduce

      1. Set /etc/libvirt/qemu.conf with deprecation_behavior='reject' and restart virtqemud
      2. Start a domain and migrate it to another host
      1. virsh migrate rhel-seabios qemu+ssh://root@XXXX/system --copy-storage-all
        error: internal error: unable to execute QEMU command 'migrate-set-capabilities': Deprecated value compress disabled by policy

       

      Logs of qmp:

      2142.558 > 0x7fcabc039010 {"execute":"query-block","id":"libvirt-452"}
      2142.558 < 0x7fcabc039010 {"return": [{"io-status": "ok", "device": "", "locked": false, "removable": false, "inserted": {"iops_rd": 0, "detect_zeroes": "off", "image": {"virtual-size": 10737418240, "filename": "/var/lib/libvirt/images/rhel-seabios.qcow2", "cluster-size": 65536, "format": "qcow2", "actual-size": 2169425920, "format-specific": {"type": "qcow2", "data": {"compat": "1.1", "compression-type": "zlib", "lazy-refcounts": false, "refcount-bits": 16, "corrupt": false, "extended-l2": false}}, "dirty-flag": f
      2142.559 > 0x7fcabc039010 {"execute":"query-migrate","id":"libvirt-453"}
      2142.559 < 0x7fcabc039010 {"return": {}, "id": "libvirt-453"}
      2142.559 > 0x7fcabc039010 {"execute":"query-named-block-nodes","arguments":

      {"flat":true}

      ,"id":"libvirt-454"}
      2142.559 < 0x7fcabc039010 {"return": [{"iops_rd": 0, "detect_zeroes": "off", "image": {"virtual-size": 10737418240, "filename": "/var/lib/libvirt/images/rhel-seabios.qcow2", "cluster-size": 65536, "format": "qcow2", "actual-size": 2169425920, "format-specific": {"type": "qcow2", "data": {"compat": "1.1", "compression-type": "zlib", "lazy-refcounts": false, "refcount-bits": 16, "corrupt": false, "extended-l2": false}}, "dirty-flag": false}, "iops_wr": 0, "ro": false, "node-name": "libvirt-1-format", "backing_file_de
      2142.560 > 0x7fcabc039010 {"execute":"query-named-block-nodes","arguments":

      {"flat":true}

      ,"id":"libvirt-455"}
      2142.560 < 0x7fcabc039010 {"return": [{"iops_rd": 0, "detect_zeroes": "off", "image": {"virtual-size": 10737418240, "filename": "/var/lib/libvirt/images/rhel-seabios.qcow2", "cluster-size": 65536, "format": "qcow2", "actual-size": 2169425920, "format-specific": {"type": "qcow2", "data": {"compat": "1.1", "compression-type": "zlib", "lazy-refcounts": false, "refcount-bits": 16, "corrupt": false, "extended-l2": false}}, "dirty-flag": false}, "iops_wr": 0, "ro": false, "node-name": "libvirt-1-format", "backing_file_de
      2142.999 > 0x7fcabc039010 {"execute":"query-migrate-parameters","id":"libvirt-456"}
      2143.000 < 0x7fcabc039010 {"return": {"cpu-throttle-tailslow": false, "xbzrle-cache-size": 67108864, "cpu-throttle-initial": 20, "announce-max": 550, "avail-switchover-bandwidth": 0, "multifd-channels": 2, "mode": "normal", "multifd-zstd-level": 1, "announce-initial": 50, "downtime-limit": 300, "tls-authz": "", "vcpu-dirty-limit": 1, "multifd-compression": "none", "announce-rounds": 5, "announce-step": 100, "tls-creds": "", "x-vcpu-dirty-limit-period": 1000, "multifd-zlib-level": 1, "max-cpu-throttle": 99, "max-pos
      2143.000 > 0x7fcabc039010 {"execute":"migrate-set-capabilities","arguments":{"capabilities":[

      {"capability":"xbzrle","state":false}

      ,{"capability":"auto-converge","state":false},{"capability":"rdma-pin-all","state":false},{"capability":"postcopy-ram","state":false},{"capability":"compress","state":false},{"capability":"pause-before-switchover","state":true},{"capability":"late-block-activate","state":false},{"capability":"multifd","state":false},{"capability":"dirty-bitmaps","state":false},{"capability":"return-path"
      2143.003 < 0x7fcabc039010 {"id": "libvirt-457", "error": {"class": "GenericError", "desc": "Deprecated value compress disabled by policy"}}
      2143.003 > 0x7fcabc039010 {"execute":"migrate-set-capabilities","arguments":{"capabilities":[

      {"capability":"xbzrle","state":false}

      ,{"capability":"auto-converge","state":false},{"capability":"rdma-pin-all","state":false},{"capability":"postcopy-ram","state":false},{"capability":"compress","state":false},{"capability":"pause-before-switchover","state":false},{"capability":"late-block-activate","state":false},{"capability":"multifd","state":false},{"capability":"dirty-bitmaps","state":false},{"capability":"return-path
      2143.006 < 0x7fcabc039010 {"id": "libvirt-458", "error": {"class": "GenericError", "desc": "Deprecated value compress disabled by policy"}}

      Expected results

      Migration succeeds without error

      Actual results

      As above

      As the old compression method is deprecated since qemu 8.2.0: https://gitlab.com/qemu-project/qemu/-/commit/864128df465a8b041e089475e903be8d7d0d06ef

      Please implement the new compression method.

              armbru Markus Armbruster (Inactive)
              hanhansolo Han Han
              virt-maint virt-maint
              virt-bugs virt-bugs
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: