qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] 8ba02c: throttle: introduce enum ThrottleDire


From: Alex Bennée
Subject: [Qemu-commits] [qemu/qemu] 8ba02c: throttle: introduce enum ThrottleDirection
Date: Thu, 21 Sep 2023 08:14:33 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 8ba02c24ea25a7a1fa4931e266af7916c115da2c
      
https://github.com/qemu/qemu/commit/8ba02c24ea25a7a1fa4931e266af7916c115da2c
  Author: zhenwei pi <pizhenwei@bytedance.com>
  Date:   2023-08-29 (Tue, 29 Aug 2023)

  Changed paths:
    M include/qemu/throttle.h
    M util/throttle.c

  Log Message:
  -----------
  throttle: introduce enum ThrottleDirection

Use enum ThrottleDirection instead of number index.

Reviewed-by: Alberto Garcia <berto@igalia.com>
Reviewed-by: Hanna Czenczek <hreitz@redhat.com>
Signed-off-by: zhenwei pi <pizhenwei@bytedance.com>
Message-Id: <20230728022006.1098509-2-pizhenwei@bytedance.com>
Signed-off-by: Hanna Czenczek <hreitz@redhat.com>


  Commit: 1322f63df52e23ecf47cc9a5842ec3099c517183
      
https://github.com/qemu/qemu/commit/1322f63df52e23ecf47cc9a5842ec3099c517183
  Author: zhenwei pi <pizhenwei@bytedance.com>
  Date:   2023-08-29 (Tue, 29 Aug 2023)

  Changed paths:
    M tests/unit/test-throttle.c

  Log Message:
  -----------
  test-throttle: use enum ThrottleDirection

Use enum ThrottleDirection instead in the throttle test codes.

Reviewed-by: Alberto Garcia <berto@igalia.com>
Reviewed-by: Hanna Czenczek <hreitz@redhat.com>
Signed-off-by: zhenwei pi <pizhenwei@bytedance.com>
Message-Id: <20230728022006.1098509-3-pizhenwei@bytedance.com>
Signed-off-by: Hanna Czenczek <hreitz@redhat.com>


  Commit: d85b08c6e27d796dbb653b8ae9584080361c1498
      
https://github.com/qemu/qemu/commit/d85b08c6e27d796dbb653b8ae9584080361c1498
  Author: zhenwei pi <pizhenwei@bytedance.com>
  Date:   2023-08-29 (Tue, 29 Aug 2023)

  Changed paths:
    M util/throttle.c

  Log Message:
  -----------
  throttle: support read-only and write-only

Only one direction is necessary in several scenarios:
- a read-only disk
- operations on a device are considered as *write* only. For example,
  encrypt/decrypt/sign/verify operations on a cryptodev use a single
  *write* timer(read timer callback is defined, but never invoked).

Allow a single direction in throttle, this reduces memory, and uplayer
does not need a dummy callback any more.

Reviewed-by: Alberto Garcia <berto@igalia.com>
Reviewed-by: Hanna Czenczek <hreitz@redhat.com>
Signed-off-by: zhenwei pi <pizhenwei@bytedance.com>
Message-Id: <20230728022006.1098509-4-pizhenwei@bytedance.com>
Signed-off-by: Hanna Czenczek <hreitz@redhat.com>


  Commit: 02add531e1aa71bafb8185142bfc12e8c714b323
      
https://github.com/qemu/qemu/commit/02add531e1aa71bafb8185142bfc12e8c714b323
  Author: zhenwei pi <pizhenwei@bytedance.com>
  Date:   2023-08-29 (Tue, 29 Aug 2023)

  Changed paths:
    M tests/unit/test-throttle.c

  Log Message:
  -----------
  test-throttle: test read only and write only

Reviewed-by: Alberto Garcia <berto@igalia.com>
Reviewed-by: Hanna Czenczek <hreitz@redhat.com>
Signed-off-by: zhenwei pi <pizhenwei@bytedance.com>
Message-Id: <20230728022006.1098509-5-pizhenwei@bytedance.com>
Signed-off-by: Hanna Czenczek <hreitz@redhat.com>


  Commit: 27cf12298a2e3cb168880b6c7a36ea8cfbd8afb0
      
https://github.com/qemu/qemu/commit/27cf12298a2e3cb168880b6c7a36ea8cfbd8afb0
  Author: zhenwei pi <pizhenwei@bytedance.com>
  Date:   2023-08-29 (Tue, 29 Aug 2023)

  Changed paths:
    M backends/cryptodev.c

  Log Message:
  -----------
  cryptodev: use NULL throttle timer cb for read direction

Operations on a cryptodev are considered as *write* only, the callback
of read direction is never invoked. Use NULL instead of an unreachable
path(cryptodev_backend_throttle_timer_cb on read direction).

The dummy read timer(never invoked) is already removed here, it means
that the 'FIXME' tag is no longer needed.

Reviewed-by: Alberto Garcia <berto@igalia.com>
Reviewed-by: Hanna Czenczek <hreitz@redhat.com>
Signed-off-by: zhenwei pi <pizhenwei@bytedance.com>
Message-Id: <20230728022006.1098509-6-pizhenwei@bytedance.com>
Signed-off-by: Hanna Czenczek <hreitz@redhat.com>


  Commit: e76f201f69e76653f3e7301f2183421d9267e2f5
      
https://github.com/qemu/qemu/commit/e76f201f69e76653f3e7301f2183421d9267e2f5
  Author: zhenwei pi <pizhenwei@bytedance.com>
  Date:   2023-08-29 (Tue, 29 Aug 2023)

  Changed paths:
    M backends/cryptodev.c
    M block/throttle-groups.c
    M fsdev/qemu-fsdev-throttle.c
    M include/qemu/throttle.h
    M tests/unit/test-throttle.c
    M util/throttle.c

  Log Message:
  -----------
  throttle: use enum ThrottleDirection instead of bool is_write

enum ThrottleDirection is already there, use ThrottleDirection instead
of 'bool is_write' for throttle API, also modify related codes from
block, fsdev, cryptodev and tests.

Reviewed-by: Hanna Czenczek <hreitz@redhat.com>
Signed-off-by: zhenwei pi <pizhenwei@bytedance.com>
Message-Id: <20230728022006.1098509-7-pizhenwei@bytedance.com>
Signed-off-by: Hanna Czenczek <hreitz@redhat.com>


  Commit: 7017313882e39b6285e1a47dc474a395ba6f0e7d
      
https://github.com/qemu/qemu/commit/7017313882e39b6285e1a47dc474a395ba6f0e7d
  Author: zhenwei pi <pizhenwei@bytedance.com>
  Date:   2023-08-29 (Tue, 29 Aug 2023)

  Changed paths:
    M util/throttle.c

  Log Message:
  -----------
  throttle: use THROTTLE_MAX/ARRAY_SIZE for hard code

The first dimension of both to_check and
bucket_types_size/bucket_types_units is used as throttle direction,
use THROTTLE_MAX instead of hard coded number. Also use ARRAY_SIZE()
to avoid hard coded number for the second dimension.

Hanna noticed that the two array should be static. Yes, turn them
into static variables.

Reviewed-by: Hanna Czenczek <hreitz@redhat.com>
Signed-off-by: zhenwei pi <pizhenwei@bytedance.com>
Message-Id: <20230728022006.1098509-8-pizhenwei@bytedance.com>
Signed-off-by: Hanna Czenczek <hreitz@redhat.com>


  Commit: 00ea69f50345258d1ff6262f24516abea5548d3a
      
https://github.com/qemu/qemu/commit/00ea69f50345258d1ff6262f24516abea5548d3a
  Author: zhenwei pi <pizhenwei@bytedance.com>
  Date:   2023-08-29 (Tue, 29 Aug 2023)

  Changed paths:
    M fsdev/qemu-fsdev-throttle.c
    M fsdev/qemu-fsdev-throttle.h
    M hw/9pfs/cofile.c

  Log Message:
  -----------
  fsdev: Use ThrottleDirection instread of bool is_write

'bool is_write' style is obsolete from throttle framework, adapt
fsdev to the new style.

Cc: Greg Kurz <groug@kaod.org>
Reviewed-by: Hanna Czenczek <hreitz@redhat.com>
Signed-off-by: zhenwei pi <pizhenwei@bytedance.com>
Message-Id: <20230728022006.1098509-9-pizhenwei@bytedance.com>
Reviewed-by: Greg Kurz <groug@kaod.org>
Signed-off-by: Hanna Czenczek <hreitz@redhat.com>


  Commit: 3b2337eff03e23ffcc7d6b0a0f72bd3ab2135ae9
      
https://github.com/qemu/qemu/commit/3b2337eff03e23ffcc7d6b0a0f72bd3ab2135ae9
  Author: zhenwei pi <pizhenwei@bytedance.com>
  Date:   2023-08-29 (Tue, 29 Aug 2023)

  Changed paths:
    M block/block-backend.c
    M block/throttle-groups.c
    M block/throttle.c
    M include/block/throttle-groups.h

  Log Message:
  -----------
  block/throttle-groups: Use ThrottleDirection instread of bool is_write

'bool is_write' style is obsolete from throttle framework, adapt
block throttle groups to the new style:
- use ThrottleDirection instead of 'bool is_write'. Ex,
  schedule_next_request(ThrottleGroupMember *tgm, bool is_write)
  -> schedule_next_request(ThrottleGroupMember *tgm, ThrottleDirection 
direction)

- use THROTTLE_MAX instead of hard code. Ex, ThrottleGroupMember *tokens[2]
  -> ThrottleGroupMember *tokens[THROTTLE_MAX]

- use ThrottleDirection instead of hard code on iteration. Ex, (i = 0; i < 2; 
i++)
  -> for (dir = THROTTLE_READ; dir < THROTTLE_MAX; dir++)

Use a simple python script to test the new style:
 #!/usr/bin/python3
import subprocess
import random
import time

commands = ['virsh blkdeviotune jammy vda --write-bytes-sec ', \
            'virsh blkdeviotune jammy vda --write-iops-sec ', \
            'virsh blkdeviotune jammy vda --read-bytes-sec ', \
            'virsh blkdeviotune jammy vda --read-iops-sec ']

for loop in range(1, 1000):
    time.sleep(random.randrange(3, 5))
    command = commands[random.randrange(0, 3)] + str(random.randrange(0, 
1000000))
    subprocess.run(command, shell=True, check=True)

This works fine.

Signed-off-by: zhenwei pi <pizhenwei@bytedance.com>
Message-Id: <20230728022006.1098509-10-pizhenwei@bytedance.com>
Reviewed-by: Hanna Czenczek <hreitz@redhat.com>
Signed-off-by: Hanna Czenczek <hreitz@redhat.com>


  Commit: 56d1a022a77ea2125564913665eeadf3e303a671
      
https://github.com/qemu/qemu/commit/56d1a022a77ea2125564913665eeadf3e303a671
  Author: Hanna Czenczek <hreitz@redhat.com>
  Date:   2023-08-29 (Tue, 29 Aug 2023)

  Changed paths:
    M block/file-posix.c

  Log Message:
  -----------
  file-posix: Clear bs->bl.zoned on error

bs->bl.zoned is what indicates whether the zone information is present
and valid; it is the only thing that raw_refresh_zoned_limits() sets if
CONFIG_BLKZONED is not defined, and it is also the only thing that it
sets if CONFIG_BLKZONED is defined, but there are no zones.

Make sure that it is always set to BLK_Z_NONE if there is an error
anywhere in raw_refresh_zoned_limits() so that we do not accidentally
announce zones while our information is incomplete or invalid.

This also fixes a memory leak in the last error path in
raw_refresh_zoned_limits().

Signed-off-by: Hanna Czenczek <hreitz@redhat.com>
Message-Id: <20230824155345.109765-2-hreitz@redhat.com>
Reviewed-by: Sam Li <faithilikerun@gmail.com>


  Commit: 4b5d80f3d02096a9bb1f651f6b3401ba40877159
      
https://github.com/qemu/qemu/commit/4b5d80f3d02096a9bb1f651f6b3401ba40877159
  Author: Hanna Czenczek <hreitz@redhat.com>
  Date:   2023-08-29 (Tue, 29 Aug 2023)

  Changed paths:
    M block/file-posix.c

  Log Message:
  -----------
  file-posix: Check bs->bl.zoned for zone info

Instead of checking bs->wps or bs->bl.zone_size for whether zone
information is present, check bs->bl.zoned.  That is the flag that
raw_refresh_zoned_limits() reliably sets to indicate zone support.  If
it is set to something other than BLK_Z_NONE, other values and objects
like bs->wps and bs->bl.zone_size must be non-null/zero and valid; if it
is not, we cannot rely on their validity.

Signed-off-by: Hanna Czenczek <hreitz@redhat.com>
Message-Id: <20230824155345.109765-3-hreitz@redhat.com>
Reviewed-by: Sam Li <faithilikerun@gmail.com>


  Commit: deab5c9a4ed74f76a713008a42527762b30a7e84
      
https://github.com/qemu/qemu/commit/deab5c9a4ed74f76a713008a42527762b30a7e84
  Author: Hanna Czenczek <hreitz@redhat.com>
  Date:   2023-08-29 (Tue, 29 Aug 2023)

  Changed paths:
    M block/file-posix.c

  Log Message:
  -----------
  file-posix: Fix zone update in I/O error path

We must check that zone information is present before running
update_zones_wp().

Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=2234374
Fixes: Coverity CID 1512459
Signed-off-by: Hanna Czenczek <hreitz@redhat.com>
Message-Id: <20230824155345.109765-4-hreitz@redhat.com>
Reviewed-by: Sam Li <faithilikerun@gmail.com>


  Commit: d31b50a15dd25a560749b25fc40b6484fd1a57b7
      
https://github.com/qemu/qemu/commit/d31b50a15dd25a560749b25fc40b6484fd1a57b7
  Author: Hanna Czenczek <hreitz@redhat.com>
  Date:   2023-08-29 (Tue, 29 Aug 2023)

  Changed paths:
    M block/file-posix.c

  Log Message:
  -----------
  file-posix: Simplify raw_co_prw's 'out' zone code

We duplicate the same condition three times here, pull it out to the top
level.

Signed-off-by: Hanna Czenczek <hreitz@redhat.com>
Message-Id: <20230824155345.109765-5-hreitz@redhat.com>
Reviewed-by: Sam Li <faithilikerun@gmail.com>


  Commit: 380448464dd89291cf7fd7434be6c225482a334d
      
https://github.com/qemu/qemu/commit/380448464dd89291cf7fd7434be6c225482a334d
  Author: Hanna Czenczek <hreitz@redhat.com>
  Date:   2023-08-29 (Tue, 29 Aug 2023)

  Changed paths:
    A tests/qemu-iotests/tests/file-io-error
    A tests/qemu-iotests/tests/file-io-error.out

  Log Message:
  -----------
  tests/file-io-error: New test

This is a regression test for
https://bugzilla.redhat.com/show_bug.cgi?id=2234374.

All this test needs to do is trigger an I/O error inside of file-posix
(specifically raw_co_prw()).  One reliable way to do this without
requiring special privileges is to use a FUSE export, which allows us to
inject any error that we want, e.g. via blkdebug.

Signed-off-by: Hanna Czenczek <hreitz@redhat.com>
Message-Id: <20230824155345.109765-6-hreitz@redhat.com>
[hreitz: Fixed test to be skipped when there is no FUSE support, to
         suppress fusermount's allow_other warning, and to be skipped
         with $IMGOPTSSYNTAX enabled]
Signed-off-by: Hanna Czenczek <hreitz@redhat.com>


  Commit: e6a19a6477407e57b4deb61aaa497a14d7db9626
      
https://github.com/qemu/qemu/commit/e6a19a6477407e57b4deb61aaa497a14d7db9626
  Author: Michael Tokarev <mjt@tls.msk.ru>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M host/include/ppc/host/cpuinfo.h
    M hw/ppc/ppc.c
    M hw/ppc/prep_systemio.c
    M hw/ppc/spapr.c
    M hw/ppc/spapr_hcall.c
    M hw/ppc/spapr_nvdimm.c
    M hw/ppc/spapr_pci_vfio.c
    M include/hw/ppc/openpic.h
    M include/hw/ppc/spapr.h
    M target/ppc/cpu-models.h
    M target/ppc/cpu.h
    M target/ppc/cpu_init.c
    M target/ppc/excp_helper.c
    M target/ppc/power8-pmu-regs.c.inc
    M target/ppc/translate/vmx-impl.c.inc

  Log Message:
  -----------
  ppc: spelling fixes

Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Reviewed-by: Cédric Le Goater <clg@kaod.org>


  Commit: 944399ffb286b5503e9d97330aaeab1e68779962
      
https://github.com/qemu/qemu/commit/944399ffb286b5503e9d97330aaeab1e68779962
  Author: Michael Tokarev <mjt@tls.msk.ru>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M bsd-user/errno_defs.h
    M bsd-user/freebsd/target_os_siginfo.h
    M bsd-user/freebsd/target_os_stack.h
    M bsd-user/freebsd/target_os_user.h
    M bsd-user/qemu.h
    M bsd-user/signal-common.h
    M bsd-user/signal.c

  Log Message:
  -----------
  bsd-user: spelling fixes

Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Reviewed-by: Kyle Evans <kevans@FreeBSD.org>
Reviewed-by: Warner Losh <imp@bsdimp.com>


  Commit: bad5cfcd609f4a04e499da814cbec4dc45114804
      
https://github.com/qemu/qemu/commit/bad5cfcd609f4a04e499da814cbec4dc45114804
  Author: Michael Tokarev <mjt@tls.msk.ru>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M host/include/i386/host/cpuinfo.h
    M hw/i386/acpi-build.c
    M hw/i386/amd_iommu.c
    M hw/i386/intel_iommu.c
    M hw/i386/kvm/xen_xenstore.c
    M hw/i386/kvm/xenstore_impl.c
    M hw/i386/pc.c
    M include/hw/i386/topology.h
    M target/i386/cpu.c
    M target/i386/cpu.h
    M target/i386/kvm/kvm.c
    M target/i386/kvm/xen-emu.c
    M target/i386/machine.c
    M target/i386/tcg/translate.c
    M tests/tcg/i386/system/boot.S
    M tests/tcg/i386/x86.csv

  Log Message:
  -----------
  i386: spelling fixes

Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 2431f4f184339f679ff665c75e927fc24f7bd430
      
https://github.com/qemu/qemu/commit/2431f4f184339f679ff665c75e927fc24f7bd430
  Author: Michael Tokarev <mjt@tls.msk.ru>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M hw/net/cadence_gem.c
    M hw/net/dp8393x.c
    M hw/net/e1000_regs.h
    M hw/net/e1000x_regs.h
    M hw/net/fsl_etsec/rings.c
    M hw/net/igb_regs.h
    M hw/net/mcf_fec.c
    M hw/net/rocker/rocker_fp.c
    M hw/net/rtl8139.c
    M hw/net/smc91c111.c
    M hw/net/sungem.c
    M hw/net/sunhme.c
    M hw/net/virtio-net.c
    M hw/net/vmxnet3.c
    M hw/net/vmxnet3.h

  Log Message:
  -----------
  hw/net: spelling fixes

Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: f1c0cff8a28ac25f48ecaea672eb3d68250bb3c4
      
https://github.com/qemu/qemu/commit/f1c0cff8a28ac25f48ecaea672eb3d68250bb3c4
  Author: Michael Tokarev <mjt@tls.msk.ru>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M hw/pci-bridge/cxl_downstream.c
    M hw/pci-bridge/pci_expander_bridge.c
    M hw/pci-host/bonito.c
    M hw/pci-host/designware.c
    M hw/pci-host/dino.c
    M hw/pci-host/gpex-acpi.c
    M hw/pci-host/gt64120.c
    M hw/pci-host/pnv_phb.c
    M hw/pci-host/pnv_phb3.c
    M hw/pci-host/pnv_phb3_msi.c
    M hw/pci-host/pnv_phb4.c
    M hw/pci/pcie_aer.c
    M hw/pci/shpc.c

  Log Message:
  -----------
  hw/pci: spelling fixes

Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 6eedbb5b0c2a1c79d377da9a08956f896ad66beb
      
https://github.com/qemu/qemu/commit/6eedbb5b0c2a1c79d377da9a08956f896ad66beb
  Author: Michael Tokarev <mjt@tls.msk.ru>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M hw/tpm/tpm_tis.h
    M hw/tpm/tpm_tis_common.c
    M hw/tpm/tpm_tis_i2c.c
    M hw/tpm/tpm_tis_isa.c
    M hw/tpm/tpm_tis_sysbus.c

  Log Message:
  -----------
  hw/tpm: spelling fixes

Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Reviewed-by: Stefan Berger <stefanb@linux.ibm.com>


  Commit: ca9cde57abb23753acafab77856f6816858a2089
      
https://github.com/qemu/qemu/commit/ca9cde57abb23753acafab77856f6816858a2089
  Author: Alex Bennée <alex.bennee@linaro.org>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M tests/docker/dockerfiles/debian-amd64-cross.docker
    M tests/docker/dockerfiles/debian-amd64.docker
    M tests/docker/dockerfiles/debian-arm64-cross.docker
    M tests/docker/dockerfiles/debian-armhf-cross.docker
    M tests/docker/dockerfiles/debian-ppc64el-cross.docker
    M tests/docker/dockerfiles/debian-s390x-cross.docker
    M tests/lcitool/libvirt-ci
    M tests/lcitool/refresh

  Log Message:
  -----------
  tests: update most Debian images to Bookworm

Bookworm has been out a while now. Time to update our containers to
the current stable. This requires the latest lcitool repo so update
the sub-module too.

For some reason the MIPs containers won't build so skip those for now.
We also have to skip the armel builds due to a stuck libc update.

Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20230914155422.426639-2-alex.bennee@linaro.org>


  Commit: 3aa2cfa0e6185ce7c6197786ff2407d564996c85
      
https://github.com/qemu/qemu/commit/3aa2cfa0e6185ce7c6197786ff2407d564996c85
  Author: Alex Bennée <alex.bennee@linaro.org>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M .gitlab-ci.d/base.yml

  Log Message:
  -----------
  gitlab: fix typo/spelling in comments

Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20230914155422.426639-3-alex.bennee@linaro.org>


  Commit: 232ce1eb902846637ac7c2ba33c16c984b145a3f
      
https://github.com/qemu/qemu/commit/232ce1eb902846637ac7c2ba33c16c984b145a3f
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M tests/docker/dockerfiles/debian-loongarch-cross.docker

  Log Message:
  -----------
  tests/docker: Update docker-loongarch-cross toolchain

Update from clfs 5.0 to clfs 8.1, which includes updates
to binutils 2.41, gcc 13.2, and glibc 2.38.

See https://github.com/loongson/build-tools

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Song Gao <gaosong@loongson.cn>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20230829220228.928506-2-richard.henderson@linaro.org>
Message-Id: <20230914155422.426639-4-alex.bennee@linaro.org>


  Commit: 81395b6ec8364b37ee85b37faf18930800ad5db5
      
https://github.com/qemu/qemu/commit/81395b6ec8364b37ee85b37faf18930800ad5db5
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M tests/qtest/microbit-test.c

  Log Message:
  -----------
  microbit: add missing qtest_quit() call

Without this call, the QEMU process is being left running which on
FreeBSD 13.2 at least, makes meson think the test is still running,
and thus execution of "make check" continues forever.

This fixes the regression introduced in:

  commit a9c9bbee855877293683012942d3485d50f286af
  Author: Chris Laplante <chris@laplante.io>
  Date:   Tue Aug 22 17:31:02 2023 +0100

    qtest: microbit-test: add tests for nRF51 DETECT

Fixes: https://gitlab.com/qemu-project/qemu/-/issues/1882
Signed-off-by: "Daniel P. Berrangé" <berrange@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20230912184130.3056054-2-berrange@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20230914155422.426639-5-alex.bennee@linaro.org>


  Commit: 49e9f8644b036b42b0fc65bc8bef992fcee2f610
      
https://github.com/qemu/qemu/commit/49e9f8644b036b42b0fc65bc8bef992fcee2f610
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M tests/qtest/libqtest.c

  Log Message:
  -----------
  qtest: kill orphaned qtest QEMU processes on FreeBSD

On Linux we use PR_SET_PDEATHSIG to kill orphaned QEMU processes
if we fail to call qtest_quit(), or the test program aborts/segvs.
This prevents meson from hanging forever due to the orphaned
process keeping stdout open.

On FreeBSD we can achieve the same using PROC_PDEATHSIG_CTL, which
gives us the equivalent protection against hangs.

Signed-off-by: "Daniel P. Berrangé" <berrange@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20230912184130.3056054-3-berrange@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20230914155422.426639-6-alex.bennee@linaro.org>


  Commit: c576d8bfbb6eca37d4258be4275efd617b1f1d94
      
https://github.com/qemu/qemu/commit/c576d8bfbb6eca37d4258be4275efd617b1f1d94
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M .gitlab-ci.d/cirrus.yml
    M .gitlab-ci.d/cirrus/build.yml

  Log Message:
  -----------
  gitlab: make Cirrus CI timeout explicit

