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

[virtio-win][balloon] Win11 guest took twice as long as other guest to enlarge guest memory via balloon device

    • None
    • Moderate
    • CustomerScenariosInitiative
    • rhel-sst-virtualization-windows
    • ssg_virtualization
    • 8
    • False
    • Hide

      None

      Show
      None
    • None
    • Red Hat Enterprise Linux
    • None
    • None
    • Automated
    • x86_64
    • None

      What were you trying to do that didn't work?
      For Win11 guest on the situation of enalarge guest memory via balloon device, it took almost twice as long as Win10 and Win2022 guest.
      The tests were based on the same host, the fresh guest image, the same qemu_cmd line, and the same memory assigned to guest.
      Firstly balloon memory to 1G to get the minimum memory of guest, and then enlarge memory to the maxmum one, during enlaring memory, Win11 guest would take
      as long as other guest os.

       

      Please provide the package NVR for which bug is seen:
      virtio-win-prewhql-0.1-247
      virtiofsd-1.7.2-1.el9.x86_64
      qemu-kvm-8.2.0-2.el9.x86_64
      edk2-ovmf-20231122-2.el9.noarch
      seabios-bin-1.16.3-2.el9.noarch
      kernel-5.14.0-410.el9.x86_64

       

      How reproducible:
      always

       

      Steps to reproduce
      1. install a fresh Win11 guest with 29G memory.
      -m 29696 \

      2. balloon memory to 1G to get windows miminum balloon value.
      [stdlog] 2024-02-19 15:26:56,054 avocado.virttest.qemu_monitor qemu_monitor L2031 DEBUG| Send command: {"execute": "balloon", "arguments":

      {"value": 1048576}

      , "id": "JtAiKpvP"}
      ......
      [stdlog] 2024-02-19 15:27:44,921 avocado.virttest.qemu_monitor qemu_monitor L2031 DEBUG| Send command:

      {"execute": "query-balloon", "id": "x7KsI4hB"}

      [stdlog] 2024-02-19 15:27:44,922 avocado.virttest.qemu_monitor qemu_monitor L1981 DEBUG| (monitor avocado-vt-vm1.qmpmonitor1) Response to 'query-balloon' (re-formatted)
      [stdlog] 2024-02-19 15:27:44,922 avocado.virttest.qemu_monitor qemu_monitor L1957 DEBUG| (monitor avocado-vt-vm1.qmpmonitor1) actual: 3495952384

      3. after about 48s, the balloon memory was stable.

      4. then enlary memory to 29G via balloon device.
      [stdlog] 2024-02-19 15:27:44,922 avocado.virttest.qemu_monitor qemu_monitor L0442 DEBUG| (monitor avocado-vt-vm1.qmpmonitor1) Sending command 'balloon'
      [stdlog] 2024-02-19 15:27:44,922 avocado.virttest.qemu_monitor qemu_monitor L2031 DEBUG| Send command: {"execute": "balloon", "arguments":

      {"value": 31138512896}

      , "id": "YRdF4tH0"}
      ......
      [stdlog] 2024-02-19 15:28:47,158 avocado.virttest.qemu_monitor qemu_monitor L1981 DEBUG| (monitor avocado-vt-vm1.qmpmonitor1) Response to 'query-balloon' (re-formatted)
      [stdlog] 2024-02-19 15:28:47,158 avocado.virttest.qemu_monitor qemu_monitor L1957 DEBUG| (monitor avocado-vt-vm1.qmpmonitor1) actual: 31138512896

      5. after about 63s, the memory was stable

      6. reproduce step1-5 for Win10 and Win2022 guests, and compared the results.

       

      Expected results
      I'm not very sure if it is Win11's limitation or our balloon driver's issue.
      But in my opinion the balloon deflating time is a little slow.

       

      Actual results
      Win11 guest took 63s to complete enlarge memory via balloon device, balloon value from 3495952384 to 31138512896.
      Win10 guest took 38s to enlarge memory, balloon value from 3110076416 to 31138512896.
      Win2022 took 37s to enlarge memory, balloon value from 2770337792 to 31138512896.

       

              kkostiuk Konstantin Kostiuk
              rhn-support-xiagao Xiaoling Gao
              Meirav Dean Meirav Dean
              Xiaoling Gao Xiaoling Gao
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated: