Skip to content
Snippets Groups Projects
  1. Nov 03, 2023
    • Hyman Huang's avatar
      tests/migration: Introduce dirty-limit into guestperf · 22b7cb2c
      Hyman Huang authored
      
      Currently, guestperf does not cover the dirty-limit
      migration, support this feature.
      
      Note that dirty-limit requires 'dirty-ring-size' set.
      
      To enable dirty-limit, setting x-vcpu-dirty-limit-period
      as 500ms and x-vcpu-dirty-limit as 10MB/s:
      $ ./tests/migration/guestperf.py \
          --dirty-ring-size 4096 \
          --dirty-limit --x-vcpu-dirty-limit-period 500 \
          --vcpu-dirty-limit 10 --output output.json \
      
      To run the entire standardized set of dirty-limit-enabled
      comparisons, with unix migration:
      $ ./tests/migration/guestperf-batch.py \
          --dirty-ring-size 4096 \
          --dst-host localhost --transport unix \
          --filter compr-dirty-limit* --output outputdir
      
      Signed-off-by: default avatarHyman Huang <yong.huang@smartx.com>
      Reviewed-by: default avatarFabiano Rosas <farosas@suse.de>
      Message-Id: <516e7a55dfc6e33d33510be37eb24223de5dc072.1697815117.git.yong.huang@smartx.com>
      Message-ID: <e1283565b00b34b0377bbd27bee4bb8fc7c255a8.1698847223.git.yong.huang@smartx.com>
      Signed-off-by: default avatarJuan Quintela <quintela@redhat.com>
      22b7cb2c
    • Hyman Huang's avatar
      tests/migration: Introduce dirty-ring-size option into guestperf · 4cc563d4
      Hyman Huang authored
      
      Dirty ring size configuration is not supported by guestperf tool.
      
      Introduce dirty-ring-size (ranges in [1024, 65536]) option so
      developers can play with dirty-ring and dirty-limit feature easier.
      
      To set dirty ring size with 4096 during migration test:
      $ ./tests/migration/guestperf.py --dirty-ring-size 4096 xxx
      
      Signed-off-by: default avatarHyman Huang <yong.huang@smartx.com>
      Reviewed-by: default avatarFabiano Rosas <farosas@suse.de>
      Signed-off-by: default avatarJuan Quintela <quintela@redhat.com>
      Message-ID: <8a388cec5c1f73a34d42515bbc43837e97ee3839.1698847223.git.yong.huang@smartx.com>
      4cc563d4
    • Hyman Huang's avatar
      tests: Add migration dirty-limit capability test · 17257b90
      Hyman Huang authored
      
      Add migration dirty-limit capability test if kernel support
      dirty ring.
      
      Migration dirty-limit capability introduce dirty limit
      capability, two parameters: x-vcpu-dirty-limit-period and
      vcpu-dirty-limit are introduced to implement the live
      migration with dirty limit.
      
      The test case does the following things:
      1. start src, dst vm and enable dirty-limit capability
      2. start migrate and set cancel it to check if dirty limit
         stop working.
      3. restart dst vm
      4. start migrate and enable dirty-limit capability
      5. check if migration satisfy the convergence condition
         during pre-switchover phase.
      
      Note that this test case involves many passes, so it runs
      in slow mode only.
      
      Signed-off-by: default avatarHyman Huang <yong.huang@smartx.com>
      Acked-by: default avatarPeter Xu <peterx@redhat.com>
      Reviewed-by: default avatarFabiano Rosas <farosas@suse.de>
      Reviewed-by: default avatarJuan Quintela <quintela@redhat.com>
      Signed-off-by: default avatarJuan Quintela <quintela@redhat.com>
      Message-ID: <e55a302df9da7dbc00ad825f47f57c1a756d303e.1698847223.git.yong.huang@smartx.com>
      17257b90
    • Hyman Huang's avatar
      system/dirtylimit: Drop the reduplicative check · 78a7ef15
      Hyman Huang authored
      
      Checking if dirty limit is in service is done by the
      dirtylimit_query_all function, drop the reduplicative
      check in the qmp_query_vcpu_dirty_limit function.
      
      Signed-off-by: default avatarHyman Huang <yong.huang@smartx.com>
      Reviewed-by: default avatarFabiano Rosas <farosas@suse.de>
      Reviewed-by: default avatarJuan Quintela <quintela@redhat.com>
      Signed-off-by: default avatarJuan Quintela <quintela@redhat.com>
      Message-ID: <df9c3514933ff6750ef88068af18d3054bedf746.1698847223.git.yong.huang@smartx.com>
      78a7ef15
    • Hyman Huang's avatar
      system/dirtylimit: Fix a race situation · cce10a1f
      Hyman Huang authored
      
      Fix a race situation for global variable dirtylimit_state.
      
      Also, replace usleep by g_usleep to increase platform
      accessibility to the sleep function.
      
      Signed-off-by: default avatarHyman Huang <yong.huang@smartx.com>
      Reviewed-by: default avatarFabiano Rosas <farosas@suse.de>
      Reviewed-by: default avatarJuan Quintela <quintela@redhat.com>
      Signed-off-by: default avatarJuan Quintela <quintela@redhat.com>
      Message-ID: <27c86239e21eda03d11ce5a3d07da3c229f562e3.1698847223.git.yong.huang@smartx.com>
      cce10a1f
    • Stefan Hajnoczi's avatar
      Merge tag 'pull-target-arm-20231102' of... · d762bf97
      Stefan Hajnoczi authored
      Merge tag 'pull-target-arm-20231102' of https://git.linaro.org/people/pmaydell/qemu-arm into staging
      
      target-arm queue:
       * linux-user/elfload: Add missing arm64 hwcap values
       * stellaris-gamepad: Convert to qdev
       * docs/specs: Convert various txt docs to rST
       * MAINTAINERS: Make sure that gicv3_internal.h is covered, too
       * hw/arm/pxa2xx_gpio: Pass CPU using QOM link property
       * hw/watchdog/wdt_imx2: Trace MMIO access and timer activity
       * hw/misc/imx7_snvs: Trace MMIO access
       * hw/misc/imx6_ccm: Convert DPRINTF to trace events
       * hw/i2c/pm_smbus: Convert DPRINTF to trace events
       * target/arm: Enable FEAT_MOPS insns in user-mode emulation
       * linux-user: Report AArch64 hwcap2 fields above bit 31
       * target/arm: Make FEAT_MOPS SET* insns handle Xs == XZR correctly
       * target/arm: Fix SVE STR increment
       * hw/char/stm32f2xx_usart: implement TX interrupts
       * target/arm: Correctly propagate stage 1 BTI guarded bit in a two-stage walk
       * xlnx-versal-virt: Add AMD/Xilinx TRNG device
      
      * tag 'pull-target-arm-20231102' of https://git.linaro.org/people/pmaydell/qemu-arm
      
      : (33 commits)
        tests/qtest: Introduce tests for AMD/Xilinx Versal TRNG device
        hw/arm: xlnx-versal-virt: Add AMD/Xilinx TRNG device
        hw/misc: Introduce AMD/Xilix Versal TRNG device
        target/arm: Correctly propagate stage 1 BTI guarded bit in a two-stage walk
        hw/char/stm32f2xx_usart: Add more definitions for CR1 register
        hw/char/stm32f2xx_usart: Update IRQ when DR is written
        hw/char/stm32f2xx_usart: Extract common IRQ update code to update_irq()
        target/arm: Fix SVE STR increment
        target/arm: Make FEAT_MOPS SET* insns handle Xs == XZR correctly
        linux-user: Report AArch64 hwcap2 fields above bit 31
        target/arm: Enable FEAT_MOPS insns in user-mode emulation
        hw/i2c/pm_smbus: Convert DPRINTF to trace events
        hw/misc/imx6_ccm: Convert DPRINTF to trace events
        hw/misc/imx7_snvs: Trace MMIO access
        hw/watchdog/wdt_imx2: Trace timer activity
        hw/watchdog/wdt_imx2: Trace MMIO access
        hw/arm/pxa2xx_gpio: Pass CPU using QOM link property
        MAINTAINERS: Make sure that gicv3_internal.h is covered, too
        docs/specs/vmgenid: Convert to rST
        docs/specs/vmcoreinfo: Convert to rST
        ...
      
      Conflicts:
        hw/input/stellaris_input.c
        The qdev conversion in this pull request ("stellaris-gamepad: Convert
        to qdev") eliminates the vmstate_register() call that was converted to
        vmstate_register_any() in the conflicting migration pull request.
        vmstate_register_any() is no longer necessary now that this device has
        been converted to qdev, so take this pull request's version of
        stellaris_gamepad.c over the previous pull request's
        stellaris_input.c (the file was renamed).
      
      Signed-off-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      d762bf97
    • Stefan Hajnoczi's avatar
      Merge tag 'migration-20231102-pull-request' of https://gitlab.com/juan.quintela/qemu into staging · 75b7b25d
      Stefan Hajnoczi authored
      Migration Pull request (20231102)
      
      Hi
      
      In this pull request:
      
      - migration reboot mode (steve)
        * I disabled the test because our CI don't like programs using so
          much shared memory.  Searching for a fix.
      - test for postcopy recover (fabiano)
      - MigrateAddress QAPI (het)
      - better return path error handling (peter)
      - traces for downtime (peter)
      - vmstate_register() check for duplicates (juan)
        thomas find better solutions for s390x and ipmi.
        now also works on s390x
      
      Please, apply.
      
      # -----BEGIN PGP SIGNATURE-----
      #
      # iQIzBAABCAAdFiEEGJn/jt6/WMzuA0uC9IfvGFhy1yMFAmVDipMACgkQ9IfvGFhy
      # 1yNYnQ/9E5Cywsoqljqa/9FiKBSII2qMrmkfu6JLKqePnsh5pFZiukbudYRuJCCe
      # ZTDEmD0NmKRJbDx2xRU1qx/e6gKJy+gz37KP89Buuh/WwZHPboPYtxQpGvCSiH26
      # J3i+1+TgaqmkLzcO35wa8tp6gneQclWeAwKgMvdb4cm2pJEhgWRKI62ccyLzxeve
      # UCzFQn60t55ETyVZGnRD4YwdTQvGKH+DPlyTuJOLR3DePuvZd8EdH+ypvB4RLAy7
      # 3+CuQOxmF5LRXPbpJuAeOsudbmhhHzrO/yL7ZmsiKQTthsJv+SzC1bO94jhQrawZ
      # Q7GCii5KpGq0KnRTRKZRGk6XKwxcYRduXMX3R5tXuVmDmCZsjhXzziU8yEdftph8
      # 5TJdk1o0Gb043EFu81mrsQYS+9yJqe6sy6m3PTJaec54cAty5ln+c17WOvpAOaSV
      # +1phe05ftuVPmQ3KWhbIR/tCmavNLwEZxpVIfyaKJx04bFbtQ9gRpRyURORX4KXc
      # s4WXvNirQEohxYBnP4TPvA09xBTW3V08pk/wRDwt0YDXnLiqCltOuxD8r05K8K4B
      # MkCLcWj0g7he2tBkF60oz1KSIE0oTB81um9AzLIv5F2YSYLaJM5BIcoC437MR2f4
      # MOR7drR1fP5GsRu/SeU5BWvhVq3IvdOxR7G2MLNRJJvl7ZtGXDc=
      # =uaqL
      # -----END PGP SIGNATURE-----
      # gpg: Signature made Thu 02 Nov 2023 19:40:03 HKT
      # gpg:                using RSA key 1899FF8EDEBF58CCEE034B82F487EF185872D723
      # gpg: Good signature from "Juan Quintela <quintela@redhat.com>" [full]
      # gpg:                 aka "Juan Quintela <quintela@trasno.org>" [full]
      # Primary key fingerprint: 1899 FF8E DEBF 58CC EE03  4B82 F487 EF18 5872 D723
      
      * tag 'migration-20231102-pull-request' of https://gitlab.com/juan.quintela/qemu
      
      : (40 commits)
        migration: modify test_multifd_tcp_none() to use new QAPI syntax.
        migration: Implement MigrateChannelList to hmp migration flow.
        migration: Implement MigrateChannelList to qmp migration flow.
        migration: modify migration_channels_and_uri_compatible() for new QAPI syntax
        migration: New migrate and migrate-incoming argument 'channels'
        migration: Convert the file backend to the new QAPI syntax
        migration: convert exec backend to accept MigrateAddress.
        migration: convert rdma backend to accept MigrateAddress
        migration: convert socket backend to accept MigrateAddress
        migration: convert migration 'uri' into 'MigrateAddress'
        migration: New QAPI type 'MigrateAddress'
        migration: Change ram_dirty_bitmap_reload() retval to bool
        tests/migration-test: Add a test for postcopy hangs during RECOVER
        migration: Allow network to fail even during recovery
        migration: Refactor error handling in source return path
        tests/qtest: migration: add reboot mode test
        cpr: reboot mode
        cpr: relax vhost migration blockers
        cpr: relax blockdev migration blockers
        migration: per-mode blockers
        ...
      
      Signed-off-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      75b7b25d
  2. Nov 02, 2023
Loading