On the GitLab side we're invoking the Cirrus CI job using the
cirrus-run tool which speaks to the Cirrus REST API. Cirrus
sometimes tasks 5-10 minutes to actually schedule the task,
and thus the execution time of 'cirrus-run' inside GitLab will
be slightly longer than the execution time of the Cirrus CI
task.

Setting the timeout in the GitLab CI job should thus be done
in relation to the timeout set for the Cirrus CI job. While
Cirrus CI defaults to 60 minutes, it is better to set this
explicitly, and make the relationship between the jobs
explicit

Signed-off-by: "Daniel P. Berrangé" <berrange@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20230912184130.3056054-4-berrange@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20230914155422.426639-7-alex.bennee@linaro.org>


  Commit: eca74afd7dfbe7363fb2b7e8a7b1dae4bc05cd25
      
https://github.com/qemu/qemu/commit/eca74afd7dfbe7363fb2b7e8a7b1dae4bc05cd25
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M .gitlab-ci.d/cirrus.yml

  Log Message:
  -----------
  gitlab: make Cirrus CI jobs gating

The Cirrus CI jobs have been non-gating for a while to let us build
confidence in their reliability. Aside from periodic dependancy
problems when FreeBSD Ports switches to be based on a new FreeBSD
image version, the jobs have been reliable. It is thus worth making
them gating to prevent build failures being missed during merges.

Signed-off-by: "Daniel P. Berrangé" <berrange@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20230912184130.3056054-5-berrange@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20230914155422.426639-8-alex.bennee@linaro.org>


  Commit: f0ec14c78c4583fc34c16625ca6bf3900bcccba5
      
https://github.com/qemu/qemu/commit/f0ec14c78c4583fc34c16625ca6bf3900bcccba5
  Author: Nicholas Piggin <npiggin@gmail.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M python/qemu/machine/machine.py
    M tests/avocado/avocado_qemu/__init__.py

  Log Message:
  -----------
  tests/avocado: Fix console data loss

Occasionally some avocado tests will fail waiting for console line
despite the machine running correctly. Console data goes missing, as can
be seen in the console log. This is due to _console_interaction calling
makefile() on the console socket each time it is invoked, which must be
losing old buffer contents when going out of scope.

It is not enough to makefile() with buffered=0. That helps significantly
but data loss is still possible. My guess is that readline() has a line
buffer even when the file is in unbuffered mode, that can eat data.

Fix this by providing a console file that persists for the life of the
console.

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Reviewed-by: "Daniel P. Berrangé" <berrange@redhat.com>
Message-Id: <20230912131340.405619-1-npiggin@gmail.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Acked-by: John Snow <jsnow@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20230914155422.426639-9-alex.bennee@linaro.org>


  Commit: f959c3d87ccfa585b105de6964a6261e368cc1da
      
https://github.com/qemu/qemu/commit/f959c3d87ccfa585b105de6964a6261e368cc1da
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M tests/avocado/boot_linux_console.py
    M tests/avocado/machine_mips_malta.py
    M tests/avocado/replay_kernel.py
    M tests/avocado/tuxrun_baselines.py

  Log Message:
  -----------
  tests/avocado: Disable MIPS Malta tests due to GitLab issue #1884

Commit 0d58c66068 ("softmmu: Use async_run_on_cpu in tcg_commit")
introduced a regression which is only triggered by the MIPS Malta
machine. Since those tests are gatting and disturb the CI workflow,
disable them until https://gitlab.com/qemu-project/qemu/-/issues/1866
is fixed.

  $ make check-avocado \
      AVOCADO_TAGS='arch:mipsel arch:mips64el' \
      AVOCADO_ALLOW_UNTRUSTED_CODE=1 \
      AVOCADO_TIMEOUT_EXPECTED=1
    AVOCADO tests/avocado
   (04/24) 
tests/avocado/boot_linux_console.py:BootLinuxConsole.test_mips_malta32el_nanomips_4k:
 INTERRUPTED: Test interrupted by SIGTERM\nRunner error occurred: Timeout 
reached\nOriginal status: ERROR\n... (90.39 s)
   (05/24) 
tests/avocado/boot_linux_console.py:BootLinuxConsole.test_mips_malta32el_nanomips_16k_up:
 INTERRUPTED: Test interrupted by SIGTERM\nRunner error occurred: Timeout 
reached\nOriginal status: ERROR\n... (90.29 s)
   (06/24) 
tests/avocado/boot_linux_console.py:BootLinuxConsole.test_mips_malta32el_nanomips_64k_dbg:
 INTERRUPTED: Test interrupted by SIGTERM\nRunner error occurred: Timeout 
reached\nOriginal status: ERROR\n... (92.53 s)
   (11/24) 
tests/avocado/machine_mips_malta.py:MaltaMachineFramebuffer.test_mips_malta_i6400_framebuffer_logo_1core:
 INTERRUPTED: Test interrupted by SIGTERM\nRunner error occurred: Timeout 
reached\nOriginal status: ERROR\n... (25.78 s)
  RESULTS    : PASS 8 | ERROR 0 | FAIL 0 | SKIP 7 | WARN 2 | INTERRUPT 5 | 
CANCEL 2
  JOB TIME   : 525.60 s                                      ^^^^^^^^^^^

Reported-by: Thomas Huth <thuth@redhat.com>
Suggested-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20230913135339.9128-1-philmd@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20230914155422.426639-10-alex.bennee@linaro.org>


  Commit: 7210448edc0fee5163f31789024556b226dec647
      
https://github.com/qemu/qemu/commit/7210448edc0fee5163f31789024556b226dec647
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block.c

  Log Message:
  -----------
  block: Remove unused BlockReopenQueueEntry.perms_checked

This field has been unused since commit 72373e40fbc ('block:
bdrv_reopen_multiple: refresh permissions on updated graph').
Remove it.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230911094620.45040-2-kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 01e28f6006e689fc4d0ce0f7246ce1e5cbdef758
      
https://github.com/qemu/qemu/commit/01e28f6006e689fc4d0ce0f7246ce1e5cbdef758
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block/preallocate.c

  Log Message:
  -----------
  preallocate: Factor out preallocate_truncate_to_real_size()

It's essentially the same code in preallocate_check_perm() and
preallocate_close(), except that the latter ignores errors.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230911094620.45040-3-kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: edcce17b1590d0e785d303d31a7b08182a1bdb1e
      
https://github.com/qemu/qemu/commit/edcce17b1590d0e785d303d31a7b08182a1bdb1e
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block/preallocate.c

  Log Message:
  -----------
  preallocate: Don't poll during permission updates

When the permission related BlockDriver callbacks are called, we are in
the middle of an operation traversing the block graph. Polling in such a
place is a very bad idea because the graph could change in unexpected
ways. In the future, callers will also hold the graph lock, which is
likely to turn polling into a deadlock.

So we need to get rid of calls to functions like bdrv_getlength() or
bdrv_truncate() there as these functions poll internally. They are
currently used so that when no parent has write/resize permissions on
the image any more, the preallocate filter drops the extra preallocated
area in the image file and gives up write/resize permissions itself.

In order to achieve this without polling in .bdrv_check_perm, don't
immediately truncate the image, but only schedule a BH to do so. The
filter keeps the write/resize permissions a bit longer now until the BH
has executed.

There is one case in which delaying doesn't work: Reopening the image
read-only. In this case, bs->file will likely be reopened read-only,
too, so keeping write permissions a bit longer on it doesn't work. But
we can already cover this case in preallocate_reopen_prepare() and not
rely on the permission updates for it.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230911094620.45040-4-kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 487b91870face8973e78d82cd312a77d8f9f5363
      
https://github.com/qemu/qemu/commit/487b91870face8973e78d82cd312a77d8f9f5363
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M tests/unit/test-bdrv-drain.c
    M tests/unit/test-bdrv-graph-mod.c
    M tests/unit/test-block-iothread.c

  Log Message:
  -----------
  block: Take AioContext lock for bdrv_append() more consistently

The documentation for bdrv_append() says that the caller must hold the
AioContext lock for bs_top. Change all callers to actually adhere to the
contract.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230911094620.45040-5-kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: ac2ae233a0c266676195c0374195ec57197076cf
      
https://github.com/qemu/qemu/commit/ac2ae233a0c266676195c0374195ec57197076cf
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block.c
    M block/graph-lock.c
    M include/block/block-global-state.h
    M tests/qemu-iotests/051.pc.out

  Log Message:
  -----------
  block: Introduce bdrv_schedule_unref()

bdrv_unref() is called by a lot of places that need to hold the graph
lock (it naturally happens in the context of operations that change the
graph). However, bdrv_unref() takes the graph writer lock internally, so
it can't actually be called while already holding a graph lock without
causing a deadlock.

bdrv_unref() also can't just become GRAPH_WRLOCK because it drains the
node before closing it, and draining requires that the graph is
unlocked.

The solution is to defer deleting the node until we don't hold the lock
any more and draining is possible again.

Note that keeping images open for longer than necessary can create
problems, too: You can't open an image again before it is really closed
(if image locking didn't prevent it, it would cause corruption).
Reopening an image immediately happens at least during bdrv_open() and
bdrv_co_create().

In order to solve this problem, make sure to run the deferred unref in
bdrv_graph_wrunlock(), i.e. the first possible place where we can drain
again. This is also why bdrv_schedule_unref() is marked GRAPH_WRLOCK.

The output of iotest 051 is updated because the additional polling
changes the order of HMP output, resulting in a new "(qemu)" prompt in
the test output that was previously on a separate line and filtered out.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20230911094620.45040-6-kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: de90329889b4769c7d3ef519d103b7bcf454d6c7
      
https://github.com/qemu/qemu/commit/de90329889b4769c7d3ef519d103b7bcf454d6c7
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M include/block/block-common.h
    M scripts/block-coroutine-wrapper.py

  Log Message:
  -----------
  block-coroutine-wrapper: Add no_co_wrapper_bdrv_wrlock functions

Add a new wrapper type for GRAPH_WRLOCK functions that should be called
from coroutine context.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230911094620.45040-7-kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: d21843491ac0edca0963d35306b31e17d70e017f
      
https://github.com/qemu/qemu/commit/d21843491ac0edca0963d35306b31e17d70e017f
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M scripts/block-coroutine-wrapper.py

  Log Message:
  -----------
  block-coroutine-wrapper: Allow arbitrary parameter names

Don't assume specific parameter names like 'bs' or 'blk' in the
generated code, but use the actual name.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230911094620.45040-8-kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: ad29eb3ddc6ca0081a4d6fa8620ec2b8053e98b9
      
https://github.com/qemu/qemu/commit/ad29eb3ddc6ca0081a4d6fa8620ec2b8053e98b9
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block.c

  Log Message:
  -----------
  block: Mark bdrv_replace_child_noperm() GRAPH_WRLOCK

Instead of taking the writer lock internally, require callers to already
hold it when calling bdrv_replace_child_noperm(). These callers will
typically already hold the graph lock once the locking work is
completed, which means that they can't call functions that take it
internally.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230911094620.45040-9-kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 2f64e1fc57f1a275637ff6c34cb1a7207dc9e8c8
      
https://github.com/qemu/qemu/commit/2f64e1fc57f1a275637ff6c34cb1a7207dc9e8c8
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block.c

  Log Message:
  -----------
  block: Mark bdrv_replace_child_tran() GRAPH_WRLOCK

Instead of taking the writer lock internally, require callers to already
hold it when calling bdrv_replace_child_tran(). These callers will
typically already hold the graph lock once the locking work is
completed, which means that they can't call functions that take it
internally.

While a graph lock is held, polling is not allowed. Therefore draining
the necessary nodes can no longer be done in bdrv_remove_child() and
bdrv_replace_node_noperm(), but the callers must already make sure that
they are drained.

Note that the transaction callbacks still take the lock internally, so
tran_finalize() must be called without the lock held. This is because
bdrv_append() also calls bdrv_attach_child_noperm(), which currently
requires to be called unlocked. Once it changes, the transaction
callbacks can be changed, too.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230911094620.45040-10-kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 7d4ca9d25bce7e7cd3f1188ec5e5c46c649310c7
      
https://github.com/qemu/qemu/commit/7d4ca9d25bce7e7cd3f1188ec5e5c46c649310c7
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block.c
    M block/stream.c

  Log Message:
  -----------
  block: Mark bdrv_attach_child_common() GRAPH_WRLOCK

Instead of taking the writer lock internally, require callers to already
hold it when calling bdrv_attach_child_common(). These callers will
typically already hold the graph lock once the locking work is
completed, which means that they can't call functions that take it
internally.

Note that the transaction callbacks still take the lock internally, so
tran_finalize() must be called without the lock held. This is because
bdrv_append() also calls bdrv_replace_node_noperm(), which currently
requires the transaction callbacks to be called unlocked. In the next
step, both of them can be switched to locked tran_finalize() calls
together.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230911094620.45040-11-kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 5661a00d40a59c28796a59c9df55d03efe8c56fc
      
https://github.com/qemu/qemu/commit/5661a00d40a59c28796a59c9df55d03efe8c56fc
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block.c

  Log Message:
  -----------
  block: Call transaction callbacks with lock held

In previous patches, we changed some transactionable functions to be
marked as GRAPH_WRLOCK, but required that tran_finalize() is still
called without the lock. This was because all callbacks that can be in
the same transaction need to follow the same convention.

Now that we don't have conflicting requirements any more, we can switch
all of the transaction callbacks to be declared GRAPH_WRLOCK, too, and
call tran_finalize() with the lock held.

Document for each of these transactionable functions that the lock needs
to be held when completing the transaction, and make sure that all
callers down to the place where the transaction is finalised actually
have the writer lock.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230911094620.45040-12-kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: afdaeb9ea06ea641ccc4226964b8e278af5e7685
      
https://github.com/qemu/qemu/commit/afdaeb9ea06ea641ccc4226964b8e278af5e7685
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block.c
    M block/quorum.c
    M block/replication.c
    M include/block/block-global-state.h
    M tests/unit/test-bdrv-drain.c
    M tests/unit/test-bdrv-graph-mod.c

  Log Message:
  -----------
  block: Mark bdrv_attach_child() GRAPH_WRLOCK

Instead of taking the writer lock internally, require callers to already
hold it when calling bdrv_attach_child_common(). These callers will
typically already hold the graph lock once the locking work is
completed, which means that they can't call functions that take it
internally.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230911094620.45040-13-kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 3804e3cf540af25a01d0d418a5a1d4f78c2574ff
      
https://github.com/qemu/qemu/commit/3804e3cf540af25a01d0d418a5a1d4f78c2574ff
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block.c
    M block/block-backend.c
    M block/crypto.c
    M block/mirror.c
    M block/vmdk.c
    M include/block/block_int-common.h
    M include/block/block_int-global-state.h
    M include/sysemu/block-backend-global-state.h
    M tests/unit/test-bdrv-graph-mod.c

  Log Message:
  -----------
  block: Mark bdrv_parent_perms_conflict() and callers GRAPH_RDLOCK

The function reads the parents list, so it needs to hold the graph lock.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230911094620.45040-14-kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: bce73bc25bd0aa1fee21b37980c8f04b49c6b44b
      
https://github.com/qemu/qemu/commit/bce73bc25bd0aa1fee21b37980c8f04b49c6b44b
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block.c
    M blockdev.c
    M include/block/block_int-common.h
    M include/block/block_int-global-state.h

  Log Message:
  -----------
  block: Mark bdrv_get_cumulative_perm() and callers GRAPH_RDLOCK

The function reads the parents list, so it needs to hold the graph lock.

This happens to result in BlockDriver.bdrv_set_perm() to be called with
the graph lock held. For consistency, make it the same for all of the
BlockDriver callbacks for updating permissions and annotate the function
pointers with GRAPH_RDLOCK_PTR.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230911094620.45040-15-kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: c629b6d22349c83ca262d1887c0920e87ec0bfdb
      
https://github.com/qemu/qemu/commit/c629b6d22349c83ca262d1887c0920e87ec0bfdb
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block.c
    M block/copy-before-write.c
    M include/block/block_int-common.h

  Log Message:
  -----------
  block: Mark bdrv_child_perm() GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
bdrv_child_perm() need to hold a reader lock for the graph because
some implementations access the children list of a node.

The callers of bdrv_child_perm() conveniently already hold the lock.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230911094620.45040-16-kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 356f4ef611df18f6f8323a9fe6e6b4963272bf74
      
https://github.com/qemu/qemu/commit/356f4ef611df18f6f8323a9fe6e6b4963272bf74
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block.c

  Log Message:
  -----------
  block: Mark bdrv_parent_cb_change_media() GRAPH_RDLOCK

The function reads the parents list, so it needs to hold the graph lock.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230911094620.45040-17-kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 733467a1e6067070a8b641f51675d0cb5b715a83
      
https://github.com/qemu/qemu/commit/733467a1e6067070a8b641f51675d0cb5b715a83
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block.c

  Log Message:
  -----------
  block: Take graph rdlock in bdrv_drop_intermediate()

The function reads the parents list, so it needs to hold the graph lock.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Message-ID: <20230911094620.45040-18-kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 7f831d29e3d005e499b22c0591a26a33eb5c406d
      
https://github.com/qemu/qemu/commit/7f831d29e3d005e499b22c0591a26a33eb5c406d
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block.c

  Log Message:
  -----------
  block: Take graph rdlock in bdrv_change_aio_context()

The function reads the parents list, so it needs to hold the graph lock.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Message-ID: <20230911094620.45040-19-kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: ede01e4635050a395eacd57b7d7fbea8ea208704
      
https://github.com/qemu/qemu/commit/ede01e4635050a395eacd57b7d7fbea8ea208704
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block.c
    M block/block-backend.c
    M blockjob.c
    M include/block/block_int-global-state.h

  Log Message:
  -----------
  block: Mark bdrv_root_unref_child() GRAPH_WRLOCK

Instead of taking the writer lock internally, require callers to already
hold it when calling bdrv_root_unref_child(). These callers will
typically already hold the graph lock once the locking work is
completed, which means that they can't call functions that take it
internally.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230911094620.45040-20-kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 32a8aba37eaae54d3a0a7ae5e93e3e157525660a
      
https://github.com/qemu/qemu/commit/32a8aba37eaae54d3a0a7ae5e93e3e157525660a
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block.c
    M block/blklogwrites.c
    M block/blkverify.c
    M block/qcow2.c
    M block/quorum.c
    M block/replication.c
    M block/snapshot.c
    M block/vmdk.c
    M include/block/block-global-state.h
    M tests/unit/test-bdrv-drain.c

  Log Message:
  -----------
  block: Mark bdrv_unref_child() GRAPH_WRLOCK

Instead of taking the writer lock internally, require callers to already
hold it when calling bdrv_unref_child(). These callers will typically
already hold the graph lock once the locking work is completed, which
means that they can't call functions that take it internally.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230911094620.45040-21-kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 9def6082cf885fbb2e8e719d5055109c8a04b885
      
https://github.com/qemu/qemu/commit/9def6082cf885fbb2e8e719d5055109c8a04b885
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block/quorum.c
    M blockdev.c
    M include/block/block-global-state.h
    M include/block/block_int-common.h

  Log Message:
  -----------
  block: Mark bdrv_add/del_child() and caller GRAPH_WRLOCK

The functions read the parents list in the generic block layer, so we
need to hold the graph lock already there. The BlockDriver
implementations actually modify the graph, so it has to be a writer
lock.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230911094620.45040-22-kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 2848289168fbbd9a6855c84ec8fde8929a2b042b
      
https://github.com/qemu/qemu/commit/2848289168fbbd9a6855c84ec8fde8929a2b042b
  Author: Andrey Drobyshev via <qemu-block@nongnu.org>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block/qcow.c
    M block/qcow2.c
    M block/vmdk.c
    M include/block/block-common.h

  Log Message:
  -----------
  block: add BDRV_BLOCK_COMPRESSED flag for bdrv_block_status()

Functions qcow2_get_host_offset(), get_cluster_offset(),
vmdk_co_block_status() explicitly report compressed cluster types when data
is compressed.  However, this information is never passed further.  Let's
make use of it by adding new BDRV_BLOCK_COMPRESSED flag for
bdrv_block_status(), so that caller may know that the data range is
compressed.  In particular, we're going to use this flag to tweak
"qemu-img map" output.

This new flag is only being utilized by qcow, qcow2 and vmdk formats, as only
those support compression.

Reviewed-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Hanna Czenczek <hreitz@redhat.com>
Signed-off-by: Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
Message-ID: <20230907210226.953821-2-andrey.drobyshev@virtuozzo.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 52b10c9c0c68e90f9503ba578f2eaf8975c1977f
      
https://github.com/qemu/qemu/commit/52b10c9c0c68e90f9503ba578f2eaf8975c1977f
  Author: Andrey Drobyshev via <qemu-block@nongnu.org>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M qapi/block-core.json
    M qemu-img.c
    M tests/qemu-iotests/122.out
    M tests/qemu-iotests/146.out
    M tests/qemu-iotests/154.out
    M tests/qemu-iotests/179.out
    M tests/qemu-iotests/209.out
    M tests/qemu-iotests/221.out
    M tests/qemu-iotests/223.out
    M tests/qemu-iotests/241.out
    M tests/qemu-iotests/244.out
    M tests/qemu-iotests/252.out
    M tests/qemu-iotests/253.out
    M tests/qemu-iotests/274.out
    M tests/qemu-iotests/tests/nbd-qemu-allocation.out
    M tests/qemu-iotests/tests/qemu-img-bitmaps.out

  Log Message:
  -----------
  qemu-img: map: report compressed data blocks

Right now "qemu-img map" reports compressed blocks as containing data
but having no host offset.  This is not very informative.  Instead,
let's add another boolean field named "compressed" in case JSON output
mode is specified.  This is achieved by utilizing new allocation status
flag BDRV_BLOCK_COMPRESSED for bdrv_block_status().

Also update the expected qemu-iotests outputs to contain the new field.

Signed-off-by: Andrey Drobyshev <andrey.drobyshev@virtuozzo.com>
Message-ID: <20230907210226.953821-3-andrey.drobyshev@virtuozzo.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 652b0dd80815cdb03db9320572be1cc9f9f664a1
      
https://github.com/qemu/qemu/commit/652b0dd80815cdb03db9320572be1cc9f9f664a1
  Author: Stefan Hajnoczi <stefanha@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block/block-backend.c
    M block/io.c
    M hw/nvme/ctrl.c
    M include/block/aio.h
    M include/block/block-global-state.h
    M include/block/block-io.h
    M softmmu/dma-helpers.c
    M util/thread-pool.c

  Log Message:
  -----------
  block: remove AIOCBInfo->get_aio_context()

The synchronous bdrv_aio_cancel() function needs the acb's AioContext so
it can call aio_poll() to wait for cancellation.

It turns out that all users run under the BQL in the main AioContext, so
this callback is not needed.

Remove the callback, mark bdrv_aio_cancel() GLOBAL_STATE_CODE just like
its blk_aio_cancel() caller, and poll the main loop AioContext.

The purpose of this cleanup is to identify bdrv_aio_cancel() as an API
that does not work with the multi-queue block layer.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230912231037.826804-2-stefanha@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Klaus Jensen <k.jensen@samsung.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: c8bf923d5eeed0b2bbe26feb37bb399ec1a894f5
      
https://github.com/qemu/qemu/commit/c8bf923d5eeed0b2bbe26feb37bb399ec1a894f5
  Author: Stefan Hajnoczi <stefanha@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M tests/unit/test-bdrv-drain.c

  Log Message:
  -----------
  test-bdrv-drain: avoid race with BH in IOThread drain test

This patch fixes a race condition in test-bdrv-drain that is difficult
to reproduce. test-bdrv-drain sometimes fails without an error message
on the block pull request sent by Kevin Wolf on Sep 4, 2023. I was able
to reproduce it locally and found that "block-backend: process I/O in
the current AioContext" (in this patch series) is the first commit where
it reproduces.

I do not know why "block-backend: process I/O in the current AioContext"
exposes this bug. It might be related to the fact that the test's preadv
request runs in the main thread instead of IOThread a after my commit.
That might simply change the timing of the test.

Now on to the race condition in test-bdrv-drain. The main thread
schedules a BH in IOThread a and then drains the BDS:

  aio_bh_schedule_oneshot(ctx_a, test_iothread_main_thread_bh, &data);

  /* The request is running on the IOThread a. Draining its block device
   * will make sure that it has completed as far as the BDS is concerned,
   * but the drain in this thread can continue immediately after
   * bdrv_dec_in_flight() and aio_ret might be assigned only slightly
   * later. */
  do_drain_begin(drain_type, bs);

If the BH completes before do_drain_begin() then there is nothing to
worry about.

If the BH invokes bdrv_flush() before do_drain_begin(), then
do_drain_begin() waits for it to complete.

The problematic case is when do_drain_begin() runs before the BH enters
bdrv_flush(). Then do_drain_begin() misses the BH and the drain
mechanism has failed in quiescing I/O.

Fix this by incrementing the in_flight counter so that do_drain_begin()
waits for test_iothread_main_thread_bh().

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230912231037.826804-3-stefanha@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 46eb6e861b0a622541593ea6db85e7c971dadb28
      
https://github.com/qemu/qemu/commit/46eb6e861b0a622541593ea6db85e7c971dadb28
  Author: Stefan Hajnoczi <stefanha@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block/block-backend.c

  Log Message:
  -----------
  block-backend: process I/O in the current AioContext

Switch blk_aio_*() APIs over to multi-queue by using
qemu_get_current_aio_context() instead of blk_get_aio_context(). This
change will allow devices to process I/O in multiple IOThreads in the
future.

I audited existing blk_aio_*() callers:
- migration/block.c: blk_mig_lock() protects the data accessed by the
  completion callback.
- The remaining emulated devices and exports run with
  qemu_get_aio_context() == blk_get_aio_context().

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230912231037.826804-4-stefanha@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 0f86afde66ea0d9a383878223ac07bd111c69692
      
https://github.com/qemu/qemu/commit/0f86afde66ea0d9a383878223ac07bd111c69692
  Author: Stefan Hajnoczi <stefanha@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M block/block-backend.c

  Log Message:
  -----------
  block-backend: process zoned requests in the current AioContext

Process zoned requests in the current thread's AioContext instead of in
the BlockBackend's AioContext.

There is no need to use the BlockBackend's AioContext thanks to CoMutex
bs->wps->colock, which protects zone metadata.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230912231037.826804-5-stefanha@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: c428b392590df6364a025d5841e3e8a589ebfd4a
      
https://github.com/qemu/qemu/commit/c428b392590df6364a025d5841e3e8a589ebfd4a
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M include/block/aio.h

  Log Message:
  -----------
  block: mark aio_poll as non-coroutine

It is forbidden to block on the event loop during a coroutine, as that
can cause deadlocks due to recursive locking.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-ID: <20230908075458.527013-1-pbonzini@redhat.com>
Reviewed-by: Michael Tokarev <mjt@tls.msk.ru>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: bb16991fe073643b59bd4195863cafc08032f04b
      
https://github.com/qemu/qemu/commit/bb16991fe073643b59bd4195863cafc08032f04b
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M block/parallels.c

  Log Message:
  -----------
  parallels: fix formatting in bdrv_parallels initialization

Old code is ugly and contains tabulations. There are no functional
changes in this patch.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: 73f3e136922be5864dace55e744d23914f21e358
      
https://github.com/qemu/qemu/commit/73f3e136922be5864dace55e744d23914f21e358
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M block/parallels.c

  Log Message:
  -----------
  parallels: mark driver as supporting CBT

Parallels driver indeed support Parallels Dirty Bitmap Feature in
read-only mode. The patch adds bdrv_supports_persistent_dirty_bitmap()
callback which always return 1 to indicate that.

This will allow to copy CBT from Parallels image with qemu-img.

Note: read-write support is signalled through
bdrv_co_can_store_new_dirty_bitmap() and is different.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: c74cd7bd328001c85cd6f74f63b52ae1263b4c22
      
https://github.com/qemu/qemu/commit/c74cd7bd328001c85cd6f74f63b52ae1263b4c22
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M block/parallels.c

  Log Message:
  -----------
  parallels: fix memory leak in parallels_open()

We should free opts allocated through qemu_opts_create() at the end.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: 93361b7e33ab7046e7c4c2064503ff199ae1cef9
      
https://github.com/qemu/qemu/commit/93361b7e33ab7046e7c4c2064503ff199ae1cef9
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M block/parallels.c

  Log Message:
  -----------
  parallels: invent parallels_opts_prealloc() helper to parse prealloc opts

This patch creates above mentioned helper and moves its usage to the
beginning of parallels_open(). This simplifies parallels_open() a bit.

The patch also ensures that we store prealloc_size on block driver state
always in sectors. This makes code cleaner and avoids wrong opinion at
the assignment that the value is in bytes.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: 9c398781361b6f77a0da1aa9389098ccec16760b
      
https://github.com/qemu/qemu/commit/9c398781361b6f77a0da1aa9389098ccec16760b
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M block/parallels.c

  Log Message:
  -----------
  parallels: return earler in fail_format branch in parallels_open()

We do not need to perform any deallocation/cleanup if wrong format is
detected.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: e17b9d08d90bdbbe2bc4d63d758ae2cb9ba806a6
      
https://github.com/qemu/qemu/commit/e17b9d08d90bdbbe2bc4d63d758ae2cb9ba806a6
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M block/parallels.c

  Log Message:
  -----------
  parallels: return earlier from parallels_open() function on error

At the beginning of the function we can return immediately until we
really allocate s->header.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: 8f5f5326250791ceb597b486ff52d8ea83d6c2b0
      
https://github.com/qemu/qemu/commit/8f5f5326250791ceb597b486ff52d8ea83d6c2b0
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M block/parallels.c

  Log Message:
  -----------
  parallels: refactor path when we need to re-check image in parallels_open

More conditions follows thus the check should be more scalable.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: a398275e88103c0c0a7f3784b30683f3bd3f640b
      
https://github.com/qemu/qemu/commit/a398275e88103c0c0a7f3784b30683f3bd3f640b
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M block/parallels.c

  Log Message:
  -----------
  parallels: create mark_used() helper which sets bit in used bitmap

This functionality is used twice already and next patch will add more
code with it.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: f025a99e614f730b3d8902158f4c6c2d947eb855
      
https://github.com/qemu/qemu/commit/f025a99e614f730b3d8902158f4c6c2d947eb855
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M tests/qemu-iotests/tests/parallels-checks

  Log Message:
  -----------
  tests: ensure that image validation will not cure the corruption

Since
    commit cfce1091d55322789582480798a891cbaf66924e
    Author: Alexander Ivanov <alexander.ivanov@virtuozzo.com>
    Date:   Tue Jul 18 12:44:29 2023 +0200
    parallels: Image repairing in parallels_open()
there is a potential pit fall with calling
    qemu-io -c "read"
The image is opened in read-write mode and thus could be potentially
repaired. This could ruin testing process.

The patch forces read-only opening for reads. In that case repairing
is impossible.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: 6f2206b0cb12c1c6f6344b1c44036020b363fa9f
      
https://github.com/qemu/qemu/commit/6f2206b0cb12c1c6f6344b1c44036020b363fa9f
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M block/parallels.c

  Log Message:
  -----------
  parallels: fix broken parallels_check_data_off()

Once we have repaired data_off field in the header we should update
s->data_start which is calculated on the base of it.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: 9425a9441ae1ff633ae574b879b0e7fc99fba0cb
      
https://github.com/qemu/qemu/commit/9425a9441ae1ff633ae574b879b0e7fc99fba0cb
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M tests/qemu-iotests/tests/parallels-checks
    M tests/qemu-iotests/tests/parallels-checks.out

  Log Message:
  -----------
  parallels: add test which will validate data_off fixes through repair

We have only check through self-repair and that proven to be not enough.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: e185100fec3819dd51403c0abcdc899341cc67c1
      
https://github.com/qemu/qemu/commit/e185100fec3819dd51403c0abcdc899341cc67c1
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M block/parallels.c
    M block/parallels.h

  Log Message:
  -----------
  parallels: collect bitmap of used clusters at open

If the operation is failed, we need to check image consistency if the
problem is not about memory allocation.

Bitmap adjustments in allocate_cluster are not performed yet.
They worth to be separate. This was proven useful during debug of this
series. Kept as is for future bissecting.

It should be specifically noted that used bitmap must be recalculated
if data_off has been fixed during image consistency check.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: e6d3486d9a4020a65f831ea413a3cd3323fa0abd
      
https://github.com/qemu/qemu/commit/e6d3486d9a4020a65f831ea413a3cd3323fa0abd
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M tests/qemu-iotests/tests/parallels-checks
    M tests/qemu-iotests/tests/parallels-checks.out

  Log Message:
  -----------
  tests: fix broken deduplication check in parallels format test

Original check is broken as supposed reading from 2 different clusters
results in read from the same file offset twice. This is definitely
wrong.

We should be sure that
* the content of both clusters is correct after repair
* clusters are at the different offsets after repair
In order to check the latter we write some content into the first one
and validate that fact.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: 4e828bf4c24436baf5bf5383349b84cc294414d2
      
https://github.com/qemu/qemu/commit/4e828bf4c24436baf5bf5383349b84cc294414d2
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M tests/qemu-iotests/tests/parallels-checks
    M tests/qemu-iotests/tests/parallels-checks.out

  Log Message:
  -----------
  tests: test self-cure of parallels image with duplicated clusters

The test is quite similar with the original one for duplicated clusters.
There is the only difference in the operation which should fix the
image.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: 73194d3f54d04088f1821f98280da5eb6fb0a4c3
      
https://github.com/qemu/qemu/commit/73194d3f54d04088f1821f98280da5eb6fb0a4c3
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M block/parallels.c

  Log Message:
  -----------
  parallels: accept multiple clusters in mark_used()

This would be useful in the next patch in allocate_clusters(). This
change would not imply serious performance drawbacks as usually image
is full of data or are at the end of the bitmap.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: eeb1e6dc49e7a550c8f1d843a707b93e11cabf8b
      
https://github.com/qemu/qemu/commit/eeb1e6dc49e7a550c8f1d843a707b93e11cabf8b
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M block/parallels.c

  Log Message:
  -----------
  parallels: update used bitmap in allocate_cluster

We should extend the bitmap if the file is extended and set the bit in
the image used bitmap once the cluster is allocated. Sanity check at
that moment also looks like a good idea.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: 3ac10d19091f4e9375b66442e3edaab466d38617
      
https://github.com/qemu/qemu/commit/3ac10d19091f4e9375b66442e3edaab466d38617
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M block/parallels.c

  Log Message:
  -----------
  parallels: naive implementation of allocate_clusters with used bitmap

The access to the bitmap is not optimized completely.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: 66d201dd5a9077caaedee66261ea10ed01944477
      
https://github.com/qemu/qemu/commit/66d201dd5a9077caaedee66261ea10ed01944477
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M block/parallels.c

  Log Message:
  -----------
  parallels: improve readability of allocate_clusters

Replace 'space' representing the amount of data to preallocate with
'bytes'.

Rationale:
* 'space' at each place is converted to bytes
* the unit is more close to the variable name

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: c54fb435072376ec9a6ddd4fed56543a4a735e82
      
https://github.com/qemu/qemu/commit/c54fb435072376ec9a6ddd4fed56543a4a735e82
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M block/parallels.c

  Log Message:
  -----------
  parallels: naive implementation of parallels_co_pdiscard

* Discarding with backing stores is not supported by the format.
* There is no buffering/queueing of the discard operation.
* Only operations aligned to the cluster are supported.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: 4248e34be9c16f93b4720d455977f782615a4d63
      
https://github.com/qemu/qemu/commit/4248e34be9c16f93b4720d455977f782615a4d63
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M tests/qemu-iotests/131
    M tests/qemu-iotests/131.out

  Log Message:
  -----------
  tests: extend test 131 to cover availability of the discard operation

This patch contains test which minimally tests discard and new cluster
allocation logic.

The following checks are added:
* write 2 clusters, discard the first allocated
* write another cluster, check that the hole is filled
* write 2 clusters, discard the first allocated, write 1 cluster at
  non-aligned to cluster offset (2 new clusters should be allocated)

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: a98b260a525b85be929de76affc06370c4ecbc52
      
https://github.com/qemu/qemu/commit/a98b260a525b85be929de76affc06370c4ecbc52
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M block/parallels.c

  Log Message:
  -----------
  parallels: naive implementation of parallels_co_pwrite_zeroes

The zero flag is missed in the Parallels format specification. We can
resort to discard if we have no backing file.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: 1dba99e34d1bcb3c0de69c4270f9587b01e225fe
      
https://github.com/qemu/qemu/commit/1dba99e34d1bcb3c0de69c4270f9587b01e225fe
  Author: Denis V. Lunev <den@openvz.org>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M tests/qemu-iotests/131
    M tests/qemu-iotests/131.out

  Log Message:
  -----------
  tests: extend test 131 to cover availability of the write-zeroes

This patch contains test which minimally tests write-zeroes on top of
working discard.

The following checks are added:
* write 2 clusters, write-zero to the first allocated cluster
* write 2 cluster, write-zero to the half the first allocated cluster

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>


  Commit: 9b4b4e510bcb8b1c3c4789615dce3b520aa1f1d3
      
https://github.com/qemu/qemu/commit/9b4b4e510bcb8b1c3c4789615dce3b520aa1f1d3
  Author: Michael Tokarev <mjt@tls.msk.ru>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M hw/acpi/aml-build.c
    M hw/acpi/hmat.c
    M hw/acpi/nvdimm.c
    M hw/block/hd-geometry.c
    M hw/block/pflash_cfi01.c
    M hw/char/cadence_uart.c
    M hw/char/imx_serial.c
    M hw/char/serial.c
    M hw/core/generic-loader.c
    M hw/core/machine.c
    M hw/core/qdev-properties-system.c
    M hw/cpu/a15mpcore.c
    M hw/cxl/cxl-events.c
    M hw/cxl/cxl-mailbox-utils.c
    M hw/dma/omap_dma.c
    M hw/input/hid.c
    M hw/input/tsc2005.c
    M hw/intc/loongarch_extioi.c
    M hw/intc/loongson_liointc.c
    M hw/intc/omap_intc.c
    M hw/intc/pnv_xive.c
    M hw/intc/spapr_xive.c
    M hw/intc/spapr_xive_kvm.c
    M hw/intc/xive.c
    M hw/intc/xive2.c
    M hw/ipmi/ipmi_bmc_extern.c
    M hw/mem/cxl_type3.c
    M hw/misc/imx7_ccm.c
    M hw/misc/mac_via.c
    M hw/misc/stm32f2xx_syscfg.c
    M hw/misc/trace-events
    M hw/misc/zynq_slcr.c
    M hw/nvme/ctrl.c
    M hw/nvram/eeprom_at24c.c
    M hw/nvram/fw_cfg.c
    M hw/rtc/exynos4210_rtc.c
    M hw/rx/rx62n.c
    M hw/scsi/lsi53c895a.c
    M hw/scsi/mfi.h
    M hw/sh4/sh7750_regs.h
    M hw/smbios/smbios.c
    M hw/ssi/xilinx_spips.c
    M hw/ssi/xlnx-versal-ospi.c
    M hw/timer/etraxfs_timer.c
    M hw/timer/renesas_tmr.c
    M hw/virtio/virtio-crypto.c
    M hw/virtio/virtio-mem.c
    M hw/virtio/virtio.c

  Log Message:
  -----------
  hw/other: spelling fixes

Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 590102e7c17288a95776e6c1ff99929479562f32
      
https://github.com/qemu/qemu/commit/590102e7c17288a95776e6c1ff99929479562f32
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M subprojects/berkeley-softfloat-3.wrap
    M subprojects/berkeley-testfloat-3.wrap
    M subprojects/slirp.wrap

  Log Message:
  -----------
  subprojects: Use the correct .git suffix in the repository URLs

This avoids the warnings à la:
"warning: redirecting to https://gitlab.com/qemu-project/xyz.git/";

Signed-off-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Michael Tokarev <mjt@tls.msk.ru>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>


  Commit: 306764ee3bfd312a17af1b69e5a263a2fe6e76cb
      
https://github.com/qemu/qemu/commit/306764ee3bfd312a17af1b69e5a263a2fe6e76cb
  Author: Laszlo Ersek <lersek@redhat.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M hw/i386/pc.c

  Log Message:
  -----------
  hw/i386/pc: fix code comment on cumulative flash size

- The comment is incorrectly indented / formatted.

- The comment states a 8MB limit, even though the code enforces a 16MB
  limit.

Both of these warts come from commit 0657c657eb37 ("hw/i386/pc: add max
combined fw size as machine configuration option", 2020-12-09); clean them
up.

Arguably, it's also better to be consistent with the binary units (such as
"MiB") that QEMU uses nowadays.

Cc: "Michael S. Tsirkin" <mst@redhat.com> (supporter:PC)
Cc: Marcel Apfelbaum <marcel.apfelbaum@gmail.com> (supporter:PC)
Cc: Paolo Bonzini <pbonzini@redhat.com> (maintainer:X86 TCG CPUs)
Cc: Richard Henderson <richard.henderson@linaro.org> (maintainer:X86 TCG CPUs)
Cc: Eduardo Habkost <eduardo@habkost.net> (maintainer:X86 TCG CPUs)
Cc: qemu-trivial@nongnu.org
Fixes: 0657c657eb37
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Michael Tokarev <mjt@tls.msk.ru>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>


  Commit: 7b165fa164022b756c2b001d0a1525f98199d3ac
      
https://github.com/qemu/qemu/commit/7b165fa164022b756c2b001d0a1525f98199d3ac
  Author: Li Zhijian <lizhijian@cn.fujitsu.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M hw/cxl/cxl-host.c

  Log Message:
  -----------
  hw/cxl: Fix CFMW config memory leak

Allocate targets and targets[n] resources when all sanity checks are
passed to avoid memory leaks.

Cc: qemu-stable@nongnu.org
Suggested-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Fan Ni <fan.ni@samsung.com>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>


  Commit: bc63c99ef8184aaf2f6ea488e5fc9cfa391b871e
      
https://github.com/qemu/qemu/commit/bc63c99ef8184aaf2f6ea488e5fc9cfa391b871e
  Author: Dave Jiang <dave.jiang@intel.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M hw/pci-bridge/cxl_upstream.c

  Log Message:
  -----------
  hw/pci-bridge/cxl_upstream: Fix bandwidth entry base unit for SSLBIS

According to ACPI spec 6.5 5.2.28.4 System Locality Latency and Bandwidth
Information Structure, if the "Entry Base Unit" is 1024 for BW and the
matrix entry has the value of 100, the BW is 100 GB/s. So the
entry_base_unit should be changed from 1000 to 1024 given the comment notes
it's 16GB/s for .latency_bandwidth.

Fixes: 882877fc359d ("hw/pci-bridge/cxl-upstream: Add a CDAT table access DOE")
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Fan Ni <fan.ni@samsung.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>


  Commit: acdc872d8abaa12de75722a0ed9a1e2fcdbe2452
      
https://github.com/qemu/qemu/commit/acdc872d8abaa12de75722a0ed9a1e2fcdbe2452
  Author: Fan Ni <fan.ni@samsung.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M include/hw/cxl/cxl_device.h

  Log Message:
  -----------
  hw/cxl/cxl_device: Replace magic number in CXLError definition

Replace the magic number 32 with CXL_RAS_ERR_HEADER_NUM for better code
readability and maintainability.

Signed-off-by: Fan Ni <fan.ni@samsung.com>
Reviewed-by: Davidlohr Bueso <dave@stgolabs.net>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>


  Commit: 6ff359196d576606a1434145cf05f967a05c08fa
      
https://github.com/qemu/qemu/commit/6ff359196d576606a1434145cf05f967a05c08fa
  Author: Li Zhijian <lizhijian@cn.fujitsu.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M docs/system/devices/cxl.rst

  Log Message:
  -----------
  docs/cxl: Change to lowercase as others

Using the same style as elsewhere for topology / topo

Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
Link: 
https://lore.kernel.org/r/20230519085802.2106900-2-lizhijian@cn.fujitsu.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Fan Ni <fan.ni@samsung.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>


  Commit: de5bbfc602ef1b9b79c494a914c6083a1a23cca2
      
https://github.com/qemu/qemu/commit/de5bbfc602ef1b9b79c494a914c6083a1a23cca2
  Author: Dmitry Frolov <frolov@swemel.ru>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M include/hw/cxl/cxl.h

  Log Message:
  -----------
  hw/cxl: Fix out of bound array access

According to cxl_interleave_ways_enc(), fw->num_targets is allowed to be up
to 16. This also corresponds to CXL r3.0 spec. So, the fw->target_hbs[]
array is iterated from 0 to 15. But it is statically declared of length 8.
Thus, out of bound array access may occur.

Fixes: c28db9e000 ("hw/pci-bridge: Make PCIe and CXL PXB Devices inherit from 
TYPE_PXB_DEV")
Signed-off-by: Dmitry Frolov <frolov@swemel.ru>
Reviewed-by: Michael Tokarev <mjt@tls.msk.ru>
Link: https://lore.kernel.org/r/20230913101055.754709-1-frolov@swemel.ru
Cc: qemu-stable@nongnu.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>


  Commit: 9da60248d1ca8e155f5c1279b4e55d70cad99341
      
https://github.com/qemu/qemu/commit/9da60248d1ca8e155f5c1279b4e55d70cad99341
  Author: Jonathan Cameron <Jonathan.Cameron@huawei.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M hw/mem/cxl_type3.c
    M hw/mem/cxl_type3_stubs.c

  Log Message:
  -----------
  hw/mem/cxl_type3: Add missing copyright and license notice

This has been missing from the start. Assume it should match
with cxl/cxl-component-utils.c as both were part of early
postings from Ben.

Reported-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Acked-by: Dave Jiang <dave.jiang@intel.com>
Acked-by: Ira Weiny <ira.weiny@intel.com>
Reviewed-by: Fan Ni <fan.ni@samsung.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>


  Commit: 6ee07cfbdfe4f2b1742a2143021f66e13bd738b0
      
https://github.com/qemu/qemu/commit/6ee07cfbdfe4f2b1742a2143021f66e13bd738b0
  Author: Jonathan Cameron <Jonathan.Cameron@huawei.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M docs/system/devices/cxl.rst

  Log Message:
  -----------
  docs/cxl: Cleanout some more aarch64 examples.

These crossed with the previous fix to get rid of examples
using aarch64 for which support is not yet upstream.

Reviewed-by: Fan Ni <fan.ni@samsung.com>
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1892
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>


  Commit: fa365d05b7050163a53d16aa2d8efb96834e8725
      
https://github.com/qemu/qemu/commit/fa365d05b7050163a53d16aa2d8efb96834e8725
  Author: Akihiko Odaki <akihiko.odaki@daynix.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M docs/devel/reset.rst

  Log Message:
  -----------
  docs/devel/reset.rst: Correct function names

resettable_class_set_parent_phases() was mistakenly called
resettable_class_set_parent_reset_phases() in some places.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>


  Commit: 416af8564f4a30f207269307616a9e0b3f3c6570
      
https://github.com/qemu/qemu/commit/416af8564f4a30f207269307616a9e0b3f3c6570
  Author: Stefan Hajnoczi <stefanha@redhat.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M backends/cryptodev.c
    M block/block-backend.c
    M block/file-posix.c
    M block/throttle-groups.c
    M block/throttle.c
    M fsdev/qemu-fsdev-throttle.c
    M fsdev/qemu-fsdev-throttle.h
    M hw/9pfs/cofile.c
    M include/block/throttle-groups.h
    M include/qemu/throttle.h
    A tests/qemu-iotests/tests/file-io-error
    A tests/qemu-iotests/tests/file-io-error.out
    M tests/unit/test-throttle.c
    M util/throttle.c

  Log Message:
  -----------
  Merge tag 'pull-block-2023-09-01' of https://gitlab.com/hreitz/qemu into 
staging

Block patches

- Fix for file-posix's zoning code crashing on I/O errors
- Throttling refactoring

# -----BEGIN PGP SIGNATURE-----
#
# iQJGBAABCAAwFiEEy2LXoO44KeRfAE00ofpA0JgBnN8FAmTxnMISHGhyZWl0ekBy
# ZWRoYXQuY29tAAoJEKH6QNCYAZzfYkUP+gMG9hhzvgjj/tw9rEBQjciihzcQmqQJ
# 2Mm37RH2jj5bnnTdaTbMkcRRwVhncYSCwK9q5EYVbZmU9C/v4YJmsSEQlcl7wVou
# hbPUv6NHaBrJZX9nxNSa2RHui6pZMLKa/D0rJVB7NjYBrrRtiPo7kiLVQYjYXa2g
# kcCCfY4t3Z2RxOP31mMXRjYlhJE9bIuZdTEndrKme8KS2JGPZEJ9xjkoW1tj96EX
# oc/Cg2vk7AEtsFYA0bcD8fTFkBDJEwyYl3usu7Tk24pvH16jk7wFSqRVSsDMfnER
# tG8X3mHLIY0hbSkpzdHJdXINvZ6FWpQb0CGzIKr+pMiuWVdWr1HglBr0m4pVF+Y4
# A6AI6VX2JJgtacypoDyCZC9mzs1jIdeiwq9v5dyuikJ6ivTwEEoeoSLnLTN3AjXn
# 0mtQYzgCg5Gd6+rTo7XjSO9SSlbaVrDl/B2eXle6tmIFT5k+86fh0hc+zTmP8Rkw
# Knbc+5Le95wlMrOUNx2GhXrTGwX510hLxKboho/LITxtAzqvXnEJKrYbnkm3WPnw
# wfHnR5VQH1NKEpiH/p33og6OV/vu9e7vgp0ZNZV136SnzC90C1zMUwg2simJW701
# 34EtN0XBX8XBKrxfe7KscV9kRE8wrWWJVbhp+WOcQEomGI8uraxzWqDIk/v7NZXv
# m4XBscaB+Iri
# =oKgk
# -----END PGP SIGNATURE-----
# gpg: Signature made Fri 01 Sep 2023 04:11:46 EDT
# gpg:                using RSA key CB62D7A0EE3829E45F004D34A1FA40D098019CDF
# gpg:                issuer "hreitz@redhat.com"
# gpg: Good signature from "Hanna Reitz <hreitz@redhat.com>" [unknown]
# gpg: WARNING: The key's User ID is not certified with a trusted signature!
# gpg:          There is no indication that the signature belongs to the owner.
# Primary key fingerprint: CB62 D7A0 EE38 29E4 5F00  4D34 A1FA 40D0 9801 9CDF

* tag 'pull-block-2023-09-01' of https://gitlab.com/hreitz/qemu:
  tests/file-io-error: New test
  file-posix: Simplify raw_co_prw's 'out' zone code
  file-posix: Fix zone update in I/O error path
  file-posix: Check bs->bl.zoned for zone info
  file-posix: Clear bs->bl.zoned on error
  block/throttle-groups: Use ThrottleDirection instread of bool is_write
  fsdev: Use ThrottleDirection instread of bool is_write
  throttle: use THROTTLE_MAX/ARRAY_SIZE for hard code
  throttle: use enum ThrottleDirection instead of bool is_write
  cryptodev: use NULL throttle timer cb for read direction
  test-throttle: test read only and write only
  throttle: support read-only and write-only
  test-throttle: use enum ThrottleDirection
  throttle: introduce enum ThrottleDirection

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>


  Commit: f2df7e7705e832a8a65422c227e9ef1bdac226c1
      
https://github.com/qemu/qemu/commit/f2df7e7705e832a8a65422c227e9ef1bdac226c1
  Author: Stefan Hajnoczi <stefanha@redhat.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M .gitlab-ci.d/base.yml
    M .gitlab-ci.d/cirrus.yml
    M .gitlab-ci.d/cirrus/build.yml
    M python/qemu/machine/machine.py
    M tests/avocado/avocado_qemu/__init__.py
    M tests/avocado/boot_linux_console.py
    M tests/avocado/machine_mips_malta.py
    M tests/avocado/replay_kernel.py
    M tests/avocado/tuxrun_baselines.py
    M tests/docker/dockerfiles/debian-amd64-cross.docker
    M tests/docker/dockerfiles/debian-amd64.docker
    M tests/docker/dockerfiles/debian-arm64-cross.docker
    M tests/docker/dockerfiles/debian-armhf-cross.docker
    M tests/docker/dockerfiles/debian-loongarch-cross.docker
    M tests/docker/dockerfiles/debian-ppc64el-cross.docker
    M tests/docker/dockerfiles/debian-s390x-cross.docker
    M tests/lcitool/libvirt-ci
    M tests/lcitool/refresh
    M tests/qtest/libqtest.c
    M tests/qtest/microbit-test.c

  Log Message:
  -----------
  Merge tag 'pull-testing-200923-1' of https://gitlab.com/stsquad/qemu into 
staging

testing updates:

  - update most Debian to bookworm
  - fix some typos
  - update loongarch toolchain
  - fix microbit test
  - handle GitLab/Cirrus timeout discrepancy
  - improve avocado console handling
  - disable mips avocado images pending bugfix

# -----BEGIN PGP SIGNATURE-----
#
# iQEzBAABCgAdFiEEZoWumedRZ7yvyN81+9DbCVqeKkQFAmUK/RcACgkQ+9DbCVqe
# KkQtYwf/Qu0eQZ8ZM4PsKcW07O76qn3cOphTFeZM01hICeiiMGRnwBVtBGIsdx1r
# MaXd7o35tnJRMbUnlGCFUDMWDZaafQIKIlsFwAGTMqgQ+kv+GB22MHpNySRZ9pXl
# ed1tOyz8maId4b3ECvGJqJSNOBB1P3tw7rdbFEhuSyXFZKJc79w1nCYjJyEtNpST
# CT7AYXJiVLiB4jSB7XH9XrkVTvw4k+PjzmLUFRJoGlik0O7xj2i7zfGO5+VxCm9t
# VluEcrlQ5w3JNL69yRhqTtrHAC7bBKqUOaF1bEA//ELNNQn2heuxDeHlDAgOtpV/
# VkShHgWJAwGLishFlv/+tmp5fbU5CQ==
# =3Lsz
# -----END PGP SIGNATURE-----
# gpg: Signature made Wed 20 Sep 2023 10:09:27 EDT
# gpg:                using RSA key 6685AE99E75167BCAFC8DF35FBD0DB095A9E2A44
# gpg: Good signature from "Alex Bennée (Master Work Key) 
<alex.bennee@linaro.org>" [unknown]
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg:          There is no indication that the signature belongs to the owner.
# Primary key fingerprint: 6685 AE99 E751 67BC AFC8  DF35 FBD0 DB09 5A9E 2A44

* tag 'pull-testing-200923-1' of https://gitlab.com/stsquad/qemu:
  tests/avocado: Disable MIPS Malta tests due to GitLab issue #1884
  tests/avocado: Fix console data loss
  gitlab: make Cirrus CI jobs gating
  gitlab: make Cirrus CI timeout explicit
  qtest: kill orphaned qtest QEMU processes on FreeBSD
  microbit: add missing qtest_quit() call
  tests/docker: Update docker-loongarch-cross toolchain
  gitlab: fix typo/spelling in comments
  tests: update most Debian images to Bookworm

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>


  Commit: 3da71a2111de9f0bc475f8292d009265ab34365f
      
https://github.com/qemu/qemu/commit/3da71a2111de9f0bc475f8292d009265ab34365f
  Author: Stefan Hajnoczi <stefanha@redhat.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M block.c
    M block/blklogwrites.c
    M block/blkverify.c
    M block/block-backend.c
    M block/copy-before-write.c
    M block/crypto.c
    M block/graph-lock.c
    M block/io.c
    M block/mirror.c
    M block/preallocate.c
    M block/qcow.c
    M block/qcow2.c
    M block/quorum.c
    M block/replication.c
    M block/snapshot.c
    M block/stream.c
    M block/vmdk.c
    M blockdev.c
    M blockjob.c
    M hw/nvme/ctrl.c
    M include/block/aio.h
    M include/block/block-common.h
    M include/block/block-global-state.h
    M include/block/block-io.h
    M include/block/block_int-common.h
    M include/block/block_int-global-state.h
    M include/sysemu/block-backend-global-state.h
    M qapi/block-core.json
    M qemu-img.c
    M scripts/block-coroutine-wrapper.py
    M softmmu/dma-helpers.c
    M tests/qemu-iotests/051.pc.out
    M tests/qemu-iotests/122.out
    M tests/qemu-iotests/146.out
    M tests/qemu-iotests/154.out
    M tests/qemu-iotests/179.out
    M tests/qemu-iotests/209.out
    M tests/qemu-iotests/221.out
    M tests/qemu-iotests/223.out
    M tests/qemu-iotests/241.out
    M tests/qemu-iotests/244.out
    M tests/qemu-iotests/252.out
    M tests/qemu-iotests/253.out
    M tests/qemu-iotests/274.out
    M tests/qemu-iotests/tests/nbd-qemu-allocation.out
    M tests/qemu-iotests/tests/qemu-img-bitmaps.out
    M tests/unit/test-bdrv-drain.c
    M tests/unit/test-bdrv-graph-mod.c
    M tests/unit/test-block-iothread.c
    M util/thread-pool.c

  Log Message:
  -----------
  Merge tag 'for-upstream' of https://repo.or.cz/qemu/kevin into staging

Block layer patches

- Graph locking part 4 (node management)
- qemu-img map: report compressed data blocks
- block-backend: process I/O in the current AioContext

# -----BEGIN PGP SIGNATURE-----
#
# iQJFBAABCAAvFiEE3D3rFZqa+V09dFb+fwmycsiPL9YFAmULHnURHGt3b2xmQHJl
# ZGhhdC5jb20ACgkQfwmycsiPL9aB5hAAqH8To7WIUtg1rj1PY809ck78ghm18PKg
# TNdN7IbrXQghX5foh2VgPwVVl+JaW2CSrJYWQcAO6AbvFduNIi9iKzI6RT0xKXpb
# b8oQXS7zntFzwBv8ohOU5NSVJOgVmNP4h5qJIMmXgB9ZcLFG40zggVH2qQT7guUf
# 9MAc81kI/d5vvSHY0ZjdHjNOgwG4q1j8yytL7OFqWUfB8sXloUCA9lT7w4jIYD8L
# v2StUOLWB01Zts2o8SCNaFxuajs6wUee8b/DM1cyPyLy4KtOdXvLKhq2NlXpLo2i
# aZFr4PtizTVwrQZIJttA9jqM+QCsDOsiSat3BLNNsKUaCWHZB0rOGLCzMCtisyOo
# 4PzuL4UI21ik2zieO1qVM+Thqvw16kHtp6dD9pGk4X4ogGreGYEIxzBl79luR+AV
# NCRizoeFWTHKymS1tSoKrWT9ZNHcLmwemO6Tt1rMYk9jV3T4uY5e1NwxaUavEfsX
# f8dLfQjhNiySOoDknT1OSerBOVdTXURS2ri5H3GZxrxvJ4jOeFkn52C8r3YlZ3Wp
# Cr9LCUJZeXgwY+Q1JQ3D4VLY8aZ83txpw6XKEy0eTEv5wxkBj5LWhXx7hNb5F3lg
# bqaRYijVJn+P82wVxlftIzMfNeVBFHzFE90taPV5grJjr8lgrGBFmD7Puc97kfDX
# oTDBwRxJeew=
# =qTNA
# -----END PGP SIGNATURE-----
# gpg: Signature made Wed 20 Sep 2023 12:31:49 EDT
# gpg:                using RSA key DC3DEB159A9AF95D3D7456FE7F09B272C88F2FD6
# gpg:                issuer "kwolf@redhat.com"
# gpg: Good signature from "Kevin Wolf <kwolf@redhat.com>" [full]
# Primary key fingerprint: DC3D EB15 9A9A F95D 3D74  56FE 7F09 B272 C88F 2FD6

* tag 'for-upstream' of https://repo.or.cz/qemu/kevin: (28 commits)
  block: mark aio_poll as non-coroutine
  block-backend: process zoned requests in the current AioContext
  block-backend: process I/O in the current AioContext
  test-bdrv-drain: avoid race with BH in IOThread drain test
  block: remove AIOCBInfo->get_aio_context()
  qemu-img: map: report compressed data blocks
  block: add BDRV_BLOCK_COMPRESSED flag for bdrv_block_status()
  block: Mark bdrv_add/del_child() and caller GRAPH_WRLOCK
  block: Mark bdrv_unref_child() GRAPH_WRLOCK
  block: Mark bdrv_root_unref_child() GRAPH_WRLOCK
  block: Take graph rdlock in bdrv_change_aio_context()
  block: Take graph rdlock in bdrv_drop_intermediate()
  block: Mark bdrv_parent_cb_change_media() GRAPH_RDLOCK
  block: Mark bdrv_child_perm() GRAPH_RDLOCK
  block: Mark bdrv_get_cumulative_perm() and callers GRAPH_RDLOCK
  block: Mark bdrv_parent_perms_conflict() and callers GRAPH_RDLOCK
  block: Mark bdrv_attach_child() GRAPH_WRLOCK
  block: Call transaction callbacks with lock held
  block: Mark bdrv_attach_child_common() GRAPH_WRLOCK
  block: Mark bdrv_replace_child_tran() GRAPH_WRLOCK
  ...

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>


  Commit: c4c124f331a594641ad0b1b4878bbea3d53dd018
      
https://github.com/qemu/qemu/commit/c4c124f331a594641ad0b1b4878bbea3d53dd018
  Author: Stefan Hajnoczi <stefanha@redhat.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M block/parallels.c
    M block/parallels.h
    M tests/qemu-iotests/131
    M tests/qemu-iotests/131.out
    M tests/qemu-iotests/tests/parallels-checks
    M tests/qemu-iotests/tests/parallels-checks.out

  Log Message:
  -----------
  Merge tag 'pull-parallels-2023-09-20-v2' of 
https://src.openvz.org/scm/~den/qemu into staging

Parallels format driver:
* regular calculation of cluster used bitmap of the image file
* cluster allocation on the base of that bitmap (effectively allocation of
  new clusters could be done inside the image if that offset space is unused)
* support of DISCARD and WRITE_ZEROES operations
* image check bugfixes
* unit tests fixes
* unit tests covering new functionality

# -----BEGIN PGP SIGNATURE-----
#
# iQHDBAABCgAtFiEE9vE2f3B8+RUZInytPzClrpN3nJ8FAmUL7u4PHGRlbkBvcGVu
# dnoub3JnAAoJED8wpa6Td5yfdaUL/RW+nOYlFNXlrjOVeasgGLkAKrKBja8O3/As
# aRo0DLZKITK8qbLEBAeTDyCpN9LLwy7WdUR1uT4V54FzE5zZP6HAdBEoj9AsaW/9
# wsTF+oyKeqmXw2y348t+lclp8eREHySecwiVhaxTpG9J2TQfDP/D2yhzRU88P7nH
# rbVZjOF2yOthzW6Y8h8e/LMd8rfODO053tYaMEBngjirBZnhESH3mAm1WB5mYs+q
# 2++4XQZcFFKWFp952MaEDphpwYdh80E65g4vth80JrDTyyMH0KZE9cQqbFb5UgZv
# aV1/DCaH0WTSDbjCaI/SrmqKXrO0Mkd/y/ShoQpTu7qJO/FbaClA58f+KfGE7VBd
# Fa5pM+JN12UVNxnNIF/Oe+wAiVUJYKtLaDMKibj+MUjM5sE/ZRLqzFLktDbQT0kS
# Qvs1u8HTvirJpvxOkJv4cEuNw07JERCzpl/qPF6XkS9rcKeIormhftaaRmjILxS/
# KEmDVNj63g1D0XDY3WTF7LHLNjtXpw==
# =FUWj
# -----END PGP SIGNATURE-----
# gpg: Signature made Thu 21 Sep 2023 03:21:18 EDT
# gpg:                using RSA key F6F1367F707CF91519227CAD3F30A5AE93779C9F
# gpg:                issuer "den@openvz.org"
# gpg: Good signature from "Denis V. Lunev <den@openvz.org>" [unknown]
# gpg: WARNING: The key's User ID is not certified with a trusted signature!
# gpg:          There is no indication that the signature belongs to the owner.
# Primary key fingerprint: F6F1 367F 707C F915 1922  7CAD 3F30 A5AE 9377 9C9F

* tag 'pull-parallels-2023-09-20-v2' of https://src.openvz.org/scm/~den/qemu: 
(22 commits)
  tests: extend test 131 to cover availability of the write-zeroes
  parallels: naive implementation of parallels_co_pwrite_zeroes
  tests: extend test 131 to cover availability of the discard operation
  parallels: naive implementation of parallels_co_pdiscard
  parallels: improve readability of allocate_clusters
  parallels: naive implementation of allocate_clusters with used bitmap
  parallels: update used bitmap in allocate_cluster
  parallels: accept multiple clusters in mark_used()
  tests: test self-cure of parallels image with duplicated clusters
  tests: fix broken deduplication check in parallels format test
  parallels: collect bitmap of used clusters at open
  parallels: add test which will validate data_off fixes through repair
  parallels: fix broken parallels_check_data_off()
  tests: ensure that image validation will not cure the corruption
  parallels: create mark_used() helper which sets bit in used bitmap
  parallels: refactor path when we need to re-check image in parallels_open
  parallels: return earlier from parallels_open() function on error
  parallels: return earler in fail_format branch in parallels_open()
  parallels: invent parallels_opts_prealloc() helper to parse prealloc opts
  parallels: fix memory leak in parallels_open()
  ...

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>


  Commit: b55e4b9c0525560577384adfc6d30eb0daa8d7be
      
https://github.com/qemu/qemu/commit/b55e4b9c0525560577384adfc6d30eb0daa8d7be
  Author: Stefan Hajnoczi <stefanha@redhat.com>
  Date:   2023-09-21 (Thu, 21 Sep 2023)

  Changed paths:
    M bsd-user/errno_defs.h
    M bsd-user/freebsd/target_os_siginfo.h
    M bsd-user/freebsd/target_os_stack.h
    M bsd-user/freebsd/target_os_user.h
    M bsd-user/qemu.h
    M bsd-user/signal-common.h
    M bsd-user/signal.c
    M docs/devel/reset.rst
    M docs/system/devices/cxl.rst
    M host/include/i386/host/cpuinfo.h
    M host/include/ppc/host/cpuinfo.h
    M hw/acpi/aml-build.c
    M hw/acpi/hmat.c
    M hw/acpi/nvdimm.c
    M hw/block/hd-geometry.c
    M hw/block/pflash_cfi01.c
    M hw/char/cadence_uart.c
    M hw/char/imx_serial.c
    M hw/char/serial.c
    M hw/core/generic-loader.c
    M hw/core/machine.c
    M hw/core/qdev-properties-system.c
    M hw/cpu/a15mpcore.c
    M hw/cxl/cxl-events.c
    M hw/cxl/cxl-host.c
    M hw/cxl/cxl-mailbox-utils.c
    M hw/dma/omap_dma.c
    M hw/i386/acpi-build.c
    M hw/i386/amd_iommu.c
    M hw/i386/intel_iommu.c
    M hw/i386/kvm/xen_xenstore.c
    M hw/i386/kvm/xenstore_impl.c
    M hw/i386/pc.c
    M hw/input/hid.c
    M hw/input/tsc2005.c
    M hw/intc/loongarch_extioi.c
    M hw/intc/loongson_liointc.c
    M hw/intc/omap_intc.c
    M hw/intc/pnv_xive.c
    M hw/intc/spapr_xive.c
    M hw/intc/spapr_xive_kvm.c
    M hw/intc/xive.c
    M hw/intc/xive2.c
    M hw/ipmi/ipmi_bmc_extern.c
    M hw/mem/cxl_type3.c
    M hw/mem/cxl_type3_stubs.c
    M hw/misc/imx7_ccm.c
    M hw/misc/mac_via.c
    M hw/misc/stm32f2xx_syscfg.c
    M hw/misc/trace-events
    M hw/misc/zynq_slcr.c
    M hw/net/cadence_gem.c
    M hw/net/dp8393x.c
    M hw/net/e1000_regs.h
    M hw/net/e1000x_regs.h
    M hw/net/fsl_etsec/rings.c
    M hw/net/igb_regs.h
    M hw/net/mcf_fec.c
    M hw/net/rocker/rocker_fp.c
    M hw/net/rtl8139.c
    M hw/net/smc91c111.c
    M hw/net/sungem.c
    M hw/net/sunhme.c
    M hw/net/virtio-net.c
    M hw/net/vmxnet3.c
    M hw/net/vmxnet3.h
    M hw/nvme/ctrl.c
    M hw/nvram/eeprom_at24c.c
    M hw/nvram/fw_cfg.c
    M hw/pci-bridge/cxl_downstream.c
    M hw/pci-bridge/cxl_upstream.c
    M hw/pci-bridge/pci_expander_bridge.c
    M hw/pci-host/bonito.c
    M hw/pci-host/designware.c
    M hw/pci-host/dino.c
    M hw/pci-host/gpex-acpi.c
    M hw/pci-host/gt64120.c
    M hw/pci-host/pnv_phb.c
    M hw/pci-host/pnv_phb3.c
    M hw/pci-host/pnv_phb3_msi.c
    M hw/pci-host/pnv_phb4.c
    M hw/pci/pcie_aer.c
    M hw/pci/shpc.c
    M hw/ppc/ppc.c
    M hw/ppc/prep_systemio.c
    M hw/ppc/spapr.c
    M hw/ppc/spapr_hcall.c
    M hw/ppc/spapr_nvdimm.c
    M hw/ppc/spapr_pci_vfio.c
    M hw/rtc/exynos4210_rtc.c
    M hw/rx/rx62n.c
    M hw/scsi/lsi53c895a.c
    M hw/scsi/mfi.h
    M hw/sh4/sh7750_regs.h
    M hw/smbios/smbios.c
    M hw/ssi/xilinx_spips.c
    M hw/ssi/xlnx-versal-ospi.c
    M hw/timer/etraxfs_timer.c
    M hw/timer/renesas_tmr.c
    M hw/tpm/tpm_tis.h
    M hw/tpm/tpm_tis_common.c
    M hw/tpm/tpm_tis_i2c.c
    M hw/tpm/tpm_tis_isa.c
    M hw/tpm/tpm_tis_sysbus.c
    M hw/virtio/virtio-crypto.c
    M hw/virtio/virtio-mem.c
    M hw/virtio/virtio.c
    M include/hw/cxl/cxl.h
    M include/hw/cxl/cxl_device.h
    M include/hw/i386/topology.h
    M include/hw/ppc/openpic.h
    M include/hw/ppc/spapr.h
    M subprojects/berkeley-softfloat-3.wrap
    M subprojects/berkeley-testfloat-3.wrap
    M subprojects/slirp.wrap
    M target/i386/cpu.c
    M target/i386/cpu.h
    M target/i386/kvm/kvm.c
    M target/i386/kvm/xen-emu.c
    M target/i386/machine.c
    M target/i386/tcg/translate.c
    M target/ppc/cpu-models.h
    M target/ppc/cpu.h
    M target/ppc/cpu_init.c
    M target/ppc/excp_helper.c
    M target/ppc/power8-pmu-regs.c.inc
    M target/ppc/translate/vmx-impl.c.inc
    M tests/tcg/i386/system/boot.S
    M tests/tcg/i386/x86.csv

  Log Message:
  -----------
  Merge tag 'pull-trivial-patches' of https://gitlab.com/mjt0k/qemu into staging

trivial patches for 2023-09-21

# -----BEGIN PGP SIGNATURE-----
#
# iQFDBAABCAAtFiEEe3O61ovnosKJMUsicBtPaxppPlkFAmUL/84PHG1qdEB0bHMu
# bXNrLnJ1AAoJEHAbT2saaT5Zlz4H/iI7Rhmsw6E46WhQPz1oly8p5I3m6Tcxs5B3
# nagfaJC0EYjKyMZC1bsATJwRj8robCb5SDhZeUfudt1ytZYFfH3ulvlUrGYrMQRW
# YEfBFIDLexqrLpsykc6ovl2NB5BXQsK3n6NNbnYE1OxQt8Cy4kNQi1bStrZ8JzDE
# lIxvWZdwoQJ2K0VRDGRLrL6XG80qeONSXEoppXxJlfhk1Ar3Ruhijn3REzfQybvV
# 1zIa1/h80fSLuwOGSPuOLqVCt6JzTuOOrfYc9F+sjcmIQWHLECy6CwTHEbb921Tw
# 9HD6ah4rvkxoN2NWSPo/kM6tNW/pyOiYwYldx5rfWcQ5mhScuO8=
# =u6P0
# -----END PGP SIGNATURE-----
# gpg: Signature made Thu 21 Sep 2023 04:33:18 EDT
# gpg:                using RSA key 7B73BAD68BE7A2C289314B22701B4F6B1A693E59
# gpg:                issuer "mjt@tls.msk.ru"
# gpg: Good signature from "Michael Tokarev <mjt@tls.msk.ru>" [full]
# gpg:                 aka "Michael Tokarev <mjt@corpit.ru>" [full]
# gpg:                 aka "Michael Tokarev <mjt@debian.org>" [full]
# Primary key fingerprint: 6EE1 95D1 886E 8FFB 810D  4324 457C E0A0 8044 65C5
#      Subkey fingerprint: 7B73 BAD6 8BE7 A2C2 8931  4B22 701B 4F6B 1A69 3E59

* tag 'pull-trivial-patches' of https://gitlab.com/mjt0k/qemu:
  docs/devel/reset.rst: Correct function names
  docs/cxl: Cleanout some more aarch64 examples.
  hw/mem/cxl_type3: Add missing copyright and license notice
  hw/cxl: Fix out of bound array access
  docs/cxl: Change to lowercase as others
  hw/cxl/cxl_device: Replace magic number in CXLError definition
  hw/pci-bridge/cxl_upstream: Fix bandwidth entry base unit for SSLBIS
  hw/cxl: Fix CFMW config memory leak
  hw/i386/pc: fix code comment on cumulative flash size
  subprojects: Use the correct .git suffix in the repository URLs
  hw/other: spelling fixes
  hw/tpm: spelling fixes
  hw/pci: spelling fixes
  hw/net: spelling fixes
  i386: spelling fixes
  bsd-user: spelling fixes
  ppc: spelling fixes

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>


Compare: https://github.com/qemu/qemu/compare/55394dcbec8f...b55e4b9c0525



reply via email to

[Prev in Thread] Current Thread [Next in Thread]