qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 0fcd57: qga/vss-win32: fix warning for clang+


From: Richard Henderson
Subject: [Qemu-commits] [qemu/qemu] 0fcd57: qga/vss-win32: fix warning for clang++-15
Date: Mon, 24 Apr 2023 03:27:18 -0700

  Branch: refs/heads/staging
  Home:   https://github.com/qemu/qemu
  Commit: 0fcd574b025fccdf14d5140687cafe2bc30b634f
      
https://github.com/qemu/qemu/commit/0fcd574b025fccdf14d5140687cafe2bc30b634f
  Author: Pierrick Bouvier <pierrick.bouvier@linaro.org>
  Date:   2023-03-22 (Wed, 22 Mar 2023)

  Changed paths:
    M qga/vss-win32/install.cpp

  Log Message:
  -----------
  qga/vss-win32: fix warning for clang++-15

Reported when compiling with clang-windows-arm64.

../qga/vss-win32/install.cpp:537:9: error: variable 'hr' is used uninitialized 
whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized]
    if (!(ControlService(service, SERVICE_CONTROL_STOP, NULL))) {
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../qga/vss-win32/install.cpp:545:12: note: uninitialized use occurs here
    return hr;
           ^~

Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Fixes: 917ebcb170 ("qga-win: Fix QGA VSS Provider service stop failure")
Reviewed-by: Konstantin Kostiuk <kkostiuk@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Kostiantyn Kostiuk <kostyanf14@live.com>


  Commit: f75e4f2234e7339c16c1dba048bf131a2a948f84
      
https://github.com/qemu/qemu/commit/f75e4f2234e7339c16c1dba048bf131a2a948f84
  Author: David Woodhouse <dwmw@amazon.co.uk>
  Date:   2023-03-23 (Thu, 23 Mar 2023)

  Changed paths:
    M accel/xen/xen-all.c

  Log Message:
  -----------
  accel/xen: Fix DM state change notification in dm_restrict mode

When dm_restrict is set, QEMU isn't permitted to update the XenStore node
to indicate its running status. Previously, the xs_write() call would fail
but the failure was ignored.

However, in refactoring to allow for emulated XenStore operations, a new
call to xs_open() was added. That one didn't fail gracefully, causing a
fatal error when running in dm_restrict mode.

Partially revert the offending patch, removing the additional call to
xs_open() because the global 'xenstore' variable is still available; it
just needs to be used with qemu_xen_xs_write() now instead of directly
with the xs_write() libxenstore function.

Also make the whole thing conditional on !xen_domid_restrict. There's no
point even registering the state change handler to attempt to update the
XenStore node when we know it's destined to fail.

Fixes: ba2a92db1ff6 ("hw/xen: Add xenstore operations to allow redirection to 
internal emulation")
Reported-by: Jason Andryuk <jandryuk@gmail.com>
Co-developed-by: Jason Andryuk <jandryuk@gmail.com>
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
Tested-by: Jason Andryuk <jandryuk@gmail.com>
Message-Id: <1f141995bb61af32c2867ef5559e253f39b0949c.camel@infradead.org>
Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>


  Commit: 0030b244a7dc8411b534854167c62817511c5f0e
      
https://github.com/qemu/qemu/commit/0030b244a7dc8411b534854167c62817511c5f0e
  Author: Yeqi Fu <fufuyqqqqqq@gmail.com>
  Date:   2023-03-24 (Fri, 24 Mar 2023)

  Changed paths:
    M hw/ide/cmd646.c
    M hw/ide/core.c
    M hw/ide/microdrive.c
    M include/hw/ide/internal.h

  Log Message:
  -----------
  hw/ide: replace TABs with space

Bring the block files in line with the QEMU coding style, with spaces
for indentation. This patch partially resolves the issue 371.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/371
Signed-off-by: Yeqi Fu <fufuyqqqqqq@gmail.com>
Message-Id: <20230315043229.62100-1-fufuyqqqqqq@gmail.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: d091b5b442ea0b28bea2d108dad5dfe1ee2ac7cc
      
https://github.com/qemu/qemu/commit/d091b5b442ea0b28bea2d108dad5dfe1ee2ac7cc
  Author: Yeqi Fu <fufuyqqqqqq@gmail.com>
  Date:   2023-03-24 (Fri, 24 Mar 2023)

  Changed paths:
    M hw/block/fdc.c
    M hw/block/nand.c
    M hw/block/onenand.c
    M hw/block/tc58128.c
    M include/hw/block/flash.h

  Log Message:
  -----------
  hw/block: replace TABs with space

Bring the block files in line with the QEMU coding style, with spaces
for indentation. This patch partially resolves the issue 371.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/371
Signed-off-by: Yeqi Fu <fufuyqqqqqq@gmail.com>
Message-Id: <20230314095001.13801-1-fufuyqqqqqq@gmail.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: f79283fdb8efca0cd6e818bebad12f367e83f6e6
      
https://github.com/qemu/qemu/commit/f79283fdb8efca0cd6e818bebad12f367e83f6e6
  Author: Cédric Le Goater <clg@redhat.com>
  Date:   2023-03-24 (Fri, 24 Mar 2023)

  Changed paths:
    M target/s390x/s390x-internal.h

  Log Message:
  -----------
  target/s390x: Fix float_comp_to_cc() prototype

GCC13 reports an error :

../target/s390x/tcg/fpu_helper.c:123:5: error: conflicting types for 
‘float_comp_to_cc’ due to enum/integer mismatch; have ‘int(CPUS390XState *, 
FloatRelation)’ {aka ‘int(struct CPUArchState *, FloatRelation)’} 
[-Werror=enum-int-mismatch]

  123 | int float_comp_to_cc(CPUS390XState *env, FloatRelation float_compare)
      |     ^~~~~~~~~~~~~~~~
In file included from ../target/s390x/tcg/fpu_helper.c:23:
../target/s390x/s390x-internal.h:302:5: note: previous declaration of 
‘float_comp_to_cc’ with type ‘int(CPUS390XState *, int)’ {aka ‘int(struct 
CPUArchState *, int)’}
  302 | int float_comp_to_cc(CPUS390XState *env, int float_compare);
      |     ^~~~~~~~~~~~~~~~

Fixes: 71bfd65c5f ("softfloat: Name compare relation enum")
Signed-off-by: Cédric Le Goater <clg@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20230321161609.716474-3-clg@kaod.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 07e4804fcde1559aaa335fd680487ba308d86fb3
      
https://github.com/qemu/qemu/commit/07e4804fcde1559aaa335fd680487ba308d86fb3
  Author: Cédric Le Goater <clg@redhat.com>
  Date:   2023-03-24 (Fri, 24 Mar 2023)

  Changed paths:
    M target/ppc/excp_helper.c

  Log Message:
  -----------
  target/ppc: Fix helper_pminsn() prototype

GCC13 reports an error:

../target/ppc/excp_helper.c:2625:6: error: conflicting types for 
‘helper_pminsn’ due to enum/integer mismatch; have ‘void(CPUPPCState *, 
powerpc_pm_insn_t)’ {aka ‘void(struct CPUArchState *, powerpc_pm_insn_t)’} 
[-Werror=enum-int-mismatch]
 2625 | void helper_pminsn(CPUPPCState *env, powerpc_pm_insn_t insn)
      |      ^~~~~~~~~~~~~
In file included from /home/legoater/work/qemu/qemu.git/include/qemu/osdep.h:49,
                 from ../target/ppc/excp_helper.c:19:
/home/legoater/work/qemu/qemu.git/include/exec/helper-head.h:23:27: note: 
previous declaration of ‘helper_pminsn’ with type ‘void(CPUArchState *, 
uint32_t)’ {aka ‘void(CPUArchState *, unsigned int)’}
   23 | #define HELPER(name) glue(helper_, name)
      |                           ^~~~~~~

Fixes: 7778a575c7 ("ppc: Add P7/P8 Power Management instructions")
Signed-off-by: Cédric Le Goater <clg@redhat.com>
Reviewed-by: Daniel Henrique Barboza <danielhb413@gmail.com>
Message-Id: <20230321161609.716474-4-clg@kaod.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 7b1bde956096ff13d97ee38b5340d6a977b848dc
      
https://github.com/qemu/qemu/commit/7b1bde956096ff13d97ee38b5340d6a977b848dc
  Author: Marc-André Lureau <marcandre.lureau@redhat.com>
  Date:   2023-03-24 (Fri, 24 Mar 2023)

  Changed paths:
    M ui/spice-core.c

  Log Message:
  -----------
  ui/spice: fix compilation on win32

qemu_close_to_socket() renaming left-over.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1553
Fixes: commit e40283d9a ("ui/spice: fix SOCKET handling regression")
Reported-by: Jintao Yin <nicememory@gmail.com>
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230322075256.2043812-1-marcandre.lureau@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 8f03c08506b5a20e1dd003cf3cd0198c867cfe85
      
https://github.com/qemu/qemu/commit/8f03c08506b5a20e1dd003cf3cd0198c867cfe85
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-03-24 (Fri, 24 Mar 2023)

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

  Log Message:
  -----------
  gitlab-ci: Cover SPICE in the MSYS2 job

Include the mingw-w64-x86_64-spice package so SPICE is covered:

  C compiler for the host machine: cc -m64 -mcx16 (gcc 12.2.0 "cc (Rev10, Built 
by MSYS2 project) 12.2.0")
  ...
  Run-time dependency spice-protocol found: YES 0.14.4
  Run-time dependency spice-server found: YES 0.15.1

In particular this would have helped catching the build issue
reported as https://gitlab.com/qemu-project/qemu/-/issues/1553:

  [1851/5253] Compiling C object libcommon.fa.p/ui_spice-core.c.obj
  FAILED: libcommon.fa.p/ui_spice-core.c.obj
  ../ui/spice-core.c: In function 'watch_remove':
  ../ui/spice-core.c:152:5: error: implicit declaration of function 
'qemu_close_to_socket' [-Werror=implicit-function-declaration]
  152 |     qemu_close_to_socket(watch->fd);
      |     ^~~~~~~~~~~~~~~~~~~~
  ../ui/spice-core.c:152:5: error: nested extern declaration of 
'qemu_close_to_socket' [-Werror=nested-externs]

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20230322135721.61138-2-philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: da80f11efeea451eaa00e347f722d867ed9ac5be
      
https://github.com/qemu/qemu/commit/da80f11efeea451eaa00e347f722d867ed9ac5be
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-03-24 (Fri, 24 Mar 2023)

  Changed paths:
    R .cirrus.yml
    M MAINTAINERS

  Log Message:
  -----------
  cirrus-ci: Remove MSYS2 jobs duplicated with gitlab-ci

- Various developers are reluctant to git Cirrus-CI the permissions
  requested to access their GitHub account.

- When we use the cirrus-run script to trigger Cirrus-CI job from
  GitLab-CI, the GitLab-CI job is restricted to a 1h timeout
  (often not enough).

- Although Cirrus-CI VMs are more powerful than GitLab-CI ones,
  its free plan is limited in 2 concurrent jobs.

- The GitLab-CI MSYS2 jobs are a 1:1 mapping with the Cirrus-CI ones
  (modulo the environment caching).

Reduce the maintenance burden by removing the Cirrus-CI config file,
keeping the GitLab-CI jobs.

Update Yonggang Luo's maintenance file list to the new file, which
use the same environment shell.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20230322135721.61138-3-philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 8635a3a153da3a6712c4ee249c2bf3513cbfdbf7
      
https://github.com/qemu/qemu/commit/8635a3a153da3a6712c4ee249c2bf3513cbfdbf7
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2023-03-24 (Fri, 24 Mar 2023)

  Changed paths:
    M docs/about/deprecated.rst

  Log Message:
  -----------
  Revert "docs/about/deprecated: Deprecate 32-bit arm hosts for system 
emulation"

This reverts commit 1d0a8eba38cdddd028ea02c6e0b68f0a4c9a3cbf.

The commit made the wrong assumption that 64-bit distros are most
common these days on arm devices, but as Liviu Ionescu pointed out,
the recommended OS for the very popular Raspberry Pi boards is still
the 32-bit variant, and thus likely still used by a lot of people:

 https://www.raspberrypi.com/software/operating-systems/

Thus it's likely still a little bit too early to put this host
environment on the deprecation list and we should wait a little
bit longer 'til 64-bit distros are the predominant ones.

Message-Id: <20230317165504.613172-1-thuth@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 670d8c6ebf7a2c425575bbd6fbaeb27d21edd6c6
      
https://github.com/qemu/qemu/commit/670d8c6ebf7a2c425575bbd6fbaeb27d21edd6c6
  Author: David Woodhouse <dwmw@amazon.co.uk>
  Date:   2023-03-24 (Fri, 24 Mar 2023)

  Changed paths:
    M hw/xenpv/xen_machine_pv.c

  Log Message:
  -----------
  hw/xenpv: Initialize Xen backend operations

As the Xen backend operations were abstracted out into a function table to
allow for internally emulated Xen support, we missed the xen_init_pv()
code path which also needs to install the operations for the true Xen
libraries. Add the missing call to setup_xen_backend_ops().

Fixes: b6cacfea0b38 ("hw/xen: Add evtchn operations to allow redirection to 
internal emulation")
Reported-by: Anthony PERARD <anthony.perard@citrix.com>
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
Tested-by: Anthony PERARD <anthony.perard@citrix.com>
Message-Id: <5dfb65342d4502c1ce2f890c97cff20bf25b3860.camel@infradead.org>
Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>


  Commit: a219645ce36db9fd3e574e5ef475cad0457c6264
      
https://github.com/qemu/qemu/commit/a219645ce36db9fd3e574e5ef475cad0457c6264
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-03-24 (Fri, 24 Mar 2023)

  Changed paths:
    M qga/vss-win32/install.cpp

  Log Message:
  -----------
  Merge tag 'qga-pull-2023-03-22' of github.com:kostyanf14/qemu into staging

qga-pull-2023-03-22

# -----BEGIN PGP SIGNATURE-----
#
# iQIzBAABCgAdFiEEwsLBCepDxjwUI+uE711egWG6hOcFAmQbUgoACgkQ711egWG6
# hOe8pw/9Gc3rySQ0mEt45kb5ESpRbwvpkYHEmA4aYmhDhuVHjuWpw1MgL980GTGe
# X2/y1ApcS6GXme4Bb3DbLu1U+N/B9l2yHDYmAMpvtljydcOc0F5KRnwhYFtB6P2L
# nSmOorIteaQmZ/DYnGF3u7KZ08dIOqujZ6QUTDAdR2q7+P/9kW4kuF3/XJHXVA8Q
# f+DQ8dYLSDw/eLPcwM18IdUV3xhTZgvSnADiQ4L3NEexLcrq7ZFYv1S66Q5+dQTK
# xijFSDVWR8+Q6PVBOBz5bP+hrYc+rmjAblk+DT+LkPruNOuBY1y09RPmaKJnvBjo
# hsj7BmcJ3dVPRmADy7gQWaE2F8A1GR4OU79JSCm46BHUMDGm1363gwhvPSeLeQQ9
# 5pqKyRImU3cMF3Re06ZsOX5D02jWz7VSGKWT/JEHnWrX9U5hurnNl20pgiAbKpkv
# k10IUfEufTfQLjz3oNY/At1XFtqg8xVGRS3bhwWoFBrWiUEwVYGEg1AwrtSQ25Tw
# +7j54A3DSvJie5nxYVJAnpZMNQxUVaBkF5PWJ1fRy23UbZZwPT2MSKZDbQPAvl9g
# 7K/rZVDHnBxTA/hvMeoGuxCY/kpkAV0WfiKAi1zzNGdKvxDKlyFJAD07KtfyN5oF
# QH2HQwTu1/gma+hWzSuJi2rhhcEXwojYemLfLMzCK4OBuQj8dLE=
# =uTF5
# -----END PGP SIGNATURE-----
# gpg: Signature made Wed 22 Mar 2023 19:07:54 GMT
# gpg:                using RSA key C2C2C109EA43C63C1423EB84EF5D5E8161BA84E7
# gpg: Good signature from "Kostiantyn Kostiuk (Upstream PR sign) 
<kkostiuk@redhat.com>" [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: C2C2 C109 EA43 C63C 1423  EB84 EF5D 5E81 61BA 84E7

* tag 'qga-pull-2023-03-22' of github.com:kostyanf14/qemu:
  qga/vss-win32: fix warning for clang++-15

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: d82e2e76358dec42ba42b7e54bdc7ae61493fc9a
      
https://github.com/qemu/qemu/commit/d82e2e76358dec42ba42b7e54bdc7ae61493fc9a
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-03-24 (Fri, 24 Mar 2023)

  Changed paths:
    M accel/xen/xen-all.c
    M hw/xenpv/xen_machine_pv.c

  Log Message:
  -----------
  Merge tag 'pull-xen-20230324' of 
https://xenbits.xen.org/git-http/people/aperard/qemu-dm into staging

Xen queue

- fix guest creation when -xen-domid-restrict is used.
- fix Xen PV guest creation.

# -----BEGIN PGP SIGNATURE-----
#
# iQEzBAABCgAdFiEE+AwAYwjiLP2KkueYDPVXL9f7Va8FAmQdubMACgkQDPVXL9f7
# Va/bhQgA75nw4DB5LxIQLe+G/mLEvpf79Kg5lQNZ8gn84ms1zhGUWvS179xg/mT5
# F+JvVhOLMihJpWnaoiWaQQmE9VydzllHQHMZFdK0QNpVWm9l/xrw0hEkLsBMA/RS
# 1t2w90gLa4iDH9E0O7xWCTDLdTN5pbCmTMBJ2m3a8OYuV2/y0nYtxazU8vHpkn6V
# 6Td2cY8OKuUf14UW1hY5nqGb6SMpNTzmcnW3jAYveVBZx+BE5ALKaGo2+nCIJ6oH
# wlQ9a7UsUwLCrIxcSXytDH1kRa+zBhQPVsedeoA08eIZsBhSbH/AD3TNxipTHv0o
# jBlyXbZCjNiFe8sLi077Cvb1fiCAiQ==
# =Pc9Y
# -----END PGP SIGNATURE-----
# gpg: Signature made Fri 24 Mar 2023 14:54:43 GMT
# gpg:                using RSA key F80C006308E22CFD8A92E7980CF5572FD7FB55AF
# gpg: Good signature from "Anthony PERARD <anthony.perard@gmail.com>" 
[marginal]
# gpg:                 aka "Anthony PERARD <anthony.perard@citrix.com>" 
[marginal]
# gpg: WARNING: This key is not certified with sufficiently trusted signatures!
# gpg:          It is not certain that the signature belongs to the owner.
# Primary key fingerprint: 5379 2F71 024C 600F 778A  7161 D8D5 7199 DF83 42C8
#      Subkey fingerprint: F80C 0063 08E2 2CFD 8A92  E798 0CF5 572F D7FB 55AF

* tag 'pull-xen-20230324' of 
https://xenbits.xen.org/git-http/people/aperard/qemu-dm:
  hw/xenpv: Initialize Xen backend operations
  accel/xen: Fix DM state change notification in dm_restrict mode

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: e3debd5e7d0ce031356024878a0a18b9d109354a
      
https://github.com/qemu/qemu/commit/e3debd5e7d0ce031356024878a0a18b9d109354a
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-03-24 (Fri, 24 Mar 2023)

  Changed paths:
    R .cirrus.yml
    M .gitlab-ci.d/windows.yml
    M MAINTAINERS
    M docs/about/deprecated.rst
    M hw/block/fdc.c
    M hw/block/nand.c
    M hw/block/onenand.c
    M hw/block/tc58128.c
    M hw/ide/cmd646.c
    M hw/ide/core.c
    M hw/ide/microdrive.c
    M include/hw/block/flash.h
    M include/hw/ide/internal.h
    M target/ppc/excp_helper.c
    M target/s390x/s390x-internal.h
    M ui/spice-core.c

  Log Message:
  -----------
  Merge tag 'pull-request-2023-03-24' of https://gitlab.com/thuth/qemu into 
staging

* Remove TABs in hw/ide and hw/block
* Two fixes for GCC 13
* MSYS2 CI job improvements

# -----BEGIN PGP SIGNATURE-----
#
# iQJFBAABCAAvFiEEJ7iIR+7gJQEY8+q5LtnXdP5wLbUFAmQdwwkRHHRodXRoQHJl
# ZGhhdC5jb20ACgkQLtnXdP5wLbXnWg//TcpLes6b30dTFJ3NwTYaL+ElGvcfQiXx
# DNUdmCuxH+2YJGORvVutbVslxFAXgYn8z6lmjgTSx+HziwmY3WhtWSQNOAxRrpoj
# Rq1r59q7FPKY/qoLjTMeQDe3O+jrGte7dX14TbKRpPDSZxxJjpswACDgCsGWqE8x
# 0SGSLRlqqqnrQE0H1RfmP++0yAtHmGSN3TK0/bFmY4B+mMpj8beAq020h2iCCdbP
# 7qWMI0o96lAl/D/wA55BNKuWsdXdIeQjPPoxxGEtiXN27Xk7oyQS47JkZdz6C1Lq
# V8/lF2Pa/eC6uPjnxpQDGp1IkaBE7/rn4450h9EMESrjL50As2yPUkw3BecqimHA
# fYMbSXrGe9urIflkZcY7Nx2PaBB5v1ZR3iiemjd8qahjgiT8DJYWtjFYKbuFsqJ+
# Ra13Ey9PEX13dROXBAFeX+rdaMiRQEkyQv8GSwPlnNW7OzFJc/qr8EIQOuu1flmm
# 7KLYp6h45Os/fN90Lnn5N9LhjUET+2XDqEljAyyziTjsIuc1i3mPjR45j0KSq7tv
# eBp6SXpHkXrpKDrXSsJMa4SzSfK6VOHrtseE4b2XCKQLr4oSpr8d6eembKGyvNzs
# zh4TtsC+WfTu4HY5Dcbat34QAtAfGUr7ERX4/s+bnvQd944/7skOAqM7Ia9tOMKH
# ABuxJ8A7PIY=
# =myGG
# -----END PGP SIGNATURE-----
# gpg: Signature made Fri 24 Mar 2023 15:34:33 GMT
# gpg:                using RSA key 27B88847EEE0250118F3EAB92ED9D774FE702DB5
# gpg:                issuer "thuth@redhat.com"
# gpg: Good signature from "Thomas Huth <th.huth@gmx.de>" [full]
# gpg:                 aka "Thomas Huth <thuth@redhat.com>" [full]
# gpg:                 aka "Thomas Huth <huth@tuxfamily.org>" [full]
# gpg:                 aka "Thomas Huth <th.huth@posteo.de>" [unknown]
# Primary key fingerprint: 27B8 8847 EEE0 2501 18F3  EAB9 2ED9 D774 FE70 2DB5

* tag 'pull-request-2023-03-24' of https://gitlab.com/thuth/qemu:
  Revert "docs/about/deprecated: Deprecate 32-bit arm hosts for system 
emulation"
  cirrus-ci: Remove MSYS2 jobs duplicated with gitlab-ci
  gitlab-ci: Cover SPICE in the MSYS2 job
  ui/spice: fix compilation on win32
  target/ppc: Fix helper_pminsn() prototype
  target/s390x: Fix float_comp_to_cc() prototype
  hw/block: replace TABs with space
  hw/ide: replace TABs with space

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: bd2cd4a441ded163b62371790876f28a9b834317
      
https://github.com/qemu/qemu/commit/bd2cd4a441ded163b62371790876f28a9b834317
  Author: Florian Westphal <fw@strlen.de>
  Date:   2023-03-27 (Mon, 27 Mar 2023)

  Changed paths:
    M nbd/server.c

  Log Message:
  -----------
  nbd/server: push pending frames after sending reply

qemu-nbd doesn't set TCP_NODELAY on the tcp socket.

Kernel waits for more data and avoids transmission of small packets.
Without TLS this is barely noticeable, but with TLS this really shows.

Booting a VM via qemu-nbd on localhost (with tls) takes more than
2 minutes on my system.  tcpdump shows frequent wait periods, where no
packets get sent for a 40ms period.

Add explicit (un)corking when processing (and responding to) requests.
"TCP_CORK, &zero" after earlier "CORK, &one" will flush pending data.

VM Boot time:
main:    no tls:  23s, with tls: 2m45s
patched: no tls:  14s, with tls: 15s

VM Boot time, qemu-nbd via network (same lan):
main:    no tls:  18s, with tls: 1m50s
patched: no tls:  17s, with tls: 18s

Future optimization: if we could detect if there is another pending
request we could defer the uncork operation because more data would be
appended.

Signed-off-by: Florian Westphal <fw@strlen.de>
Message-Id: <20230324104720.2498-1-fw@strlen.de>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 2957dc40a270cd41a3932f96f0f63ac9c1e3a9be
      
https://github.com/qemu/qemu/commit/2957dc40a270cd41a3932f96f0f63ac9c1e3a9be
  Author: Stefan Hajnoczi <stefanha@redhat.com>
  Date:   2023-03-27 (Mon, 27 Mar 2023)

  Changed paths:
    M util/vhost-user-server.c

  Log Message:
  -----------
  block/export: only acquire AioContext once for vhost_user_server_stop()

vhost_user_server_stop() uses AIO_WAIT_WHILE(). AIO_WAIT_WHILE()
requires that AioContext is only acquired once.

Since blk_exp_request_shutdown() already acquires the AioContext it
shouldn't be acquired again in vhost_user_server_stop().

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-Id: <20230323145853.1345527-1-stefanha@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: e62da98527fa35fe5f532cded01a33edf9fbe7b2
      
https://github.com/qemu/qemu/commit/e62da98527fa35fe5f532cded01a33edf9fbe7b2
  Author: Stefan Hajnoczi <stefanha@redhat.com>
  Date:   2023-03-27 (Mon, 27 Mar 2023)

  Changed paths:
    M util/fdmon-epoll.c

  Log Message:
  -----------
  aio-posix: fix race between epoll upgrade and aio_set_fd_handler()

If another thread calls aio_set_fd_handler() while the IOThread event
loop is upgrading from ppoll(2) to epoll(7) then we might miss new
AioHandlers. The epollfd will not monitor the new AioHandler's fd,
resulting in hangs.

Take the AioHandler list lock while upgrading to epoll. This prevents
AioHandlers from changing while epoll is being set up. If we cannot lock
because we're in a nested event loop, then don't upgrade to epoll (it
will happen next time we're not in a nested call).

The downside to taking the lock is that the aio_set_fd_handler() thread
has to wait until the epoll upgrade is finished, which involves many
epoll_ctl(2) system calls. However, this scenario is rare and I couldn't
think of another solution that is still simple.

Reported-by: Qing Wang <qinwang@redhat.com>
Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=2090998
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Fam Zheng <fam@euphon.net>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-Id: <20230323144859.1338495-1-stefanha@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: d8fbf9aa85aed64450907580a1d70583f097e9df
      
https://github.com/qemu/qemu/commit/d8fbf9aa85aed64450907580a1d70583f097e9df
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-03-27 (Mon, 27 Mar 2023)

  Changed paths:
    M block.c
    M block/block-backend.c
    M block/export/virtio-blk-handler.c
    M include/block/block-io.h
    M include/sysemu/block-backend-io.h

  Log Message:
  -----------
  block/export: Fix graph locking in blk_get_geometry() call

blk_get_geometry() eventually calls bdrv_nb_sectors(), which is a
co_wrapper_mixed_bdrv_rdlock. This means that when it is called from
coroutine context, it already assume to have the graph locked.

However, virtio_blk_sect_range_ok() in block/export/virtio-blk-handler.c
(used by vhost-user-blk and VDUSE exports) runs in a coroutine, but
doesn't take the graph lock - blk_*() functions are generally expected
to do that internally. This causes an assertion failure when accessing
an export for the first time if it runs in an iothread.

This is an example of the crash:

  $ ./storage-daemon/qemu-storage-daemon --object iothread,id=th0 --blockdev 
file,filename=/home/kwolf/images/hd.img,node-name=disk --export 
vhost-user-blk,addr.type=unix,addr.path=/tmp/vhost.sock,node-name=disk,id=exp0,iothread=th0
  qemu-storage-daemon: ../block/graph-lock.c:268: void 
assert_bdrv_graph_readable(void): Assertion `qemu_in_main_thread() || 
reader_count()' failed.

  (gdb) bt
  #0  0x00007ffff6eafe5c in __pthread_kill_implementation () from 
/lib64/libc.so.6
  #1  0x00007ffff6e5fa76 in raise () from /lib64/libc.so.6
  #2  0x00007ffff6e497fc in abort () from /lib64/libc.so.6
  #3  0x00007ffff6e4971b in __assert_fail_base.cold () from /lib64/libc.so.6
  #4  0x00007ffff6e58656 in __assert_fail () from /lib64/libc.so.6
  #5  0x00005555556337a3 in assert_bdrv_graph_readable () at 
../block/graph-lock.c:268
  #6  0x00005555555fd5a2 in bdrv_co_nb_sectors (bs=0x5555564c5ef0) at 
../block.c:5847
  #7  0x00005555555ee949 in bdrv_nb_sectors (bs=0x5555564c5ef0) at 
block/block-gen.c:256
  #8  0x00005555555fd6b9 in bdrv_get_geometry (bs=0x5555564c5ef0, 
nb_sectors_ptr=0x7fffef7fedd0) at ../block.c:5884
  #9  0x000055555562ad6d in blk_get_geometry (blk=0x5555564cb200, 
nb_sectors_ptr=0x7fffef7fedd0) at ../block/block-backend.c:1624
  #10 0x00005555555ddb74 in virtio_blk_sect_range_ok (blk=0x5555564cb200, 
block_size=512, sector=0, size=512) at ../block/export/virtio-blk-handler.c:44
  #11 0x00005555555dd80d in virtio_blk_process_req (handler=0x5555564cbb98, 
in_iov=0x7fffe8003830, out_iov=0x7fffe8003860, in_num=1, out_num=0) at 
../block/export/virtio-blk-handler.c:189
  #12 0x00005555555dd546 in vu_blk_virtio_process_req (opaque=0x7fffe8003800) 
at ../block/export/vhost-user-blk-server.c:66
  #13 0x00005555557bf4a1 in coroutine_trampoline (i0=-402635264, i1=32767) at 
../util/coroutine-ucontext.c:177
  #14 0x00007ffff6e75c20 in ?? () from /lib64/libc.so.6
  #15 0x00007fffefffa870 in ?? ()
  #16 0x0000000000000000 in ?? ()

Fix this by creating a new blk_co_get_geometry() that takes the lock,
and changing blk_get_geometry() to be a co_wrapper_mixed around it.

To make the resulting code cleaner, virtio-blk-handler.c can directly
call the coroutine version now (though that wouldn't be necessary for
fixing the bug, taking the lock in blk_co_get_geometry() is what fixes
it).

Fixes: 8ab8140a04cf771d63e9754d6ba6c1e676bfe507
Reported-by: Lukáš Doktor <ldoktor@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-Id: <20230327113959.60071-1-kwolf@redhat.com>
Reviewed-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 9b4f01812f69ad6066725338c89945bb61f41823
      
https://github.com/qemu/qemu/commit/9b4f01812f69ad6066725338c89945bb61f41823
  Author: Mateusz Kozlowski <kozlowski.mateuszpl@gmail.com>
  Date:   2023-03-27 (Mon, 27 Mar 2023)

  Changed paths:
    M hw/nvme/ctrl.c

  Log Message:
  -----------
  hw/nvme: Change alignment in dma functions for nvme_blk_*

Since the nvme_blk_read/write are used by both the data and metadata
portions of the IO, it can't have the 512B alignment requirement.
Without this change any metadata transfer, which length isn't a multiple
of 512B and which is bigger than 512B, will result in only a partial
transfer.

Signed-off-by: Mateusz Kozlowski <kozlowski.mateuszpl@gmail.com>
Reviewed-by: Klaus Jensen <k.jensen@samsung.com>
Signed-off-by: Klaus Jensen <k.jensen@samsung.com>


  Commit: ca2a091802872b265bc6007a2d36276d51d8e4b3
      
https://github.com/qemu/qemu/commit/ca2a091802872b265bc6007a2d36276d51d8e4b3
  Author: Klaus Jensen <k.jensen@samsung.com>
  Date:   2023-03-27 (Mon, 27 Mar 2023)

  Changed paths:
    M hw/nvme/ctrl.c

  Log Message:
  -----------
  hw/nvme: fix missing DNR on compare failure

Even if the host is somehow using compare to do compare-and-write, the
host should be notified immediately about the compare failure and not
have to wait for the driver to potentially retry the command.

Fixes: 0a384f923f51 ("hw/block/nvme: add compare command")
Reported-by: Jim Harris <james.r.harris@intel.com>
Signed-off-by: Klaus Jensen <k.jensen@samsung.com>


  Commit: 212f7b1dac9e4ac344000cc4816097ce2bbe3993
      
https://github.com/qemu/qemu/commit/212f7b1dac9e4ac344000cc4816097ce2bbe3993
  Author: Akihiko Odaki <akihiko.odaki@daynix.com>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M hw/net/igb.c
    M hw/net/igb_core.c
    M hw/net/igb_core.h

  Log Message:
  -----------
  igb: Save more Tx states

The current implementation of igb uses only part of a advanced Tx
context descriptor and first data descriptor because it misses some
features and sniffs the trait of the packet instead of respecting the
packet type specified in the descriptor. However, we will certainly
need the entire Tx context descriptor when we update igb to respect
these ignored fields. Save the entire context descriptor and first
data descriptor except the buffer address to prepare for such a change.

This also introduces the distinction of contexts with different
indexes, which was not present in e1000e but in igb.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Reviewed-by: Sriram Yagnaraman <sriram.yagnaraman@est.tech>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: f4fdaf009cc85e95a00aba47a6b5b9df920d51c4
      
https://github.com/qemu/qemu/commit/f4fdaf009cc85e95a00aba47a6b5b9df920d51c4
  Author: Akihiko Odaki <akihiko.odaki@daynix.com>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M hw/net/e1000e_core.c
    M hw/net/igb_core.c
    M hw/net/net_tx_pkt.c
    M hw/net/net_tx_pkt.h
    M hw/net/vmxnet3.c

  Log Message:
  -----------
  igb: Fix DMA requester specification for Tx packet

igb used to specify the PF as DMA requester when reading Tx packets.
This made Tx requests from VFs to be performed on the address space of
the PF, defeating the purpose of SR-IOV. Add some logic to change the
requester depending on the queue, which can be assigned to a VF.

Fixes: 3a977deebe ("Intrdocue igb device emulation")
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: 4cf3a63849c24021bf5a023d94c797acbb89b5b8
      
https://github.com/qemu/qemu/commit/4cf3a63849c24021bf5a023d94c797acbb89b5b8
  Author: Akihiko Odaki <akihiko.odaki@daynix.com>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M hw/net/net_tx_pkt.c

  Log Message:
  -----------
  hw/net/net_tx_pkt: Ignore ECN bit

No segmentation should be performed if gso type is
VIRTIO_NET_HDR_GSO_NONE even if ECN bit is set.

Fixes: e263cd49c7 ("Packet abstraction for VMWARE network devices")
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1544
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: 2a5f744ef200c02b10775b92c7c82e40558cc413
      
https://github.com/qemu/qemu/commit/2a5f744ef200c02b10775b92c7c82e40558cc413
  Author: Akihiko Odaki <akihiko.odaki@daynix.com>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M hw/net/net_tx_pkt.c

  Log Message:
  -----------
  hw/net/net_tx_pkt: Align l3_hdr

Align the l3_hdr member of NetTxPkt by defining it as a union of
ip_header, ip6_header, and an array of octets.

Fixes: e263cd49c7 ("Packet abstraction for VMWARE network devices")
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1544
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: e860ef1568c62bbc8cc3567ae4e8b6ca67bed96b
      
https://github.com/qemu/qemu/commit/e860ef1568c62bbc8cc3567ae4e8b6ca67bed96b
  Author: Sriram Yagnaraman <sriram.yagnaraman@est.tech>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M MAINTAINERS

  Log Message:
  -----------
  MAINTAINERS: Add Sriram Yagnaraman as a igb reviewer

I would like to review and be informed on changes to igb device

Signed-off-by: Sriram Yagnaraman <sriram.yagnaraman@est.tech>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: 2e68546a4318228e7dd73f73b471a00f31e64064
      
https://github.com/qemu/qemu/commit/2e68546a4318228e7dd73f73b471a00f31e64064
  Author: Sriram Yagnaraman <sriram.yagnaraman@est.tech>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M hw/net/igb_core.c
    M hw/net/igb_regs.h
    M hw/net/trace-events

  Log Message:
  -----------
  igb: handle PF/VF reset properly

Use PFRSTD to reset RSTI bit for VFs, and raise VFLRE interrupt when VF
is reset.

Signed-off-by: Sriram Yagnaraman <sriram.yagnaraman@est.tech>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: 1c1e649761a20e92053cbec81c2947ca82258ef7
      
https://github.com/qemu/qemu/commit/1c1e649761a20e92053cbec81c2947ca82258ef7
  Author: Sriram Yagnaraman <sriram.yagnaraman@est.tech>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M hw/net/e1000x_regs.h
    M hw/net/igb_core.c

  Log Message:
  -----------
  igb: add ICR_RXDW

IGB uses RXDW ICR bit to indicate that rx descriptor has been written
back. This is the same as RXT0 bit in older HW.

Signed-off-by: Sriram Yagnaraman <sriram.yagnaraman@est.tech>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: 3269ebb3e0fe0e356199c2dcc24c51ad63865aa4
      
https://github.com/qemu/qemu/commit/3269ebb3e0fe0e356199c2dcc24c51ad63865aa4
  Author: Sriram Yagnaraman <sriram.yagnaraman@est.tech>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M hw/net/igb_core.c
    M hw/net/igb_core.h
    M hw/net/igb_regs.h

  Log Message:
  -----------
  igb: implement VFRE and VFTE registers

Also introduce:
- Checks for RXDCTL/TXDCTL queue enable bits
- IGB_NUM_VM_POOLS enum (Sec 1.5: Table 1-7)

Signed-off-by: Sriram Yagnaraman <sriram.yagnaraman@est.tech>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: 5f12d7030424e8fc4ee6f123d110073f16ae2b10
      
https://github.com/qemu/qemu/commit/5f12d7030424e8fc4ee6f123d110073f16ae2b10
  Author: Sriram Yagnaraman <sriram.yagnaraman@est.tech>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M hw/net/igb_core.c

  Log Message:
  -----------
  igb: check oversized packets for VMDq

Signed-off-by: Sriram Yagnaraman <sriram.yagnaraman@est.tech>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: 3c2e0a68534da9ff9cc79866a20adb8ac78c424f
      
https://github.com/qemu/qemu/commit/3c2e0a68534da9ff9cc79866a20adb8ac78c424f
  Author: Sriram Yagnaraman <sriram.yagnaraman@est.tech>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M hw/net/igb_core.c

  Log Message:
  -----------
  igb: respect E1000_VMOLR_RSSE

RSS for VFs is only enabled if VMOLR[n].RSSE is set.

Signed-off-by: Sriram Yagnaraman <sriram.yagnaraman@est.tech>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: 7581baed88a90f7e3d1e78251fd0867573ecf182
      
https://github.com/qemu/qemu/commit/7581baed88a90f7e3d1e78251fd0867573ecf182
  Author: Sriram Yagnaraman <sriram.yagnaraman@est.tech>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M hw/net/igb_core.c

  Log Message:
  -----------
  igb: implement VF Tx and Rx stats

Please note that loopback counters for VM to VM traffic is not
implemented yet: VFGOTLBC, VFGPTLBC, VFGORLBC and VFGPRLBC.

Signed-off-by: Sriram Yagnaraman <sriram.yagnaraman@est.tech>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: fba7c3b788dfcb99a3f9253f7d99cc0d217d6d3c
      
https://github.com/qemu/qemu/commit/fba7c3b788dfcb99a3f9253f7d99cc0d217d6d3c
  Author: Sriram Yagnaraman <sriram.yagnaraman@est.tech>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M hw/net/igb_core.c

  Log Message:
  -----------
  igb: respect VMVIR and VMOLR for VLAN

Add support for stripping/inserting VLAN for VFs.

Had to move CSUM calculation back into the for loop, since packet data
is pulled inside the loop based on strip VLAN decision for every VF.

net_rx_pkt_fix_l4_csum should be extended to accept a buffer instead for
igb. Work for a future patch.

Signed-off-by: Sriram Yagnaraman <sriram.yagnaraman@est.tech>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: 46e3b237c52e0c48bfd81bce020b51fbe300b23a
      
https://github.com/qemu/qemu/commit/46e3b237c52e0c48bfd81bce020b51fbe300b23a
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M target/arm/gdbstub.c

  Log Message:
  -----------
  target/arm/gdbstub: Only advertise M-profile features if TCG available

Cortex-M profile is only emulable from TCG accelerator. Restrict
the GDBstub features to its availability in order to avoid a link
error when TCG is not enabled:

  Undefined symbols for architecture arm64:
    "_arm_v7m_get_sp_ptr", referenced from:
        _m_sysreg_get in target_arm_gdbstub.c.o
    "_arm_v7m_mrs_control", referenced from:
        _arm_gdb_get_m_systemreg in target_arm_gdbstub.c.o
  ld: symbol(s) not found for architecture arm64
  clang: error: linker command failed with exit code 1 (use -v to see 
invocation)

Fixes: 7d8b28b8b5 ("target/arm: Implement gdbstub m-profile systemreg and 
secext")
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-id: 20230322142902.69511-3-philmd@linaro.org
[PMM: add #include since I cherry-picked this patch from the series]
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: ecaefc8f50ea5058e478c088de7cf70f56338d5b
      
https://github.com/qemu/qemu/commit/ecaefc8f50ea5058e478c088de7cf70f56338d5b
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M hw/nvme/ctrl.c

  Log Message:
  -----------
  Merge tag 'nvme-next-pull-request' of https://gitlab.com/birkelund/qemu into 
staging

hw/nvme fixes

# -----BEGIN PGP SIGNATURE-----
#
# iQEzBAABCgAdFiEEUigzqnXi3OaiR2bATeGvMW1PDekFAmQhzX8ACgkQTeGvMW1P
# DekD4gf9GhPfYxpltYI4KmjfPotY0fIZQ/33jZtjJXdKpzmCCAknuCZdoI1yM5X7
# I9EiP3I6hfMyzUe58K8Gi8v8Vy9/UUtKjWGpYoWiLol01IkqqvsBNZC8KGQpUDfX
# cYXI13XAutHxKbH9sp10OvMEI1jBGHBvzEAtUHhFYxX0jazt68PJVL01YhCMIsQo
# 4KQOes8Bxxroh/0c7/zbMdVFfDxj/Vtm3dpj9PLRlc9lqhkzh2gpiY4tI4RA85KR
# 4Ceq8+ihhbXn81CrLMpx2JqOcp+GNhJDQ8VekfbIsoT3DY5PN7G4p7FaIUxhba9k
# VoB4U1cbjdMk3sohPXVhsLrwpixf1w==
# =WdhG
# -----END PGP SIGNATURE-----
# gpg: Signature made Mon 27 Mar 2023 18:08:15 BST
# gpg:                using RSA key 522833AA75E2DCE6A24766C04DE1AF316D4F0DE9
# gpg: Good signature from "Klaus Jensen <its@irrelevant.dk>" [full]
# gpg:                 aka "Klaus Jensen <k.jensen@samsung.com>" [full]
# Primary key fingerprint: DDCA 4D9C 9EF9 31CC 3468  4272 63D5 6FC5 E55D A838
#      Subkey fingerprint: 5228 33AA 75E2 DCE6 A247  66C0 4DE1 AF31 6D4F 0DE9

* tag 'nvme-next-pull-request' of https://gitlab.com/birkelund/qemu:
  hw/nvme: fix missing DNR on compare failure
  hw/nvme: Change alignment in dma functions for nvme_blk_*

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 52dd5f6f70276518dd21cd3a72cb95495df33bc9
      
https://github.com/qemu/qemu/commit/52dd5f6f70276518dd21cd3a72cb95495df33bc9
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M MAINTAINERS
    M hw/net/e1000e_core.c
    M hw/net/e1000x_regs.h
    M hw/net/igb.c
    M hw/net/igb_core.c
    M hw/net/igb_core.h
    M hw/net/igb_regs.h
    M hw/net/net_tx_pkt.c
    M hw/net/net_tx_pkt.h
    M hw/net/trace-events
    M hw/net/vmxnet3.c

  Log Message:
  -----------
  Merge tag 'net-pull-request' of https://github.com/jasowang/qemu into staging

# -----BEGIN PGP SIGNATURE-----
# Version: GnuPG v1
#
# iQEcBAABAgAGBQJkIncaAAoJEO8Ells5jWIR6bgH/icQAN1a0PBHh2lujmob8KvE
# IZ0KYuJMDcA8HFdhnzxPPKj7/77AM1DgmrmVwqLKTr6j64CZYr2Uc0yeyPa0f/0Y
# TtePW70bjoUkRm/dDdFe32xViO4O33pGQia6olR6QwmfdDbBBJjAucmlep8NClrh
# EooQ2WfXPBqrC6ckKZ7vEvgKV2sDl2XxYIr3kU3MiB4j4b1lrGHE+XSv7cXOC+at
# G2vYqbimipZstHZCJYeB5tRz+FXbAI3ZNCGtYpxeVyabrlHS+n+X+gttaswcvVIF
# ln6yidVGg/Ot3bi0qiV1WihpqNCWO0ghhf7wIEubAIIJlnE5hXULF4uFVfz+rRE=
# =HjJv
# -----END PGP SIGNATURE-----
# gpg: Signature made Tue 28 Mar 2023 06:11:54 BST
# gpg:                using RSA key EF04965B398D6211
# gpg: Good signature from "Jason Wang (Jason Wang on RedHat) 
<jasowang@redhat.com>" [marginal]
# gpg: WARNING: This key is not certified with sufficiently trusted signatures!
# gpg:          It is not certain that the signature belongs to the owner.
# Primary key fingerprint: 215D 46F4 8246 689E C77F  3562 EF04 965B 398D 6211

* tag 'net-pull-request' of https://github.com/jasowang/qemu:
  igb: respect VMVIR and VMOLR for VLAN
  igb: implement VF Tx and Rx stats
  igb: respect E1000_VMOLR_RSSE
  igb: check oversized packets for VMDq
  igb: implement VFRE and VFTE registers
  igb: add ICR_RXDW
  igb: handle PF/VF reset properly
  MAINTAINERS: Add Sriram Yagnaraman as a igb reviewer
  hw/net/net_tx_pkt: Align l3_hdr
  hw/net/net_tx_pkt: Ignore ECN bit
  igb: Fix DMA requester specification for Tx packet
  igb: Save more Tx states

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: eeb2f7e35779845254fda594f7866ec9770ce97c
      
https://github.com/qemu/qemu/commit/eeb2f7e35779845254fda594f7866ec9770ce97c
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M target/arm/gdbstub.c

  Log Message:
  -----------
  Merge tag 'pull-target-arm-20230328' of 
https://git.linaro.org/people/pmaydell/qemu-arm into staging

target-arm queue:
 * fix part of the "TCG-disabled builds are broken" issue

# -----BEGIN PGP SIGNATURE-----
#
# iQJNBAABCAA3FiEE4aXFk81BneKOgxXPPCUl7RQ2DN4FAmQi3NcZHHBldGVyLm1h
# eWRlbGxAbGluYXJvLm9yZwAKCRA8JSXtFDYM3u86D/9jNLtnDhV2V9znSOIudnQn
# Djb6B+YZEQyHoTGP7fkoY48Et1YlpwMPLb+B+d3PR5q2Nm9z3H6dmuOs5qaoJp1D
# afn+TeRS0rQKKc+/bCR5yIwkzGAKqqnEPf6v7MubHTePvWrSP4gQWjr4xHoWE9H1
# sIHrCSutYPwOkSYGCOwoOrJxMPeQmV+CtNunyGl/0PtVOQSsAO4oETf9KfPykdMP
# dFfHrzVSOVkBnjtejsPxKZMIi06hQgiHItfmWvIWz34N8nues1r2b5GOfzDIGfd4
# O89r4N8OQghOUamh5TGiaXHy2D/75cHYCFp9vG7ur8hKk5XpCLNpzSinRYaXvxeQ
# azwO0rVa+Kf9EyroQnnPfDcWzubuGli0pbC7FzZrv7lOH1fEttDasCWZ+dvccqOd
# NqMl2VipAdcSS/SkPJ8chTAVkhocCdnwjxk04IKphubW1VoU4yVdowf9LK/i2hJQ
# SmozX1cUL8l0OCr4XSSB3I5OcBzihZnHhC60zS4b6uZ1v2/Cg5iulm95kmTiD/9Q
# ryCnwANADFf/exFYsWmxxzrSfJSTz79qXDg1tpedDeYgWrojgYBrodpzwt3ywTZu
# dAiDJzRE6KPekRU6tYZ+TPGsS8D9g5XxBG/fxSoW5IslBmsPpqZng4xLw9ckeJWG
# GTh78UIyXV8xQeCFno6Kgw==
# =lMnC
# -----END PGP SIGNATURE-----
# gpg: Signature made Tue 28 Mar 2023 13:25:59 BST
# gpg:                using RSA key E1A5C593CD419DE28E8315CF3C2525ED14360CDE
# gpg:                issuer "peter.maydell@linaro.org"
# gpg: Good signature from "Peter Maydell <peter.maydell@linaro.org>" [ultimate]
# gpg:                 aka "Peter Maydell <pmaydell@gmail.com>" [ultimate]
# gpg:                 aka "Peter Maydell <pmaydell@chiark.greenend.org.uk>" 
[ultimate]
# gpg:                 aka "Peter Maydell <peter@archaic.org.uk>" [ultimate]
# Primary key fingerprint: E1A5 C593 CD41 9DE2 8E83  15CF 3C25 25ED 1436 0CDE

* tag 'pull-target-arm-20230328' of 
https://git.linaro.org/people/pmaydell/qemu-arm:
  target/arm/gdbstub: Only advertise M-profile features if TCG available

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 3b555b51156279f8dd9184c85b7af920b9f4cb9e
      
https://github.com/qemu/qemu/commit/3b555b51156279f8dd9184c85b7af920b9f4cb9e
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M block.c
    M block/block-backend.c
    M block/export/virtio-blk-handler.c
    M include/block/block-io.h
    M include/sysemu/block-backend-io.h
    M nbd/server.c
    M util/fdmon-epoll.c
    M util/vhost-user-server.c

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

Block layer patches

- aio-posix: Fix race during epoll upgrade
- vhost-user-blk/VDUSE export: Fix a potential deadlock and an assertion
  failure when the export runs in an iothread
- NBD server: Push pending frames after sending reply to fix performance
  especially when used with TLS

# -----BEGIN PGP SIGNATURE-----
#
# iQJFBAABCAAvFiEE3D3rFZqa+V09dFb+fwmycsiPL9YFAmQi3s4RHGt3b2xmQHJl
# ZGhhdC5jb20ACgkQfwmycsiPL9Yz7hAAq9UVPOfr8SF5WjxuZBNifYI13uazp9cG
# UdDC4Be2zNSkw9WGb+thHHjvqyQ49tAmT70bTocNk8VEAjAJ5J4VrCOlyz7pcy2w
# PdJf1RxaUSEV4Fl5lThrUeOv5sX3hSm/Z8X9WLYLjYxOGJOpITkQ0eM7PDwwsiPd
# hXLOAWabcJbx/m2HQphUG5ZoC2omgfY2ICrlr4Bvziak63cT+ZTVfKTvVebtEZ9B
# zn+BfrzDra/rkLJEM9JfgQXjYo3Cxrv5MjYzDpeRCHPwnseZnlbHlE3nrHWYDuLW
# fsd6RpsoOW6mHEx4aO6xLAVu+iIfouVOjV5ZWRvcKw5UyiejW/DkduppERMbWx/y
# Wfq95O/4UjFop3fw+UGGdHtASjnUJM35QR9wo+bM2vS219DLTJ/7mKOhBDajHQy4
# 3ynk39uEnkRyLrKUMvR9qZ7t7pvumXEEA5qtPGJwnvOXm9shlKrJ8f3TzUGBKpQS
# KPYEAJPO/HmyvswsfTmC7Yy5uh2o67nsMdDy7HEq0MZW5+pBpAML+zv4qyQKtDsg
# GzoIL+zd09Yyh+wK9+NPzX9p7DZus7NRlig9byGCpD48gqzeABL6CQotNlm93pgj
# eybiMStrCPIOt8AZM5j8yxh1RBiM2L7sZeTBaFXyQiwrlYOW4xGybivzcwQAEFGN
# iKRB0fttcQE=
# =+vQj
# -----END PGP SIGNATURE-----
# gpg: Signature made Tue 28 Mar 2023 13:34:22 BST
# 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:
  block/export: Fix graph locking in blk_get_geometry() call
  aio-posix: fix race between epoll upgrade and aio_set_fd_handler()
  block/export: only acquire AioContext once for vhost_user_server_stop()
  nbd/server: push pending frames after sending reply

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: d37158bb2425e7ebffb167d611be01f1e9e6c86f
      
https://github.com/qemu/qemu/commit/d37158bb2425e7ebffb167d611be01f1e9e6c86f
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M VERSION

  Log Message:
  -----------
  Update version for v8.0.0-rc2 release

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: e3feb2cc224f61149a27f021042f5a4230bb1008
      
https://github.com/qemu/qemu/commit/e3feb2cc224f61149a27f021042f5a4230bb1008
  Author: Emilio Cota <cota@braap.org>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M configure
    A include/qemu/qtree.h
    M meson.build
    M tests/bench/meson.build
    A tests/bench/qtree-bench.c
    M tests/unit/meson.build
    A tests/unit/test-qtree.c
    M util/meson.build
    A util/qtree.c

  Log Message:
  -----------
  util: import GTree as QTree

The only reason to add this implementation is to control the memory allocator
used. Some users (e.g. TCG) cannot work reliably in multi-threaded
environments (e.g. forking in user-mode) with GTree's allocator, GSlice.
See https://gitlab.com/qemu-project/qemu/-/issues/285 for details.

Importing GTree is a temporary workaround until GTree migrates away
from GSlice.

This implementation is identical to that in glib v2.75.0, except that
we don't import recent additions to the API nor deprecated API calls,
none of which are used in QEMU.

I've imported tests from glib and added a benchmark just to
make sure that performance is similar. Note: it cannot be identical
because (1) we are not using GSlice, (2) we use different compilation flags
(e.g. -fPIC) and (3) we're linking statically.

$ cat /proc/cpuinfo| grep 'model name' | head -1
model name      : AMD Ryzen 7 PRO 5850U with Radeon Graphics
$ echo '0' | sudo tee /sys/devices/system/cpu/cpufreq/boost
$ tests/bench/qtree-bench

 Tree         Op      32            1024            4096          131072        
 1048576
------------------------------------------------------------------------------------------------
GTree     Lookup   83.23           43.08           25.31           19.40        
   16.22
QTree     Lookup  113.42 (1.36x)   53.83 (1.25x)   28.38 (1.12x)   17.64 
(0.91x)   13.04 (0.80x)
GTree     Insert   44.23           29.37           25.83           19.49        
   17.03
QTree     Insert   46.87 (1.06x)   25.62 (0.87x)   24.29 (0.94x)   16.83 
(0.86x)   12.97 (0.76x)
GTree     Remove   53.27           35.15           31.43           24.64        
   16.70
QTree     Remove   57.32 (1.08x)   41.76 (1.19x)   38.37 (1.22x)   29.30 
(1.19x)   15.07 (0.90x)
GTree  RemoveAll  135.44          127.52          126.72          120.11        
   64.34
QTree  RemoveAll  127.15 (0.94x)  110.37 (0.87x)  107.97 (0.85x)   97.13 
(0.81x)   55.10 (0.86x)
GTree   Traverse  277.71          276.09          272.78          246.72        
   98.47
QTree   Traverse  370.33 (1.33x)  411.97 (1.49x)  400.23 (1.47x)  262.82 
(1.07x)   78.52 (0.80x)
------------------------------------------------------------------------------------------------

As a sanity check, the same benchmark when Glib's version
is >= $glib_dropped_gslice_version (i.e. QTree == GTree):

 Tree         Op      32            1024            4096          131072        
 1048576
------------------------------------------------------------------------------------------------
GTree     Lookup   82.72           43.09           24.18           19.73        
   16.09
QTree     Lookup   81.82 (0.99x)   43.10 (1.00x)   24.20 (1.00x)   19.76 
(1.00x)   16.26 (1.01x)
GTree     Insert   45.07           29.62           26.34           19.90        
   17.18
QTree     Insert   45.72 (1.01x)   29.60 (1.00x)   26.38 (1.00x)   19.71 
(0.99x)   17.20 (1.00x)
GTree     Remove   54.48           35.36           31.77           24.97        
   16.95
QTree     Remove   54.46 (1.00x)   35.32 (1.00x)   31.77 (1.00x)   24.91 
(1.00x)   17.15 (1.01x)
GTree  RemoveAll  140.68          127.36          125.43          121.45        
   68.20
QTree  RemoveAll  140.65 (1.00x)  127.64 (1.00x)  125.01 (1.00x)  121.73 
(1.00x)   67.06 (0.98x)
GTree   Traverse  278.68          276.05          266.75          251.65        
  104.93
QTree   Traverse  278.31 (1.00x)  275.78 (1.00x)  266.42 (1.00x)  247.89 
(0.99x)  104.58 (1.00x)
------------------------------------------------------------------------------------------------

Signed-off-by: Emilio Cota <cota@braap.org>
Message-Id: <20230205163758.416992-2-cota@braap.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 1ff4a81bd3efb207992f1da267886fe0c4df764f
      
https://github.com/qemu/qemu/commit/1ff4a81bd3efb207992f1da267886fe0c4df764f
  Author: Emilio Cota <cota@braap.org>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M accel/tcg/tb-maint.c
    M tcg/region.c
    M util/qtree.c

  Log Message:
  -----------
  tcg: use QTree instead of GTree

qemu-user can hang in a multi-threaded fork. One common
reason is that when creating a TB, between fork and exec
we manipulate a GTree whose memory allocator (GSlice) is
not fork-safe.

Although POSIX does not mandate it, the system's allocator
(e.g. tcmalloc, libc malloc) is probably fork-safe.

Fix some of these hangs by using QTree, which uses the system's
allocator regardless of the Glib version that we used at
configuration time.

Tested with the test program in the original bug report, i.e.:
```

void garble() {
  int pid = fork();
  if (pid == 0) {
    exit(0);
  } else {
    int wstatus;
    waitpid(pid, &wstatus, 0);
  }
}

void supragarble(unsigned depth) {
  if (depth == 0)
    return ;

  std::thread a(supragarble, depth-1);
  std::thread b(supragarble, depth-1);
  garble();
  a.join();
  b.join();
}

int main() {
  supragarble(10);
}
```

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/285
Reported-by: Valentin David <me@valentindavid.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Emilio Cota <cota@braap.org>
Message-Id: <20230205163758.416992-3-cota@braap.org>
[rth: Add QEMU_DISABLE_CFI for all callback using functions.]
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 2f7828b5729337c61e6c58466d0d78af079db42d
      
https://github.com/qemu/qemu/commit/2f7828b5729337c61e6c58466d0d78af079db42d
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M linux-user/main.c

  Log Message:
  -----------
  linux-user: Diagnose misaligned -R size

We have been enforcing host page alignment for the non-R
fallback of MAX_RESERVED_VA, but failing to enforce for -R.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 49840a4a098149067789255bca6894645f411036
      
https://github.com/qemu/qemu/commit/49840a4a098149067789255bca6894645f411036
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M accel/tcg/user-exec.c
    M bsd-user/mmap.c
    M include/exec/cpu-all.h
    M linux-user/elfload.c
    M linux-user/mmap.c
    M linux-user/syscall.c

  Log Message:
  -----------
  accel/tcg: Pass last not end to page_set_flags

Pass the address of the last byte to be changed, rather than
the first address past the last byte.  This avoids overflow
when the last page of the address space is involved.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1528
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 10310cbd6298def2dafd40069e27df2d25e233c5
      
https://github.com/qemu/qemu/commit/10310cbd6298def2dafd40069e27df2d25e233c5
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M accel/tcg/user-exec.c
    M include/exec/cpu-all.h
    M linux-user/mmap.c

  Log Message:
  -----------
  accel/tcg: Pass last not end to page_reset_target_data

Pass the address of the last byte to be changed, rather than
the first address past the last byte.  This avoids overflow
when the last page of the address space is involved.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: f7e2add5fd29ab067ab39c3d31a911ffcf1f7b17
      
https://github.com/qemu/qemu/commit/f7e2add5fd29ab067ab39c3d31a911ffcf1f7b17
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M accel/tcg/tb-maint.c

  Log Message:
  -----------
  accel/tcg: Pass last not end to PAGE_FOR_EACH_TB

Pass the address of the last byte to be changed, rather than
the first address past the last byte.  This avoids overflow
when the last page of the address space is involved.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: f6555e3f39ea118754c03e8b5d92fa3aa0dd6093
      
https://github.com/qemu/qemu/commit/f6555e3f39ea118754c03e8b5d92fa3aa0dd6093
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M accel/tcg/tb-maint.c

  Log Message:
  -----------
  accel/tcg: Pass last not end to page_collection_lock

Pass the address of the last byte to be changed, rather than
the first address past the last byte.  This avoids overflow
when the last page of the address space is involved.

Fixes a bug in the loop comparision where "<= end" would lock
one more page than required.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 73f96d51ff23592741ef75322cb2dda37b38248f
      
https://github.com/qemu/qemu/commit/73f96d51ff23592741ef75322cb2dda37b38248f
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M accel/tcg/tb-maint.c

  Log Message:
  -----------
  accel/tcg: Pass last not end to tb_invalidate_phys_page_range__locked

Pass the address of the last byte to be changed, rather than
the first address past the last byte.  This avoids overflow
when the last page of the address space is involved.

Properly truncate tb_last to the end of the page; the comment about
tb_end being past the end of the page being ok is not correct,
considering overflow.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: e506ad6a05c806bbef460a7d014a184ff8d707a6
      
https://github.com/qemu/qemu/commit/e506ad6a05c806bbef460a7d014a184ff8d707a6
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M accel/tcg/tb-maint.c
    M accel/tcg/translate-all.c
    M accel/tcg/user-exec.c
    M include/exec/exec-all.h
    M softmmu/physmem.c

  Log Message:
  -----------
  accel/tcg: Pass last not end to tb_invalidate_phys_range

Pass the address of the last byte to be changed, rather than
the first address past the last byte.  This avoids overflow
when the last page of the address space is involved.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: a3a67f54f0b4ec98ff2380a792e5bfeebc47d554
      
https://github.com/qemu/qemu/commit/a3a67f54f0b4ec98ff2380a792e5bfeebc47d554
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M linux-user/elfload.c
    M linux-user/flatload.c
    M linux-user/user-internals.h

  Log Message:
  -----------
  linux-user: Pass last not end to probe_guest_base

Pass the address of the last byte of the image, rather than
the first address past the last byte.  This avoids overflow
when the last page of the address space is involved.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 95059f9c313a7fbd7f22e4cdc1977c0393addc7b
      
https://github.com/qemu/qemu/commit/95059f9c313a7fbd7f22e4cdc1977c0393addc7b
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M bsd-user/main.c
    M bsd-user/mmap.c
    M include/exec/cpu-all.h
    M linux-user/arm/target_cpu.h
    M linux-user/elfload.c
    M linux-user/main.c
    M linux-user/mmap.c

  Log Message:
  -----------
  include/exec: Change reserved_va semantics to last byte

Change the semantics to be the last byte of the guest va, rather
than the following byte.  This avoids some overflow conditions.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 4f5c67f8df7f26e559509c68c45e652709edd23f
      
https://github.com/qemu/qemu/commit/4f5c67f8df7f26e559509c68c45e652709edd23f
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M linux-user/elfload.c

  Log Message:
  -----------
  linux-user/arm: Take more care allocating commpage

User setting of -R reserved_va can lead to an assertion
failure in page_set_flags.  Sanity check the value of
reserved_va and print an error message instead.  Do not
allocate a commpage at all for m-profile cpus.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 6eece7f531b69dd9d514e5bbed5659bd469bd7a2
      
https://github.com/qemu/qemu/commit/6eece7f531b69dd9d514e5bbed5659bd469bd7a2
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M include/hw/core/cpu.h
    M include/hw/core/tcg-cpu-ops.h
    M target/arm/tcg/mte_helper.c
    M target/arm/tcg/sve_helper.c
    M target/s390x/tcg/mem_helper.c

  Log Message:
  -----------
  softmmu: Restrict cpu_check_watchpoint / address_matches to TCG accel

Both cpu_check_watchpoint() and cpu_watchpoint_address_matches()
are specific to TCG system emulation. Declare them in "tcg-cpu-ops.h"
to be sure accessing them from non-TCG code is a compilation error.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20230328173117.15226-2-philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: a0858608343d26e74da390a5795e2e83aabda2d4
      
https://github.com/qemu/qemu/commit/a0858608343d26e74da390a5795e2e83aabda2d4
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M softmmu/watchpoint.c

  Log Message:
  -----------
  softmmu/watchpoint: Add missing 'qemu/error-report.h' include

cpu_watchpoint_insert() calls error_report() which is declared
in "qemu/error-report.h". When moving this code in commit 2609ec2868
("softmmu: Extract watchpoint API from physmem.c") we neglected to
include this header. This works so far because it is indirectly
included by TCG headers -> "qemu/plugin.h" -> "qemu/error-report.h".

Currently cpu_watchpoint_insert() is only built with the TCG
accelerator. When building it with other ones (or without TCG)
we get:

  softmmu/watchpoint.c:38:9: error: implicit declaration of function 
'error_report' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
        error_report("tried to set invalid watchpoint at %"
        ^

Include "qemu/error-report.h" in order to fix this for non-TCG
builds.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20230328173117.15226-3-philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 87e303de70f93bf700f58412fb9b2c3ec918c4b5
      
https://github.com/qemu/qemu/commit/87e303de70f93bf700f58412fb9b2c3ec918c4b5
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M include/hw/core/cpu.h
    M softmmu/meson.build
    M softmmu/watchpoint.c

  Log Message:
  -----------
  softmmu: Restore use of CPU watchpoint for all accelerators

CPU watchpoints can be use by non-TCG accelerators.

KVM uses them:

  $ git grep CPUWatchpoint|fgrep kvm
  target/arm/kvm64.c:1558:        CPUWatchpoint *wp = find_hw_watchpoint(cs, 
debug_exit->far);
  target/i386/kvm/kvm.c:5216:static CPUWatchpoint hw_watchpoint;
  target/ppc/kvm.c:443:static CPUWatchpoint hw_watchpoint;
  target/s390x/kvm/kvm.c:139:static CPUWatchpoint hw_watchpoint;

See for example commit e4482ab7e3 ("target-arm: kvm - add support
for HW assisted debug"):

     This adds basic support for HW assisted debug. The ioctl interface
     to KVM allows us to pass an implementation defined number of break
     and watch point registers. [...]

This partially reverts commit 2609ec2868e6c286e755a73b4504714a0296a.

Fixes: 2609ec2868 ("softmmu: Extract watchpoint API from physmem.c")
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20230328173117.15226-4-philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: f00506aeca2f6d92318967693f8da8c713c163f3
      
https://github.com/qemu/qemu/commit/f00506aeca2f6d92318967693f8da8c713c163f3
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-03-29 (Wed, 29 Mar 2023)

  Changed paths:
    M accel/tcg/tb-maint.c
    M accel/tcg/translate-all.c
    M accel/tcg/user-exec.c
    M bsd-user/main.c
    M bsd-user/mmap.c
    M configure
    M include/exec/cpu-all.h
    M include/exec/exec-all.h
    M include/hw/core/cpu.h
    M include/hw/core/tcg-cpu-ops.h
    A include/qemu/qtree.h
    M linux-user/arm/target_cpu.h
    M linux-user/elfload.c
    M linux-user/flatload.c
    M linux-user/main.c
    M linux-user/mmap.c
    M linux-user/syscall.c
    M linux-user/user-internals.h
    M meson.build
    M softmmu/meson.build
    M softmmu/physmem.c
    M softmmu/watchpoint.c
    M target/arm/tcg/mte_helper.c
    M target/arm/tcg/sve_helper.c
    M target/s390x/tcg/mem_helper.c
    M tcg/region.c
    M tests/bench/meson.build
    A tests/bench/qtree-bench.c
    M tests/unit/meson.build
    A tests/unit/test-qtree.c
    M util/meson.build
    A util/qtree.c

  Log Message:
  -----------
  Merge tag 'pull-tcg-20230328' of https://gitlab.com/rth7680/qemu into staging

Use a local version of GTree [#285]
Fix page_set_flags vs the last page of the address space [#1528]
Re-enable gdbstub breakpoints under KVM

# -----BEGIN PGP SIGNATURE-----
#
# iQFRBAABCgA7FiEEekgeeIaLTbaoWgXAZN846K9+IV8FAmQjcLIdHHJpY2hhcmQu
# aGVuZGVyc29uQGxpbmFyby5vcmcACgkQZN846K9+IV8rkgf/ZazodovRKxfaO622
# mGW7ywIm+hIZYmKC7ObiMKFrBoCyeXH9yOLSx42T70QstWvBMukjovLMz1+Ttbo1
# VOvpGH2B5W76l3i+muAlKxFRbBH2kMLTaL+BXtkmkL4FJ9bS8WiPApsL3lEX/q2E
# 3kqaT3N3C09sWO5oVAPGTUHL0EutKhOar2VZL0+PVPFzL3BNPhnQH9QcbNvDBV3n
# cx3GSXZyL7Plyi+qwsKf/3Jo+F2wr2NVf3Dqscu9T1N1kI5hSjRpwqUEJzJZ5rei
# ly/gBXC/J7+WN+x+w2JlN0kWXWqC0QbDfZnj96Pd3owWZ7j4sT9zR5fcNenecxlR
# 38Bo0w==
# =ysF7
# -----END PGP SIGNATURE-----
# gpg: Signature made Tue 28 Mar 2023 23:56:50 BST
# gpg:                using RSA key 7A481E78868B4DB6A85A05C064DF38E8AF7E215F
# gpg:                issuer "richard.henderson@linaro.org"
# gpg: Good signature from "Richard Henderson <richard.henderson@linaro.org>" 
[full]
# Primary key fingerprint: 7A48 1E78 868B 4DB6 A85A  05C0 64DF 38E8 AF7E 215F

* tag 'pull-tcg-20230328' of https://gitlab.com/rth7680/qemu:
  softmmu: Restore use of CPU watchpoint for all accelerators
  softmmu/watchpoint: Add missing 'qemu/error-report.h' include
  softmmu: Restrict cpu_check_watchpoint / address_matches to TCG accel
  linux-user/arm: Take more care allocating commpage
  include/exec: Change reserved_va semantics to last byte
  linux-user: Pass last not end to probe_guest_base
  accel/tcg: Pass last not end to tb_invalidate_phys_range
  accel/tcg: Pass last not end to tb_invalidate_phys_page_range__locked
  accel/tcg: Pass last not end to page_collection_lock
  accel/tcg: Pass last not end to PAGE_FOR_EACH_TB
  accel/tcg: Pass last not end to page_reset_target_data
  accel/tcg: Pass last not end to page_set_flags
  linux-user: Diagnose misaligned -R size
  tcg: use QTree instead of GTree
  util: import GTree as QTree

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: baead642970602ec5ec935fc8e3653b5fa5f22fa
      
https://github.com/qemu/qemu/commit/baead642970602ec5ec935fc8e3653b5fa5f22fa
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-03-30 (Thu, 30 Mar 2023)

  Changed paths:
    M linux-user/syscall_defs.h

  Log Message:
  -----------
  linux-user/sparc: Don't use 16-bit UIDs on SPARC V9

The 64-bit SPARC V9 syscall ABI uses 32-bit UIDs. Only enable
the 16-bit UID wrappers for 32-bit SPARC (V7 and V8).

Possibly missed in commit 992f48a036 ("Support for 32 bit
ABI on 64 bit targets (only enabled Sparc64)").

Reported-by: Gregor Riepl <onitake@gmail.com>
Tested-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
Tested-by: Zach van Rijn <me@zv.io>
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1394
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Acked-by: Laurent Vivier <laurent@vivier.eu>
Message-Id: <20230327131910.78564-1-philmd@linaro.org>


  Commit: 450cb7ec2c5fda51b9650ca25e59ac9deeb60d1b
      
https://github.com/qemu/qemu/commit/450cb7ec2c5fda51b9650ca25e59ac9deeb60d1b
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-03-30 (Thu, 30 Mar 2023)

  Changed paths:
    M linux-user/mips/target_elf.h

  Log Message:
  -----------
  linux-user/mips: Use P5600 as default CPU to run NaN2008 ELF binaries

Per the release 6.06 revision history:

 5.03 August 21, 2013

 • ABS2008 and NAN2008 fields of Table 5.7 “FCSR RegisterField
   Descriptions” were optional in release 3 and could be R/W,
   but as of release 5 are required, read-only, and preset by
   hardware.

The P5600 core implements the release 5, and has the ABS2008
and NAN2008 bits set in CP1_fcr31. Therefore it is able to run
ELF binaries compiled with EF_MIPS_NAN2008, such the CIP United
Debian NaN2008 distribution:
http://repo.oss.cipunited.com/mipsel-nan2008/README.txt

In order to run such compiled binaries, select by default the
P5600 core when the ELF 'MIPS_NAN2008' flag is set.

Reported-by: Jiaxun Yang <jiaxun.yang@flygoat.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Acked-by: Laurent Vivier <laurent@vivier.eu>
Message-Id: <20230327162444.388-1-philmd@linaro.org>


  Commit: 3d85c7c15fc7ce986cf1a8e73da1217228f35685
      
https://github.com/qemu/qemu/commit/3d85c7c15fc7ce986cf1a8e73da1217228f35685
  Author: Jiaxun Yang <jiaxun.yang@flygoat.com>
  Date:   2023-03-30 (Thu, 30 Mar 2023)

  Changed paths:
    M hw/pci-host/gt64120.c

  Log Message:
  -----------
  hw/mips/gt64xxx_pci: Don't endian-swap GT_PCI0_CFGADDR

145e2198d749 ("hw/mips/gt64xxx_pci: Endian-swap using PCI_HOST_BRIDGE
MemoryRegionOps") converted CFGADDR/CFGDATA registers to use
PCI_HOST_BRIDGE's accessor facility and enabled byte swap for both
CFGADDR/CFGDATA register.

However CFGADDR as a ISD internal register is not controlled by
MByteSwap bit, it follows endian of all other ISD register, which
means it ties to little endian.

Move mapping of CFGADDR out of gt64120_update_pci_cfgdata_mapping
to disable endian-swapping.

Fixes: 145e2198d749 ("hw/mips/gt64xxx_pci: Endian-swap using PCI_HOST_BRIDGE 
MemoryRegionOps")
Reported-by: Nathan Chancellor <nathan@kernel.org>
Signed-off-by: Jiaxun Yang <jiaxun.yang@flygoat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Tested-by: Nathan Chancellor <nathan@kernel.org>
Message-Id: <20230223161958.48696-1-jiaxun.yang@flygoat.com>
[PMD: !!! Note this only fixes little-endian hosts !!! ]
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>


  Commit: 9d403d27bc85928aa9b8eb53fcceb2d7745d51ac
      
https://github.com/qemu/qemu/commit/9d403d27bc85928aa9b8eb53fcceb2d7745d51ac
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-03-30 (Thu, 30 Mar 2023)

  Changed paths:
    M tests/avocado/tuxrun_baselines.py

  Log Message:
  -----------
  tests/avocado: Enable TuxRun/mips64 (big-endian) test

Now that the previous commit ("hw/mips/gt64xxx_pci: Don't
endian-swap GT_PCI0_CFGADDR") fixed the issue accessing
the GT64120 PCI config-address register on big-endian
targets, we can enable this TuxRun test.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Acked-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20230223220404.63630-1-philmd@linaro.org>


  Commit: 95bf34186577a3fc8d8b686bf6bc253a7f0d8c61
      
https://github.com/qemu/qemu/commit/95bf34186577a3fc8d8b686bf6bc253a7f0d8c61
  Author: Titus Rwantare <titusr@google.com>
  Date:   2023-03-30 (Thu, 30 Mar 2023)

  Changed paths:
    M hw/i2c/pmbus_device.c

  Log Message:
  -----------
  hw/i2c: pmbus: block uninitialised string reads

Devices models calling pmbus_send_string can't be relied upon to
send a non-zero pointer. This logs an error and doesn't segfault.

Reviewed-by: Patrick Venture <venture@google.com>
Signed-off-by: Titus Rwantare <titusr@google.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20230322175513.1550412-5-titusr@google.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>


  Commit: aad3eb1ffeb65205153fb31d81d4f268186cde7a
      
https://github.com/qemu/qemu/commit/aad3eb1ffeb65205153fb31d81d4f268186cde7a
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-03-30 (Thu, 30 Mar 2023)

  Changed paths:
    M block/dmg-lzfse.c

  Log Message:
  -----------
  block/dmg: Ignore C99 prototype declaration mismatch from <lzfse.h>

When liblzfe (Apple LZFSE compression library) is present
(for example installed via 'brew') on Darwin, QEMU build
fails as:

  Has header "lzfse.h" : YES
  Library lzfse found: YES

    Dependencies
      lzo support                  : NO
      snappy support               : NO
      bzip2 support                : YES
      lzfse support                : YES
      zstd support                 : YES 1.5.2

    User defined options
      dmg                          : enabled
      lzfse                        : enabled

  [221/903] Compiling C object libblock.fa.p/block_dmg-lzfse.c.o
  FAILED: libblock.fa.p/block_dmg-lzfse.c.o
  /opt/homebrew/Cellar/lzfse/1.0/include/lzfse.h:56:43: error: this function 
declaration is not a prototype [-Werror,-Wstrict-prototypes]
  LZFSE_API size_t lzfse_encode_scratch_size();
                                            ^
                                             void
  /opt/homebrew/Cellar/lzfse/1.0/include/lzfse.h:94:43: error: this function 
declaration is not a prototype [-Werror,-Wstrict-prototypes]
  LZFSE_API size_t lzfse_decode_scratch_size();
                                            ^
                                             void
  2 errors generated.
  ninja: build stopped: subcommand failed.

This issue has been reported in the lzfse project in 2016:
https://github.com/lzfse/lzfse/issues/3#issuecomment-226574719

Since the project seems unmaintained, simply ignore the
strict-prototypes warning check for the <lzfse.h> header,
similarly to how we deal with the GtkItemFactoryCallback
prototype from <gtk/gtkitemfactory.h>, indirectly included
by <gtk/gtk.h>.

Cc: Julio Faracco <jcfaracco@gmail.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Stefan Weil <sw@weilnetz.de>
Message-Id: <20230327151349.97572-1-philmd@linaro.org>


  Commit: efcd0ec14b0fe9ee0ee70277763b2d538d19238d
      
https://github.com/qemu/qemu/commit/efcd0ec14b0fe9ee0ee70277763b2d538d19238d
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-03-30 (Thu, 30 Mar 2023)

  Changed paths:
    M block/dmg-lzfse.c
    M hw/i2c/pmbus_device.c
    M hw/pci-host/gt64120.c
    M linux-user/mips/target_elf.h
    M linux-user/syscall_defs.h
    M tests/avocado/tuxrun_baselines.py

  Log Message:
  -----------
  Merge tag 'misc-fixes-20230330' of https://github.com/philmd/qemu into staging

- linux-user:
  . Don't use 16-bit UIDs with SPARC V9
  . Pick MIPS3 CPU by default to run NaN2008 ELF binaries

- HW:
  . Fix invalid GT64120 north bridge endianness register swap
  . Prevent NULL pointer dereference by SMBus devices

- Buildsys:
  . Fix compiling with liblzfse on Darwin

# -----BEGIN PGP SIGNATURE-----
#
# iQIzBAABCAAdFiEE+qvnXhKRciHc/Wuy4+MsLN6twN4FAmQli+8ACgkQ4+MsLN6t
# wN5GJw/8CqzhxQgp11u2ArQlz/zsXJd4d6goIAIefJK1H80FXhqblz3ZBICci0Mu
# vA9CCayQ72r2NYR71QNvK6WWAJRnWbwFYH5arbvFRlCtDKV/n/DSSqsytY0Pd9eZ
# YlGJQ8tjO2PNa+K6J1ElUDRDk+xPnWlocewrb/Kxjhe6zk2RXQ9AZiGDj3+4vXlj
# rbPe5LpWS9zyl3TwF11wJSZOx2yX+D8JgR2klAgniZsk4NFJq1sluIFutFuU3JgQ
# N5m8bR3yfe8ImKYXyu3mKSsAuoyLmM2RKrFzWLjOmgYn2JL4Glj0QWWznNWolNSQ
# jJBHszcEUtwrr3ls5SiLf+I+fXbxyicqREQsvrzyy7UbaJTv0y8S+Ofg2dcqGCTD
# qN89MZDHbxko+J7RnNUtNfb5glrqAvtwhx6B3T+qnyJQ/ExtGqy69tKBCAYKbCWV
# YnMBVg6oP2TgcX34mC9z6iR38W2GBPfCyYXNSD2FgRRD1Gy8jCkR/RQOwaF2YNY3
# q5AInqW1I0LuLhrPOg1tRUu9PeGlEqcHs4OmqKSgTgE9JchgWCJrCtgxdgaAXkMK
# LKZbpnyNni70H5hkIGXIxnw0mUUFIdWJQNMHZeTxfh99x7kuDfxhnaxS2oCgJhdi
# k7RhVQybBFrcwL/cxaywKRDc5oj4aS46qYm08nP8JQIIjIbszRA=
# =SOYX
# -----END PGP SIGNATURE-----
# gpg: Signature made Thu 30 Mar 2023 14:17:35 BST
# gpg:                using RSA key FAABE75E12917221DCFD6BB2E3E32C2CDEADC0DE
# gpg: Good signature from "Philippe Mathieu-Daudé (F4BUG) <f4bug@amsat.org>" 
[full]
# Primary key fingerprint: FAAB E75E 1291 7221 DCFD  6BB2 E3E3 2C2C DEAD C0DE

* tag 'misc-fixes-20230330' of https://github.com/philmd/qemu:
  block/dmg: Ignore C99 prototype declaration mismatch from <lzfse.h>
  hw/i2c: pmbus: block uninitialised string reads
  tests/avocado: Enable TuxRun/mips64 (big-endian) test
  hw/mips/gt64xxx_pci: Don't endian-swap GT_PCI0_CFGADDR
  linux-user/mips: Use P5600 as default CPU to run NaN2008 ELF binaries
  linux-user/sparc: Don't use 16-bit UIDs on SPARC V9

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: b15bdc965106a10dbac2e50dc598ee7fd926ff14
      
https://github.com/qemu/qemu/commit/b15bdc965106a10dbac2e50dc598ee7fd926ff14
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-04-03 (Mon, 03 Apr 2023)

  Changed paths:
    M target/arm/gdbstub64.c
    M target/arm/internals.h
    M target/arm/tcg/pauth_helper.c

  Log Message:
  -----------
  target/arm: Fix non-TCG build failure by inlining pauth_ptr_mask()

aarch64_gdb_get_pauth_reg() -- although disabled since commit
5787d17a42 ("target/arm: Don't advertise aarch64-pauth.xml to
gdb") is still compiled in. It calls pauth_ptr_mask() which is
located in target/arm/tcg/pauth_helper.c, a TCG specific helper.

To avoid a linking error when TCG is not enabled:

  Undefined symbols for architecture arm64:
    "_pauth_ptr_mask", referenced from:
        _aarch64_gdb_get_pauth_reg in target_arm_gdbstub64.c.o
  ld: symbol(s) not found for architecture arm64
  clang: error: linker command failed with exit code 1 (use -v to see 
invocation)

- Inline pauth_ptr_mask() in aarch64_gdb_get_pauth_reg()
  (this is the single user),
- Rename pauth_ptr_mask_internal() as pauth_ptr_mask() and
  inline it in "internals.h",

Fixes: e995d5cce4 ("target/arm: Implement gdbstub pauth extension")
Suggested-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Fabiano Rosas <farosas@suse.de>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-id: 20230328212516.29592-1-philmd@linaro.org
[PMM: reinstated doc comment]
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 12148d442ec3f4386c8624ffcf44c61a8b344018
      
https://github.com/qemu/qemu/commit/12148d442ec3f4386c8624ffcf44c61a8b344018
  Author: Markus Armbruster <armbru@redhat.com>
  Date:   2023-04-03 (Mon, 03 Apr 2023)

  Changed paths:
    M hw/arm/boot.c

  Log Message:
  -----------
  hw/arm: do not free machine->fdt in arm_load_dtb()

At this moment, arm_load_dtb() can free machine->fdt when
binfo->dtb_filename is NULL. If there's no 'dtb_filename', 'fdt' will be
retrieved by binfo->get_dtb(). If get_dtb() returns machine->fdt, as is
the case of machvirt_dtb() from hw/arm/virt.c, fdt now has a pointer to
machine->fdt. And, in that case, the existing g_free(fdt) at the end of
arm_load_dtb() will make machine->fdt point to an invalid memory region.

Since monitor command 'dumpdtb' was introduced a couple of releases
ago, running it with any ARM machine that uses arm_load_dtb() will
crash QEMU.

Let's enable all arm_load_dtb() callers to use dumpdtb properly. Instead
of freeing 'fdt', assign it back to ms->fdt.

Cc: Peter Maydell <peter.maydell@linaro.org>
Cc: qemu-arm@nongnu.org
Fixes: bf353ad55590f ("qmp/hmp, device_tree.c: introduce dumpdtb")
Reported-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Daniel Henrique Barboza <danielhb413@gmail.com>
Message-id: 20230328165935.1512846-1-armbru@redhat.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 782781e85decfd85a6d9b064be741fb30d4fd307
      
https://github.com/qemu/qemu/commit/782781e85decfd85a6d9b064be741fb30d4fd307
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-03 (Mon, 03 Apr 2023)

  Changed paths:
    M target/arm/tcg/translate.c

  Log Message:
  -----------
  target/arm: Fix generated code for cpreg reads when HSTR is active

In commit 049edada we added some code to handle HSTR_EL2 traps, which
we did as an inline "conditionally branch over a
gen_exception_insn()".  Unfortunately this fails to take account of
the fact that gen_exception_insn() will set s->base.is_jmp to
DISAS_NORETURN.  That means that at the end of the TB we won't
generate the necessary code to handle the "branched over the trap and
continued normal execution" codepath.  The result is that the TCG
main loop thinks that we stopped execution of the TB due to a
situation that only happens when icount is enabled, and hits an
assertion. Explicitly set is_jmp back to DISAS_NEXT so we generate
the correct code for when execution continues past this insn.

Note that this only happens for cpreg reads; writes will call
gen_lookup_tb() which generates a valid end-of-TB.

Fixes: 049edada ("target/arm: Make HSTR_EL2 traps take priority over 
UNDEF-at-EL1")
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1551
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20230330101900.2320380-1-peter.maydell@linaro.org


  Commit: a0eaa126af3c5a43937a22c58cfb9bb36e4a5001
      
https://github.com/qemu/qemu/commit/a0eaa126af3c5a43937a22c58cfb9bb36e4a5001
  Author: Chris Rauer <crauer@google.com>
  Date:   2023-04-03 (Mon, 03 Apr 2023)

  Changed paths:
    M hw/ssi/xilinx_spi.c

  Log Message:
  -----------
  hw/ssi: Fix Linux driver init issue with xilinx_spi

The problem is that the Linux driver expects the master transaction inhibit
bit(R_SPICR_MTI) to be set during driver initialization so that it can
detect the fifo size but QEMU defaults it to zero out of reset.  The
datasheet indicates this bit is active on reset.

See page 25, SPI Control Register section:
https://www.xilinx.com/content/dam/xilinx/support/documents/ip_documentation/axi_quad_spi/v3_2/pg153-axi-quad-spi.pdf

Signed-off-by: Chris Rauer <crauer@google.com>
Message-id: 20230323182811.2641044-1-crauer@google.com
Reviewed-by: Edgar E. Iglesias <edgar@zeroasic.com>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 51a6dc9d394098e8f4141fad869a1ee9585f54f8
      
https://github.com/qemu/qemu/commit/51a6dc9d394098e8f4141fad869a1ee9585f54f8
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-03 (Mon, 03 Apr 2023)

  Changed paths:
    M hw/arm/boot.c
    M hw/ssi/xilinx_spi.c
    M target/arm/gdbstub64.c
    M target/arm/internals.h
    M target/arm/tcg/pauth_helper.c
    M target/arm/tcg/translate.c

  Log Message:
  -----------
  Merge tag 'pull-target-arm-20230403' of 
https://git.linaro.org/people/pmaydell/qemu-arm into staging

 * target/arm: Fix non-TCG build failure by inlining pauth_ptr_mask()
 * hw/arm: do not free machine->fdt in arm_load_dtb()
 * target/arm: Fix generated code for cpreg reads when HSTR is active
 * hw/ssi: Fix Linux driver init issue with xilinx_spi

# -----BEGIN PGP SIGNATURE-----
#
# iQJNBAABCAA3FiEE4aXFk81BneKOgxXPPCUl7RQ2DN4FAmQq+CwZHHBldGVyLm1h
# eWRlbGxAbGluYXJvLm9yZwAKCRA8JSXtFDYM3ux4EACRzqDTA3bbmuEDC4HKFEwv
# p4IrhG20iZWOQaieu7B+nrhXYakkcLxtGqG0cLFbb073B16SWRAxwli1sH+5mBNW
# l7GEF8WUelSPLZUlPmfl4YGH2ak5+kXI/G92+X7uE76Bv6wOJYZC5S1iNZN67fcd
# fQEfb9IcSmytCvsQLfLCvYzgpJKTuuikzkoCnT9O43qpPmUsBhSsBzyYPu0ZqsjV
# OgFMGNUc80rHc1kcLoLMMJBzI5S+iurnDKD+aNkMzCjtKPGkuIljbE6fPANXFxLb
# KbpVYjVIpPBAC33ZGO8NTkzqBuO7VNY0xWstfmepAsOdrorTLAOVMnC2NPsSZzOz
# kLd2wTT+64eMxt+flZETuU6HF8f6K94GRWPw8dC7Aj3XUvbSso+in863XD2OIKAr
# MCEm2Xi8ogb14uNx9Z4pUFIU6gKNUx8OGnWPLBngF4Kix4yP56nkbRAlg2ZII5bH
# HBny6+llC1NB94MjfSorTnNkk6J8Kd4Zhw8C9+dNbaDxCUBz3oCFwLoq6Cgx97F6
# 4J4An4PGF4evrJWBo9+9qOKtKapXlEmCSYs7oVavabxCCLI92PVoz96QH+6OK7+c
# h0PiqlfjPPSCnUcxsA9mr8zbp+P/ZxJbh0YI9ExP+zI03wE8gr4NMf7HYZQh0OLU
# Q+HARsmaAG3FONWbnHE97A==
# =oIZg
# -----END PGP SIGNATURE-----
# gpg: Signature made Mon 03 Apr 2023 17:00:44 BST
# gpg:                using RSA key E1A5C593CD419DE28E8315CF3C2525ED14360CDE
# gpg:                issuer "peter.maydell@linaro.org"
# gpg: Good signature from "Peter Maydell <peter.maydell@linaro.org>" [ultimate]
# gpg:                 aka "Peter Maydell <pmaydell@gmail.com>" [ultimate]
# gpg:                 aka "Peter Maydell <pmaydell@chiark.greenend.org.uk>" 
[ultimate]
# gpg:                 aka "Peter Maydell <peter@archaic.org.uk>" [ultimate]
# Primary key fingerprint: E1A5 C593 CD41 9DE2 8E83  15CF 3C25 25ED 1436 0CDE

* tag 'pull-target-arm-20230403' of 
https://git.linaro.org/people/pmaydell/qemu-arm:
  hw/ssi: Fix Linux driver init issue with xilinx_spi
  target/arm: Fix generated code for cpreg reads when HSTR is active
  hw/arm: do not free machine->fdt in arm_load_dtb()
  target/arm: Fix non-TCG build failure by inlining pauth_ptr_mask()

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 51d54503e8049512bdbe55d4f87caf97cd99ca23
      
https://github.com/qemu/qemu/commit/51d54503e8049512bdbe55d4f87caf97cd99ca23
  Author: Tianrui Zhao <zhaotianrui@loongson.cn>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    M hw/loongarch/virt.c

  Log Message:
  -----------
  hw/loongarch/virt: Fix virt_to_phys_addr function

The virt addr should mask TARGET_PHYS_ADDR_SPACE_BITS to
get the phys addr, and this is used by loading kernel elf.

Signed-off-by: Tianrui Zhao <zhaotianrui@loongson.cn>
Acked-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20230327112313.3042829-1-zhaotianrui@loongson.cn>
Signed-off-by: Song Gao <gaosong@loongson.cn>


  Commit: ec28dd6c6fc1366504003c25828953cac49e2da7
      
https://github.com/qemu/qemu/commit/ec28dd6c6fc1366504003c25828953cac49e2da7
  Author: tanhongze <tanhongze@loongson.cn>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    M target/loongarch/translate.c

  Log Message:
  -----------
  target/loongarch: Enables plugins to get instruction codes

Signed-off-by: tanhongze <tanhongze@loongson.cn>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Acked-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20230330124600.1523026-1-tanhongze@loongson.cn>
Signed-off-by: Song Gao <gaosong@loongson.cn>


  Commit: b8b6d3c04a54afb18865584e4a81aa17a5072c7a
      
https://github.com/qemu/qemu/commit/b8b6d3c04a54afb18865584e4a81aa17a5072c7a
  Author: Dr. David Alan Gilbert <dgilbert@redhat.com>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    M MAINTAINERS

  Log Message:
  -----------
  MAINTAINERS: Remove and change David Gilbert maintainer entries

I'm leaving Red Hat next week, so clean up the maintainer entries.

'virtiofs' is just the device code now, so is pretty small, and
Stefan is still a maintainer there.

'migration' still has Juan.

For 'HMP' I'll swing that over to my personal email.

Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Acked-by: Dr. David Alan Gilbert <dave@treblig.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Reviewed-by: Zhang Chen <chen.zhang@intel.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Message-id: 20230330095524.37691-1-dgilbert@redhat.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 4584e76c9ae0c03a562d4c9726fe7811ea3628c8
      
https://github.com/qemu/qemu/commit/4584e76c9ae0c03a562d4c9726fe7811ea3628c8
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    M hw/loongarch/virt.c
    M target/loongarch/translate.c

  Log Message:
  -----------
  Merge tag 'pull-loongarch-20230404' of https://gitlab.com/gaosong/qemu into 
staging

pull-loongarch-20230404

# -----BEGIN PGP SIGNATURE-----
#
# iLMEAAEIAB0WIQS4/x2g0v3LLaCcbCxAov/yOSY+3wUCZCwLXQAKCRBAov/yOSY+
# 3zwUA/9d2ddHxGEBTMyF45bzc9JxRF6HoILAwMLsmPWqspPgKdGuviMVewJLt5m8
# V75/BC6Sn9rhdkXALvZMRV6WQ2A16pByUaQtMYAXVsIoV8Mrpvm4GwJD1E0/cy5Q
# TwDTzpDfys9WsTVj0QlCPjp0JW+KA7Y6ArMUUCdCz41L2r7mPA==
# =ovw7
# -----END PGP SIGNATURE-----
# gpg: Signature made Tue 04 Apr 2023 12:34:53 BST
# gpg:                using RSA key B8FF1DA0D2FDCB2DA09C6C2C40A2FFF239263EDF
# gpg: Good signature from "Song Gao <m17746591750@163.com>" [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: B8FF 1DA0 D2FD CB2D A09C  6C2C 40A2 FFF2 3926 3EDF

* tag 'pull-loongarch-20230404' of https://gitlab.com/gaosong/qemu:
  target/loongarch: Enables plugins to get instruction codes
  hw/loongarch/virt: Fix virt_to_phys_addr function

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: f1426881a827a6d3f31b65616c4a8db1e9e7c45e
      
https://github.com/qemu/qemu/commit/f1426881a827a6d3f31b65616c4a8db1e9e7c45e
  Author: Eric Blake <eblake@redhat.com>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    M nbd/server.c

  Log Message:
  -----------
  nbd/server: Request TCP_NODELAY

Nagle's algorithm adds latency in order to reduce network packet
overhead on small packets.  But when we are already using corking to
merge smaller packets into transactional requests, the extra delay
from TCP defaults just gets in the way (see recent commit bd2cd4a4).

For reference, qemu as an NBD client already requests TCP_NODELAY (see
nbd_connect() in nbd/client-connection.c); as does libnbd as a client
[1], and nbdkit as a server [2].  Furthermore, the NBD spec recommends
the use of TCP_NODELAY [3].

[1] 
https://gitlab.com/nbdkit/libnbd/-/blob/a48a1142/generator/states-connect.c#L39
[2] https://gitlab.com/nbdkit/nbdkit/-/blob/45b72f5b/server/sockets.c#L430
[3] 
https://github.com/NetworkBlockDevice/nbd/blob/master/doc/proto.md#protocol-phases

CC: Florian Westphal <fw@strlen.de>
Signed-off-by: Eric Blake <eblake@redhat.com>
Message-Id: <20230404004047.142086-1-eblake@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>


  Commit: 899c3fc2dc66f6fd152322504eb321da4020ecd1
      
https://github.com/qemu/qemu/commit/899c3fc2dc66f6fd152322504eb321da4020ecd1
  Author: Alex Bennée <alex.bennee@linaro.org>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    M MAINTAINERS
    A scripts/coverage/compare_gcov_json.py

  Log Message:
  -----------
  scripts/coverage: initial coverage comparison script

This is a very rough and ready first pass at comparing gcovr's json
output between two different runs. At the moment it will give you a
file level diff between two runs but hopefully it wont be too hard to
extend to give better insight.

After generating the coverage results you run with something like:

  ./scripts/coverage/compare_gcov_json.py \
    -a ./builds/gcov.config1/coverage.json \
    -b ./builds/gcov.config2/coverage.json

My hope is we can use this to remove some redundancy from testing as
well as evaluate if new tests are actually providing additional
coverage or just burning our precious CI time.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Cc: Kautuk Consul <kconsul@linux.vnet.ibm.com>
Acked-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20230403134920.2132362-2-alex.bennee@linaro.org>


  Commit: 6cda41daa2162b8e1048124655ba02a8c2b762b4
      
https://github.com/qemu/qemu/commit/6cda41daa2162b8e1048124655ba02a8c2b762b4
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    M linux-user/elfload.c

  Log Message:
  -----------
  Revert "linux-user/arm: Take more care allocating commpage"

This reverts commit 4f5c67f8df7f26e559509c68c45e652709edd23f.

This exposes bugs in target_mmap et al with respect to overflow
with the final page of the guest address space.  To be fixed in
the next development cycle.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: b846ad627e393182ccda78d0abd8da72032b04b5
      
https://github.com/qemu/qemu/commit/b846ad627e393182ccda78d0abd8da72032b04b5
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    M gdbstub/meson.build

  Log Message:
  -----------
  gdbstub: Only build libgdb_user.fa / libgdb_softmmu.fa if necessary

It is pointless to build libgdb_user.fa in a system-only build
(or libgdb_softmmu.fa in a user-only build). Besides, in some
restricted build configurations, some APIs might be restricted /
not available. Example in a KVM-only builds where TCG is disabled:

  $ ninja qemu-system-x86_64
  [99/2187] Compiling C object gdbstub/libgdb_user.fa.p/user.c.o
  FAILED: gdbstub/libgdb_user.fa.p/user.c.o
  ../../gdbstub/user.c: In function ‘gdb_breakpoint_insert’:
  ../../gdbstub/user.c:438:19: error: implicit declaration of function 
‘cpu_breakpoint_insert’; did you mean ‘gdb_breakpoint_insert’? 
[-Werror=implicit-function-declaration]
    438 |             err = cpu_breakpoint_insert(cpu, addr, BP_GDB, NULL);
        |                   ^~~~~~~~~~~~~~~~~~~~~
        |                   gdb_breakpoint_insert
  ../../gdbstub/user.c:438:19: error: nested extern declaration of 
‘cpu_breakpoint_insert’ [-Werror=nested-externs]
  ../../gdbstub/user.c: In function ‘gdb_breakpoint_remove’:
  ../../gdbstub/user.c:459:19: error: implicit declaration of function 
‘cpu_breakpoint_remove’; did you mean ‘gdb_breakpoint_remove’? 
[-Werror=implicit-function-declaration]
    459 |             err = cpu_breakpoint_remove(cpu, addr, BP_GDB);
        |                   ^~~~~~~~~~~~~~~~~~~~~
        |                   gdb_breakpoint_remove
  ../../gdbstub/user.c:459:19: error: nested extern declaration of 
‘cpu_breakpoint_remove’ [-Werror=nested-externs]
  cc1: all warnings being treated as errors
  ninja: build stopped: subcommand failed.

Fixes: 61b2e136db ("gdbstub: only compile gdbstub twice for whole build")
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20230329161852.84992-1-philmd@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20230403134920.2132362-3-alex.bennee@linaro.org>


  Commit: 0beaebc0410ab5fb893899aadf7947854e98d19a
      
https://github.com/qemu/qemu/commit/0beaebc0410ab5fb893899aadf7947854e98d19a
  Author: Alex Bennée <alex.bennee@linaro.org>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    M gdbstub/gdbstub.c

  Log Message:
  -----------
  gdbstub: don't report auxv feature unless on Linux

The later handler if conditionally compiled only for Linux but we
forgot to ensure we don't advertise it lest we confuse our BSD
brethren.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Fixes: 51c623b0de ("gdbstub: add support to Xfer:auxv:read: packet")
Reported-by: Warner Losh <imp@bsdimp.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Warner Losh <imp@bsdimp.com>
Tested-by: Warner Losh <imp@bsdimp.com>
Message-Id: <20230403134920.2132362-4-alex.bennee@linaro.org>


  Commit: 3be8c03460eaf7a43191ee1ccdc28f865976bb53
      
https://github.com/qemu/qemu/commit/3be8c03460eaf7a43191ee1ccdc28f865976bb53
  Author: Alex Bennée <alex.bennee@linaro.org>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    M MAINTAINERS

  Log Message:
  -----------
  MAINTAINERS: add a section for policy documents

We don't update these often but now at least we have a few like minded
individuals keeping reviewers eye out for changes.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Warner Losh <imp@bsdimp.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Kashyap Chamarthy <kchamart@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20230403134920.2132362-5-alex.bennee@linaro.org>


  Commit: 452b3eeacc7bd6179ae1a5451576738a851e2dcc
      
https://github.com/qemu/qemu/commit/452b3eeacc7bd6179ae1a5451576738a851e2dcc
  Author: Alex Bennée <alex.bennee@linaro.org>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    A .git-blame-ignore-revs

  Log Message:
  -----------
  metadata: add .git-blame-ignore-revs

Someone mentioned this on IRC so I thought I would try it out with a
few commits that are pure code style fixes.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20230403134920.2132362-7-alex.bennee@linaro.org>


  Commit: 6e3be02291acec5d8edc89728fff455014d58a32
      
https://github.com/qemu/qemu/commit/6e3be02291acec5d8edc89728fff455014d58a32
  Author: Marco Liebel <quic_mliebel@quicinc.com>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

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

  Log Message:
  -----------
  Use hexagon toolchain version 16.0.0

Signed-off-by: Marco Liebel <quic_mliebel@quicinc.com>
Reviewed-by: Brian Cain <bcain@quicinc.com>
Message-Id: <20230329142108.1199509-1-quic_mliebel@quicinc.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20230403134920.2132362-8-alex.bennee@linaro.org>


  Commit: 90834f5de6a23011c3c3e45db851914b52604262
      
https://github.com/qemu/qemu/commit/90834f5de6a23011c3c3e45db851914b52604262
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    M tests/qemu-iotests/meson.build

  Log Message:
  -----------
  tests/qemu-iotests: explicitly invoke 'check' via 'python'

The 'check' script will use "#!/usr/bin/env python3" by default
to locate python, but this doesn't work in distros which lack a
bare 'python3' binary like NetBSD.

We need to explicitly invoke 'check' by referring to the 'python'
variable in meson, which resolves to the detected python binary
that QEMU intends to use.

This fixes a regression introduced by

  commit 51ab5f8bd795d8980351f8531e54995ff9e6d163
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   Wed Mar 15 17:43:23 2023 +0000

    iotests: register each I/O test separately with meson

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20230329124539.822022-1-berrange@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20230403134920.2132362-9-alex.bennee@linaro.org>


  Commit: bdd53274f2c84b56dd4257299024cb97f5b66077
      
https://github.com/qemu/qemu/commit/bdd53274f2c84b56dd4257299024cb97f5b66077
  Author: Daniel P. Berrangé <berrange@redhat.com>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    M tests/vm/netbsd

  Log Message:
  -----------
  tests/vm: use the default system python for NetBSD

Currently our NetBSD VM recipe requests instal of the python37 package
and explicitly tells QEMU to use that version of python. Since the
NetBSD base ISO was updated to version 9.3 though, the default system
python version is 3.9 which is sufficiently new for QEMU to rely on.
Rather than requesting an older python, just test against the default
system python which is what most users will have.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20230329124601.822209-1-berrange@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20230403134920.2132362-10-alex.bennee@linaro.org>


  Commit: fc9988916aaf97f29c0a1079677bbd9efc9ca3bc
      
https://github.com/qemu/qemu/commit/fc9988916aaf97f29c0a1079677bbd9efc9ca3bc
  Author: Alex Bennée <alex.bennee@linaro.org>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

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

  Log Message:
  -----------
  gitlab: fix typo

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


  Commit: c8cb603293fd329f2a62ade76ec9de3f462fc5c3
      
https://github.com/qemu/qemu/commit/c8cb603293fd329f2a62ade76ec9de3f462fc5c3
  Author: David Woodhouse <dwmw@amazon.co.uk>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    A tests/avocado/kvm_xen_guest.py

  Log Message:
  -----------
  tests/avocado: Test Xen guest support under KVM

Exercise guests with a few different modes for interrupt delivery. In
particular we want to cover:

 • Xen event channel delivery via GSI to the I/O APIC
 • Xen event channel delivery via GSI to the i8259 PIC
 • MSIs routed to PIRQ event channels
 • GSIs routed to PIRQ event channels

As well as some variants of normal non-Xen stuff like MSI to vAPIC and
PCI INTx going to the I/O APIC and PIC, which ought to still work even
in Xen mode.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20230403134920.2132362-12-alex.bennee@linaro.org>


  Commit: c83574392e0af108a643347712564f6749906413
      
https://github.com/qemu/qemu/commit/c83574392e0af108a643347712564f6749906413
  Author: Weiwei Li <liweiwei@iscas.ac.cn>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    M accel/tcg/tcg-accel-ops.c

  Log Message:
  -----------
  accel/tcg: Fix overwrite problems of tcg_cflags

CPUs often set CF_PCREL in tcg_cflags before qemu_init_vcpu(), in which
tcg_cflags will be overwrited by tcg_cpu_init_cflags().

Fixes: 4be790263ffc ("accel/tcg: Replace `TARGET_TB_PCREL` with `CF_PCREL`")
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Weiwei Li <liweiwei@iscas.ac.cn>
Signed-off-by: Junqiang Wang <wangjunqiang@iscas.ac.cn>
Message-Id: <20230331150609.114401-6-liweiwei@iscas.ac.cn>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 3371802fba3f7be4465f8a5e5777d43d556676ef
      
https://github.com/qemu/qemu/commit/3371802fba3f7be4465f8a5e5777d43d556676ef
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    M accel/tcg/cpu-exec.c

  Log Message:
  -----------
  accel/tcg: Fix jump cache set in cpu_exec_loop

Assign pc and use store_release to assign tb.

Fixes: 2dd5b7a1b91 ("accel/tcg: Move jmp-cache `CF_PCREL` checks to caller")
Reported-by: Weiwei Li <liweiwei@iscas.ac.cn>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 1ffbe5d681b06ea95b1728fc556899f63834553a
      
https://github.com/qemu/qemu/commit/1ffbe5d681b06ea95b1728fc556899f63834553a
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    M tcg/sparc64/tcg-target.c.inc

  Log Message:
  -----------
  tcg/sparc64: Disable direct linking for goto_tb

Something is wrong with this code, and also wrong with gdb on the
sparc systems to which I have access, so I cannot debug it either.
Disable for now, so the release is not broken.

Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 992473749f7cf127e71bb8263c02577cca303055
      
https://github.com/qemu/qemu/commit/992473749f7cf127e71bb8263c02577cca303055
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    M nbd/server.c

  Log Message:
  -----------
  Merge tag 'pull-nbd-2023-04-04' of https://repo.or.cz/qemu/ericb into staging

nbd patches for 2023-04-04

- Eric Blake: use TCP_NODELAY in nbd server, as followup to corking

# -----BEGIN PGP SIGNATURE-----
#
# iQEzBAABCAAdFiEEccLMIrHEYCkn0vOqp6FrSiUnQ2oFAmQsIuAACgkQp6FrSiUn
# Q2o/Vwf/UMxOlxHEEQsS5lkG6qbkL47GUxfxsXfd0yvU+ihFALrKEZrOlzYDZWKj
# hww8Uqlh9lCjnTO8ekYl2eetNmDwMsV6mcCaiJ0aYZNAI87l4ekFy0Jfx58D36vv
# j9HSELr09KjodoCISLDAwJCgs/GyQKmO+FzqvovbJH8nU0h24VEYgI6b5PHmII8U
# LN0cm9xLO46KCTlWz7Y4Rt047rFVkh++n7l/nNjviJGm63BO2H9BCd3heea4uhdy
# +7MR1Tb9VuMGe0PWews/SdZKwtCzClTCgmZw8MrrSs/39Qw2EZYXA9X64Qs97oKg
# GbajABGVSrJSFkGTMhIFK9xgLZjaKQ==
# =KZJ+
# -----END PGP SIGNATURE-----
# gpg: Signature made Tue 04 Apr 2023 14:15:12 BST
# gpg:                using RSA key 71C2CC22B1C4602927D2F3AAA7A16B4A2527436A
# gpg: Good signature from "Eric Blake <eblake@redhat.com>" [full]
# gpg:                 aka "Eric Blake (Free Software Programmer) 
<ebb9@byu.net>" [full]
# gpg:                 aka "[jpeg image of size 6874]" [full]
# Primary key fingerprint: 71C2 CC22 B1C4 6029 27D2  F3AA A7A1 6B4A 2527 436A

* tag 'pull-nbd-2023-04-04' of https://repo.or.cz/qemu/ericb:
  nbd/server: Request TCP_NODELAY

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 8a712df4d4d736b7fe6441626677bfd271d95b15
      
https://github.com/qemu/qemu/commit/8a712df4d4d736b7fe6441626677bfd271d95b15
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    A .git-blame-ignore-revs
    M .gitlab-ci.d/base.yml
    M MAINTAINERS
    M gdbstub/gdbstub.c
    M gdbstub/meson.build
    A scripts/coverage/compare_gcov_json.py
    A tests/avocado/kvm_xen_guest.py
    M tests/docker/dockerfiles/debian-hexagon-cross.docker
    M tests/qemu-iotests/meson.build
    M tests/vm/netbsd

  Log Message:
  -----------
  Merge tag 'pull-for-8.0-040423-2' of https://gitlab.com/stsquad/qemu into 
staging

Final test and misc fixes:

  - add basic coverage analysis script
  - gdbstub only build one of libgdb_user/softmmu
  - don't break BSD gdb by advertising AUXV feature
  - add MAINTAINERS section for policy docs
  - update hexagon toolchain
  - explicitly invoke iotests with python for BSDs benefit
  - use system python on NetBSD
  - add some tests for the new KVM Xen guest support

# -----BEGIN PGP SIGNATURE-----
#
# iQEzBAABCgAdFiEEZoWumedRZ7yvyN81+9DbCVqeKkQFAmQsOscACgkQ+9DbCVqe
# KkSm6Af/X+vvzdlmXgGt3uw2odqV6KMfXEkds5lHZIIqQhsLvV0mrkTcIKTswWhL
# JRC7jiPmn5hfwvgDy5WfcczGzELSqfBgqHsm9zqVcboTGgJfr2eMtoUlMCQi6lFR
# InomhTb+VzPxuUx82oryufm7bsopG8C+HVr3ZtHNFI3usIrLlscZstkiYMueGUCb
# PJ60mykfd7hegaTgwKNbUXqZ+Oy/u4W7UPWBkrR7xJzW623t7S5EWV2ZNbdJgKO6
# utY3VGikir/OcnNKy7NuXp2t3K+5KALFZW3Jbav8hVLy5biMGYUF8886B0FL2m+n
# E44J67crEYNJMamtzYJ+FdkGEMrS5Q==
# =yCka
# -----END PGP SIGNATURE-----
# gpg: Signature made Tue 04 Apr 2023 15:57:11 BST
# gpg:                using RSA key 6685AE99E75167BCAFC8DF35FBD0DB095A9E2A44
# gpg: Good signature from "Alex Bennée (Master Work Key) 
<alex.bennee@linaro.org>" [full]
# Primary key fingerprint: 6685 AE99 E751 67BC AFC8  DF35 FBD0 DB09 5A9E 2A44

* tag 'pull-for-8.0-040423-2' of https://gitlab.com/stsquad/qemu:
  tests/avocado: Test Xen guest support under KVM
  gitlab: fix typo
  tests/vm: use the default system python for NetBSD
  tests/qemu-iotests: explicitly invoke 'check' via 'python'
  Use hexagon toolchain version 16.0.0
  metadata: add .git-blame-ignore-revs
  MAINTAINERS: add a section for policy documents
  gdbstub: don't report auxv feature unless on Linux
  gdbstub: Only build libgdb_user.fa / libgdb_softmmu.fa if necessary
  scripts/coverage: initial coverage comparison script

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 7d0334e49111787ae19fbc8d29ff6e7347f0605e
      
https://github.com/qemu/qemu/commit/7d0334e49111787ae19fbc8d29ff6e7347f0605e
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    M accel/tcg/cpu-exec.c
    M accel/tcg/tcg-accel-ops.c
    M linux-user/elfload.c
    M tcg/sparc64/tcg-target.c.inc

  Log Message:
  -----------
  Merge tag 'pull-tcg-20230404' of https://gitlab.com/rth7680/qemu into staging

Revert "linux-user/arm: Take more care allocating commpage"
accel/tcg: Fix jump cache set in cpu_exec_loop
accel/tcg: Fix initialization of CF_PCREL in tcg_cflags
tcg/sparc64: Disable direct jumps from goto_tb

# -----BEGIN PGP SIGNATURE-----
#
# iQFRBAABCgA7FiEEekgeeIaLTbaoWgXAZN846K9+IV8FAmQsRwAdHHJpY2hhcmQu
# aGVuZGVyc29uQGxpbmFyby5vcmcACgkQZN846K9+IV8QqQf6AnUwdkp0zEUevshL
# gPlns3u5RZIv/i5L1VIkYrLbaFQtwD17CfBACB2MxZI6lbPK4jT++FlDiWJ1ak7i
# 4p9Q5KOAbjAxQgQXy51NbEzg5AoIYP5HEg2cnjfEg0PltRVTn0bdbBVbCG/erDXa
# NfEOPtHSU+6B8jRjp0MRvFv4Y4CJ3nQ7eZ6TMI3oGOk44DOs22Fn330E8wT2vpt4
# ayJNDN8F0FZ5wGZdJIAsMSgauaGJwY/ZG1KX8TGQb7nsRn5lbpEgoOUCd0WUGdx6
# 3YsoELaZoHZhAlvVNjbOMBp3fZSH2owb08By9vU7ZMjPOnsjZQz6TuxR6NNl+04G
# tPi44Q==
# =+m7M
# -----END PGP SIGNATURE-----
# gpg: Signature made Tue 04 Apr 2023 16:49:20 BST
# gpg:                using RSA key 7A481E78868B4DB6A85A05C064DF38E8AF7E215F
# gpg:                issuer "richard.henderson@linaro.org"
# gpg: Good signature from "Richard Henderson <richard.henderson@linaro.org>" 
[full]
# Primary key fingerprint: 7A48 1E78 868B 4DB6 A85A  05C0 64DF 38E8 AF7E 215F

* tag 'pull-tcg-20230404' of https://gitlab.com/rth7680/qemu:
  tcg/sparc64: Disable direct linking for goto_tb
  accel/tcg: Fix jump cache set in cpu_exec_loop
  accel/tcg: Fix overwrite problems of tcg_cflags
  Revert "linux-user/arm: Take more care allocating commpage"

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 56adee407fc564da19e49cfe18e20e3da92320be
      
https://github.com/qemu/qemu/commit/56adee407fc564da19e49cfe18e20e3da92320be
  Author: Peter Xu <peterx@redhat.com>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    M accel/kvm/kvm-all.c

  Log Message:
  -----------
  kvm: dirty-ring: Fix race with vcpu creation

It's possible that we want to reap a dirty ring on a vcpu that is during
creation, because the vcpu is put onto list (CPU_FOREACH visible) before
initialization of the structures.  In this case:

qemu_init_vcpu
    x86_cpu_realizefn
        cpu_exec_realizefn
            cpu_list_add      <---- can be probed by CPU_FOREACH
        qemu_init_vcpu
            cpus_accel->create_vcpu_thread(cpu);
                kvm_init_vcpu
                    map kvm_dirty_gfns  <--- kvm_dirty_gfns valid

Don't try to reap dirty ring on vcpus during creation or it'll crash.

Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2124756
Reported-by: Xiaohui Li <xiaohli@redhat.com>
Signed-off-by: Peter Xu <peterx@redhat.com>
Message-Id: 
<1d14deb6684bcb7de1c9633c5bd21113988cc698.1676563222.git.huangy81@chinatelecom.cn>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: b5fba99ec7969054ab2f3727d2df014b5b72e4f1
      
https://github.com/qemu/qemu/commit/b5fba99ec7969054ab2f3727d2df014b5b72e4f1
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-04 (Tue, 04 Apr 2023)

  Changed paths:
    M accel/kvm/kvm-all.c

  Log Message:
  -----------
  Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging

Fix race condition that can cause a crash at startup.

# -----BEGIN PGP SIGNATURE-----
#
# iQFIBAABCAAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAmQsVJoUHHBib256aW5p
# QHJlZGhhdC5jb20ACgkQv/vSX3jHroPnWgf/SRc2eAtWtLDkIhjszkfK8TVeQzzS
# wD0pobk/8MNyj+EW/wV+/HsR3U8oNvHsAnzB4+RKd7YGhPxHwDvqC+hNm5HS8u4g
# gY+LhvwirFB7RkP0dDd4yt1BX6emylyFjUpM+QxlrwuorQ5wfRaIh77ex349rnq8
# fp8Kw53VpBWscyp3S3AYlQMRN3NGPH9JdeDtWap0AHFGA+PeBR2VCOuJ3xUJF62T
# xyacGGe3JXNUcFJVKR8PMDBO1FeJgl4Y7k0idHK/mcpOPj6HYFN3EV863XdP8Foa
# mv9h2DXRuIpFJEj//0GQAVDw+F8BFofjZaPeRNAoX+oE3I4CnZhVC5uG/w==
# =Ttdf
# -----END PGP SIGNATURE-----
# gpg: Signature made Tue 04 Apr 2023 17:47:22 BST
# gpg:                using RSA key F13338574B662389866C7682BFFBD25F78C7AE83
# gpg:                issuer "pbonzini@redhat.com"
# gpg: Good signature from "Paolo Bonzini <bonzini@gnu.org>" [full]
# gpg:                 aka "Paolo Bonzini <pbonzini@redhat.com>" [full]
# Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4  E2F7 7E15 100C CD36 69B1
#      Subkey fingerprint: F133 3857 4B66 2389 866C  7682 BFFB D25F 78C7 AE83

* tag 'for-upstream' of https://gitlab.com/bonzini/qemu:
  kvm: dirty-ring: Fix race with vcpu creation

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: b1ab8f9cc554e3c92200d44ce9d65bab50be183e
      
https://github.com/qemu/qemu/commit/b1ab8f9cc554e3c92200d44ce9d65bab50be183e
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-05 (Wed, 05 Apr 2023)

  Changed paths:
    M hw/i386/intel_iommu.c
    M softmmu/memory.c

  Log Message:
  -----------
  Revert "memory: Optimize replay of guest mapping"

This reverts commit 6da24341866fa940fd7d575788a2319514941c77
("memory: Optimize replay of guest mapping").

This change breaks the mps3-an547 board under TCG (and
probably other TCG boards using an IOMMU), which now
assert:

$ ./build/x86/qemu-system-arm --machine mps3-an547 -serial stdio
-kernel /tmp/an547-mwe/build/test.elf
qemu-system-arm: ../../softmmu/memory.c:1903:
memory_region_register_iommu_notifier: Assertion `n->end <=
memory_region_size(mr)' failed.

This is because tcg_register_iommu_notifier() registers
an IOMMU notifier which covers the entire address space,
so the assertion added in this commit is not correct.

For the 8.0 release, just revert this commit as it is
only an optimization.

Fixes: 6da24341866f ("memory: Optimize replay of guest mapping")
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-id: 
917c1c552b2d1b732f9a86c6a90684c3a5e4cada.1680640587.git.mst@redhat.com


  Commit: c6f3cbca32bde9ee94d9949aa63e8a7ef2d7bc5b
      
https://github.com/qemu/qemu/commit/c6f3cbca32bde9ee94d9949aa63e8a7ef2d7bc5b
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-05 (Wed, 05 Apr 2023)

  Changed paths:
    M VERSION

  Log Message:
  -----------
  Update version for v8.0.0-rc3 release

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: cc40b8b8448de351f0d15412f20d428712b2e207
      
https://github.com/qemu/qemu/commit/cc40b8b8448de351f0d15412f20d428712b2e207
  Author: Stefan Berger <stefanb@linux.ibm.com>
  Date:   2023-04-06 (Thu, 06 Apr 2023)

  Changed paths:
    M util/error.c

  Log Message:
  -----------
  util/error: Fix use-after-free errors reported by Coverity

Fix use-after-free errors in the code path that called error_handle(). A
call to error_handle() will now either free the passed Error 'err' or
assign it to '*errp' if '*errp' is currently NULL. This ensures that 'err'
either has been freed or is assigned to '*errp' if this function returns.
Adjust the two callers of this function to not assign the 'err' to '*errp'
themselves, since this is now handled by error_handle().

Fixes: commit 3ffef1a55ca3 ("error: add global &error_warn destination")
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-id: 20230406154347.4100700-1-stefanb@linux.ibm.com


  Commit: a253231fbede6e69bf287afd90f67347a7383aab
      
https://github.com/qemu/qemu/commit/a253231fbede6e69bf287afd90f67347a7383aab
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-09 (Sun, 09 Apr 2023)

  Changed paths:
    M target/ppc/translate.c

  Log Message:
  -----------
  target/ppc: Fix temp usage in gen_op_arith_modw

Fix a crash writing to 't3', which is now a constant.
Instead, write the result of the remu to 't0'.

Fixes: 7058ff5231a ("target/ppc: Avoid tcg_const_* in translate.c")
Reported-by: Nicholas Piggin <npiggin@gmail.com>
Reviewed-by: Anton Johansson <anjo@rev.ng>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
[ clg: amend commit log s/t1/t0/ ]
Signed-off-by: Cédric Le Goater <clg@kaod.org>


  Commit: 64f1c63d87208e28e8e38c4ab514ada1728960ef
      
https://github.com/qemu/qemu/commit/64f1c63d87208e28e8e38c4ab514ada1728960ef
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-10 (Mon, 10 Apr 2023)

  Changed paths:
    M util/error.c

  Log Message:
  -----------
  Merge tag 'pull_error_handle_fix_use_after_free.v1' of 
https://github.com/stefanberger/qemu-tpm into staging

Fix use-after-free in util/error.c

# -----BEGIN PGP SIGNATURE-----
#
# iQEzBAABCAAdFiEEuBi5yt+QicLVzsZrda1lgCoLQhEFAmQu9xYACgkQda1lgCoL
# QhFX2ggAnZZF2KgvVSRh67X+3VdVsg+ifFc/k7kMq74UhTr4lXojPCcgSPu8PaRZ
# Mv0I+xNv9pjEU7frwi6vc9DXyhWrVTLgW4TugVBgsB75CnjvFN3lw3T9goCc1h4m
# eO7c6SMdUpyQG7ar1mqt2m0bjVz85OAsNYBiAjxfyrKzX6B/mHyru5re/8VC3Hho
# IJWGlS51IxrVq44qjB8Lh3voXiEru7dX/y86fWqAiy61pON6+A43rBDIb9JOVv8q
# QiHqXVjs9/ax9ZNRudlgJ7bAlUFp6vD9xBm6ztlABI9MCYZeibU6jPMLCBYnGiJq
# f//Sqqd4WsqnhOJOLYeMNfFMElIXEw==
# =uu4l
# -----END PGP SIGNATURE-----
# gpg: Signature made Thu 06 Apr 2023 17:45:10 BST
# gpg:                using RSA key B818B9CADF9089C2D5CEC66B75AD65802A0B4211
# gpg: Good signature from "Stefan Berger <stefanb@linux.vnet.ibm.com>" 
[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: B818 B9CA DF90 89C2 D5CE  C66B 75AD 6580 2A0B 4211

* tag 'pull_error_handle_fix_use_after_free.v1' of 
https://github.com/stefanberger/qemu-tpm:
  util/error: Fix use-after-free errors reported by Coverity

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 08dede07030973c1053868bc64de7e10bfa02ad6
      
https://github.com/qemu/qemu/commit/08dede07030973c1053868bc64de7e10bfa02ad6
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-10 (Mon, 10 Apr 2023)

  Changed paths:
    M target/ppc/translate.c

  Log Message:
  -----------
  Merge tag 'pull-ppc-20230409' of https://github.com/legoater/qemu into staging

ppc queue:

* Fix regresion with prefix instructions and pcrel addressing

# -----BEGIN PGP SIGNATURE-----
#
# iQIzBAABCAAdFiEEoPZlSPBIlev+awtgUaNDx8/77KEFAmQy9H8ACgkQUaNDx8/7
# 7KGjBg/9EUOcf3QzS9v7GCgBjvHZ0II4bIB4qboNiBhmtLIpDoBC2el7gwSZV82a
# qKrl+UMTAIs6DJQNR5Gcj69OUbAjGyaBNuC3I9lI8vzWn3aDJRTpL5WttyfnpLsO
# bVR8Q+dDzIcZA/ymDw7AQfPvyCm6yrVXOUCCZNBpGjp98240SuDoJ7p6FpKFc8fT
# 5amMllLksgJDk4cLv6xM1zQRXuCyYf9D1CS0CHAgxs+zvg9EnQcVBzIMZ9LfGAPU
# JxU9Kj/clMyZx0ADtH9PkdgvHoMWRXlTuMQmfv4dzWZfy1as9Ks3Pfzt3Z4hx7t7
# TqIiFGuJdI/fDHcKltwnLwdZ8GJwo+tXFP97VNFWtmNN1PWos9dwxrU04r0+ZxA/
# 33NTDyOMidp9bnMlcld/pyCPfo5Psht1xlHSaikxcYHt0z1Yc/TR6/u+aiz9AGnf
# FVxy1AlkY0rtKtmCozkcFtQe8yCogIfYnXe0ng3j3k45QXk03VmtiO4WLw8l0qwR
# oB5FAAaokCoINwYIfLofR7jg7ciaISI+r4KkgOtOC7eN6O42magCkSPa5FxU9+WA
# sZIq0iBpRxenv0+tDrXpV16Uy0H2N3oGOdUpUbO6wiHxhO9rj71preSr0eLhipZJ
# c3jcf4p+MyXD1RI/62TuSIYWG5RwfA8XCyA/bd1bk2cBQ8GA+S0=
# =BKGb
# -----END PGP SIGNATURE-----
# gpg: Signature made Sun 09 Apr 2023 18:23:11 BST
# gpg:                using RSA key A0F66548F04895EBFE6B0B6051A343C7CFFBECA1
# gpg: Good signature from "Cédric Le Goater <clg@kaod.org>" [undefined]
# 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: A0F6 6548 F048 95EB FE6B  0B60 51A3 43C7 CFFB ECA1

* tag 'pull-ppc-20230409' of https://github.com/legoater/qemu:
  target/ppc: Fix temp usage in gen_op_arith_modw

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 6a3b1e440bc92ec8274cd1dd2e03c9bf411b2eb8
      
https://github.com/qemu/qemu/commit/6a3b1e440bc92ec8274cd1dd2e03c9bf411b2eb8
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-10 (Mon, 10 Apr 2023)

  Changed paths:
    M target/arm/ptw.c

  Log Message:
  -----------
  target/arm: PTE bit GP only applies to stage1

Only perform the extract of GP during the stage1 walk.

Reported-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 20230407185149.3253946-2-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 8539dc00552e8ea60420856fc1262c8299bc6308
      
https://github.com/qemu/qemu/commit/8539dc00552e8ea60420856fc1262c8299bc6308
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-10 (Mon, 10 Apr 2023)

  Changed paths:
    M target/arm/ptw.c

  Log Message:
  -----------
  target/arm: Copy guarded bit in combine_cacheattrs

The guarded bit comes from the stage1 walk.

Fixes: Coverity CID 1507929
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 20230407185149.3253946-3-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 26aeb3b5894e0f3d17354e306002c59fa060e1c5
      
https://github.com/qemu/qemu/commit/26aeb3b5894e0f3d17354e306002c59fa060e1c5
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-10 (Mon, 10 Apr 2023)

  Changed paths:
    M target/arm/ptw.c

  Log Message:
  -----------
  Merge tag 'pull-target-arm-20230410' of 
https://git.linaro.org/people/pmaydell/qemu-arm into staging

target-arm: Fix bug where we weren't initializing
            guarded bit state when combining S1/S2 attrs

# -----BEGIN PGP SIGNATURE-----
#
# iQJNBAABCAA3FiEE4aXFk81BneKOgxXPPCUl7RQ2DN4FAmQ0GTsZHHBldGVyLm1h
# eWRlbGxAbGluYXJvLm9yZwAKCRA8JSXtFDYM3koqD/4t7D6v7GyuefCbp8dEPj/S
# FjA6CqkkD3QnVAgqTD/PVW9X3hJsUQaV2Nk+x0BUcvHpOdgpIY+wKIh5lUYm1Sma
# JoXHTQ8i3jndIIbQqpCbBS9KdM0CeAvAm50ohAmKy4B3HIW31mhxTXN0ORA7cedT
# nPGsbAZ1K4pTx/c0n/7uwA91PJb4mKzFJ0Catl/IUcuPRpHsxUHcd82XrSwHfuBY
# 0KG8maSzIZn4/j8wYYhD2LeRxx5SHabkOJ4negKKCYpDi+8lCoxdp7mRJYASPM61
# HWdEPQZm6GzY+c2TYVKYAGgxu+MPDImFI6znMMchBlZc4GR3sFwNbTOXEHXnC8am
# FUCI+D7mJt44bGsLMLXPUX4wOLP64PejfeNUfA8RcWjcmGF8jaD4g4Aeoz1GXnmg
# E09C3i60WmCaVAzLaVNpVpVA64uXLOaLuVl8X7zPFVr775SCOVDb1Npd/15SX3Cn
# okVCY37u0VZlrYzfHi/66qryZ7PSkontc5FHfAZAEhxQOHMiFIlBWr+PCTQ4P5wX
# wl92ro6rMteziC6dG2l0UrAtL8hp6m0EgAhw4cbtoXz4Sp+I/Ed0uCuF4lHhdnnS
# F+7lyEN4/HyxA44i9tXLzlLlfl7fuscwxm6CWwlonVAah3mteclR0iMFIO0WP7EC
# gT6omcjdhvU/uFmObRGTkA==
# =QK6z
# -----END PGP SIGNATURE-----
# gpg: Signature made Mon 10 Apr 2023 15:12:11 BST
# gpg:                using RSA key E1A5C593CD419DE28E8315CF3C2525ED14360CDE
# gpg:                issuer "peter.maydell@linaro.org"
# gpg: Good signature from "Peter Maydell <peter.maydell@linaro.org>" [ultimate]
# gpg:                 aka "Peter Maydell <pmaydell@gmail.com>" [ultimate]
# gpg:                 aka "Peter Maydell <pmaydell@chiark.greenend.org.uk>" 
[ultimate]
# gpg:                 aka "Peter Maydell <peter@archaic.org.uk>" [ultimate]
# Primary key fingerprint: E1A5 C593 CD41 9DE2 8E83  15CF 3C25 25ED 1436 0CDE

* tag 'pull-target-arm-20230410' of 
https://git.linaro.org/people/pmaydell/qemu-arm:
  target/arm: Copy guarded bit in combine_cacheattrs
  target/arm: PTE bit GP only applies to stage1

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 7d9e1ee424b06a43708be02474e6714962cfee92
      
https://github.com/qemu/qemu/commit/7d9e1ee424b06a43708be02474e6714962cfee92
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-10 (Mon, 10 Apr 2023)

  Changed paths:
    M tcg/i386/tcg-target.c.inc

  Log Message:
  -----------
  tcg/i386: Adjust assert in tcg_out_addi_ptr

We can arrive here on _WIN64 because Int128 is passed by reference.
Change the assert to check that the immediate is in range,
instead of attempting to check the host ABI.

Fixes: 6a6d772e30d ("tcg: Introduce tcg_out_addi_ptr")
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1581
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 25acc3f279d215250d0628e592ed7557a88aa3a7
      
https://github.com/qemu/qemu/commit/25acc3f279d215250d0628e592ed7557a88aa3a7
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-10 (Mon, 10 Apr 2023)

  Changed paths:
    M tcg/mips/tcg-target.h

  Log Message:
  -----------
  tcg/mips: Fix TCG_TARGET_CALL_RET_I128 for o32 abi

The return is by reference, not in 4 integer registers.

This error resulted in

  qemu-system-i386: tcg/mips/tcg-target.c.inc:140: \
    tcg_target_call_oarg_reg: Assertion `slot >= 0 && slot <= 1' failed.

Fixes: 5427a9a7604 ("tcg: Add TCG_TARGET_CALL_{RET,ARG}_I128")
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 20861f34e0808bd06a0b7d74f8bd29c29e516ca5
      
https://github.com/qemu/qemu/commit/20861f34e0808bd06a0b7d74f8bd29c29e516ca5
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-10 (Mon, 10 Apr 2023)

  Changed paths:
    M tcg/ppc/tcg-target.c.inc

  Log Message:
  -----------
  tcg/ppc: Fix TCG_TARGET_CALL_{ARG,RET}_I128 for ppc32

For both _CALL_SYSV and _CALL_DARWIN, return is by reference,
not in 4 integer registers.  For _CALL_SYSV, argument is also
by reference.

This error resulted in

    $ ./qemu-system-i386 -nographic
    qemu-system-i386: tcg/ppc/tcg-target.c.inc:185: \
        tcg_target_call_oarg_reg: Assertion `slot >= 0 && slot <= 1' failed.

Fixes: 5427a9a7604 ("tcg: Add TCG_TARGET_CALL_{RET,ARG}_I128")
Tested-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: dda860b9c031d6a2768f75e5e622545d41d4b688
      
https://github.com/qemu/qemu/commit/dda860b9c031d6a2768f75e5e622545d41d4b688
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-10 (Mon, 10 Apr 2023)

  Changed paths:
    M tcg/i386/tcg-target.c.inc
    M tcg/mips/tcg-target.h
    M tcg/ppc/tcg-target.c.inc

  Log Message:
  -----------
  Merge tag 'pull-tcg-20230410' of https://gitlab.com/rth7680/qemu into staging

Fix Int128 function call abi for ppc32, mips o32, and _WIN64

# -----BEGIN PGP SIGNATURE-----
#
# iQFRBAABCgA7FiEEekgeeIaLTbaoWgXAZN846K9+IV8FAmQ0LAIdHHJpY2hhcmQu
# aGVuZGVyc29uQGxpbmFyby5vcmcACgkQZN846K9+IV8Y8Af9H3h7arUdO0KfFtpr
# UbL4KrTs5JcCJmqgnqAAdkYRCTbdXnGUO9gRFKXWY1+zqMZo7aeA8laE+qh6+6Vy
# WE8OsyPjqkSRJorLZnyX+2iNLlIee2d+KdSlYxQuNVtv/a4XdpV+dlQove2Wd2yy
# 0krswayiYxAfFV52n3Lvqv2kS0kywdhWWdUy11ndRqcYypuw9qdWF1wkpZk1v/Lv
# ZbHe9oiJ610o274ocjpKcSLJFQvaeT/+WDJ3QaqQI8mklcMhampP3kfS27DGK6FH
# O621PxgpVqpVTkOCRXJyMIWCpXabJ4YttMhDQjuAFRghzBvR5Krs2LFmTR7Fkwuo
# F9NUJg==
# =z+vz
# -----END PGP SIGNATURE-----
# gpg: Signature made Mon 10 Apr 2023 16:32:18 BST
# gpg:                using RSA key 7A481E78868B4DB6A85A05C064DF38E8AF7E215F
# gpg:                issuer "richard.henderson@linaro.org"
# gpg: Good signature from "Richard Henderson <richard.henderson@linaro.org>" 
[full]
# Primary key fingerprint: 7A48 1E78 868B 4DB6 A85A  05C0 64DF 38E8 AF7E 215F

* tag 'pull-tcg-20230410' of https://gitlab.com/rth7680/qemu:
  tcg/ppc: Fix TCG_TARGET_CALL_{ARG,RET}_I128 for ppc32
  tcg/mips: Fix TCG_TARGET_CALL_RET_I128 for o32 abi
  tcg/i386: Adjust assert in tcg_out_addi_ptr

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 8af037fe4cfeb88bbcded3122cec2c5be0b90907
      
https://github.com/qemu/qemu/commit/8af037fe4cfeb88bbcded3122cec2c5be0b90907
  Author: Lukas Tschoke <lukts330@gmail.com>
  Date:   2023-04-11 (Tue, 11 Apr 2023)

  Changed paths:
    M block/vhdx-log.c

  Log Message:
  -----------
  block/vhdx: fix dynamic VHDX BAT corruption

The corruption occurs when a BAT entry aligned to 4096 bytes is changed.

Specifically, the corruption occurs during the creation of the LOG Data
Descriptor. The incorrect behavior involves copying 4088 bytes from the
original 4096 bytes aligned offset to `tmp[8..4096]` and then copying
the new value for the first BAT entry to the beginning `tmp[0..8]`.
This results in all existing BAT entries inside the 4K region being
incorrectly moved by 8 bytes and the last entry being lost.

This bug did not cause noticeable corruption when only sequentially
writing once to an empty dynamic VHDX (e.g.
using `qemu-img convert -O vhdx -o subformat=dynamic ...`), but it
still resulted in invalid values for the (unused) Sector Bitmap BAT
entries.

Importantly, this corruption would only become noticeable after the
corrupted BAT is re-read from the file.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/727
Cc: qemu-stable@nongnu.org
Signed-off-by: Lukas Tschoke <lukts330@gmail.com>
Message-Id: <6cfb6d6b-adc5-7772-c8a5-6bae9a0ad668@gmail.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 2b1f8fcb847f8cc7a214e14cbbdf99b354a4f8e3
      
https://github.com/qemu/qemu/commit/2b1f8fcb847f8cc7a214e14cbbdf99b354a4f8e3
  Author: Kevin Wolf <kwolf@redhat.com>
  Date:   2023-04-11 (Tue, 11 Apr 2023)

  Changed paths:
    A tests/qemu-iotests/tests/regression-vhdx-log
    A tests/qemu-iotests/tests/regression-vhdx-log.out

  Log Message:
  -----------
  iotests: Regression test for vhdx log corruption

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-Id: <20230411115231.90398-1-kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: 6c50845a9183610cfd4cfffd48dfc704cd340882
      
https://github.com/qemu/qemu/commit/6c50845a9183610cfd4cfffd48dfc704cd340882
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-11 (Tue, 11 Apr 2023)

  Changed paths:
    M hw/i2c/allwinner-i2c.c

  Log Message:
  -----------
  hw/i2c/allwinner-i2c: Fix subclassing of TYPE_AW_I2C_SUN6I

In commit 8461bfdca9c we added the TYPE_AW_I2C_SUN6I, which is a
minor variant of the TYPE_AW_I2C device.  However, we didn't quite
get the class hierarchy right.  We made the new TYPE_AW_I2C_SUN6I a
subclass of TYPE_SYS_BUS_DEVICE, which means that you can't validly
use a pointer to this object via the AW_I2C() cast macro, which
insists on having something that is an instance of TYPE_AW_I2C or
some subclass of that type.

This only causes a problem if QOM cast macro debugging is enabled;
that is supposed to be on by default, but a mistake in the meson
conversion in commit c55cf6ab03f4c meant that it ended up disabled by
default, and we didn't catch this bug.

Fix the problem by arranging the classes in the same way we do for
TYPE_PL011 and TYPE_PL011_LUMINARY in hw/char/pl011.c -- make the
variant class be a subclass of the "normal" version of the device.

This was reported in
https://gitlab.com/qemu-project/qemu/-/issues/1586 but this fix alone
isn't sufficient, as there is a separate cast-related issue in the
CXL code in pci_expander_bridge.c.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Corey Minyard <cminyard@mvista.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>


  Commit: 160a29e2f8b2d100246ab446813409f72d1e0767
      
https://github.com/qemu/qemu/commit/160a29e2f8b2d100246ab446813409f72d1e0767
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-11 (Tue, 11 Apr 2023)

  Changed paths:
    M block.c
    M block/io.c
    M include/block/block_int-common.h

  Log Message:
  -----------
  block: move has_variable_length to BlockLimits

At the protocol level, has_variable_length only needs to be true in the
very special case of host CD-ROM drives, so that they do not need an
explicit monitor command to read the new size when a disc is loaded
in the tray.

However, at the format level has_variable_length has to be true for all
raw blockdevs and for all filters, even though in practice the length
depends on the underlying file and thus will not change except in the
case of host CD-ROM drives.

As a first step towards computing an accurate value of has_variable_length,
add the value into the BlockLimits structure and initialize the field
from the BlockDriver.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-Id: <20230407153303.391121-2-pbonzini@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: 6188088f72fbfc419ba6cbc129479ee0b96c7436
      
https://github.com/qemu/qemu/commit/6188088f72fbfc419ba6cbc129479ee0b96c7436
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-11 (Tue, 11 Apr 2023)

  Changed paths:
    M block/copy-on-read.c
    M block/filter-compress.c
    M block/preallocate.c
    M block/replication.c

  Log Message:
  -----------
  block: remove has_variable_length from filters

Filters automatically get has_variable_length from their underlying
BlockDriverState.  There is no need to mark them as variable-length
in the BlockDriver.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-Id: <20230407153303.391121-3-pbonzini@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: 439cc330c58c6973a5c73dab36c334e29607d47b
      
https://github.com/qemu/qemu/commit/439cc330c58c6973a5c73dab36c334e29607d47b
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-11 (Tue, 11 Apr 2023)

  Changed paths:
    M block.c

  Log Message:
  -----------
  block: refresh bs->total_sectors on reopen

After reopening a BlockDriverState, it's possible that the size of the
underlying file has changed.  This for example is covered by test 171.

Right now, this is handled by the raw driver's has_variable_length = true
setting.  Since this will be removed by the next patch, handle it on
reopen instead, together with the existing bdrv_refresh_limits.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-Id: <20230407153303.391121-4-pbonzini@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: 8c6f27e7d85a794698eb1cd32c58df28cece50d1
      
https://github.com/qemu/qemu/commit/8c6f27e7d85a794698eb1cd32c58df28cece50d1
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-11 (Tue, 11 Apr 2023)

  Changed paths:
    M block/file-posix.c
    M block/file-win32.c
    M block/io.c
    M block/raw-format.c
    M include/block/block_int-common.h

  Log Message:
  -----------
  block: remove has_variable_length from BlockDriver

Fill in the field in BlockLimits directly for host devices, and
copy it from there for the raw format.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-Id: <20230407153303.391121-5-pbonzini@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: 2c5451ca523fc2b757e1e5b4e0b9fc84dbd58f97
      
https://github.com/qemu/qemu/commit/2c5451ca523fc2b757e1e5b4e0b9fc84dbd58f97
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-11 (Tue, 11 Apr 2023)

  Changed paths:
    M migration/block.c

  Log Message:
  -----------
  migration/block: replace uses of blk_nb_sectors that do not check result

Uses of blk_nb_sectors must check whether the result is negative.
Otherwise, underflow can happen.  Fortunately, alloc_aio_bitmap()
and bmds_aio_inflight() both have an alternative way to retrieve the
number of sectors in the file.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-Id: <20230407153303.391121-6-pbonzini@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: e5203a3b5db1fb1328f104a4863284198b551ce0
      
https://github.com/qemu/qemu/commit/e5203a3b5db1fb1328f104a4863284198b551ce0
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-11 (Tue, 11 Apr 2023)

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

  Log Message:
  -----------
  block-backend: inline bdrv_co_get_geometry

bdrv_co_get_geometry is only used in blk_co_get_geometry.  Inline it in
there, to reduce the number of wrappers for bs->total_sectors.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-Id: <20230407153303.391121-7-pbonzini@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: 9ed98cae151368cc89c4bb77c9f325f7185e8f09
      
https://github.com/qemu/qemu/commit/9ed98cae151368cc89c4bb77c9f325f7185e8f09
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-11 (Tue, 11 Apr 2023)

  Changed paths:
    M block/block-backend.c

  Log Message:
  -----------
  block-backend: ignore inserted state in blk_co_nb_sectors

All callers of blk_co_nb_sectors (and blk_nb_sectors) are able to
handle a non-inserted CD-ROM as a zero-length file, they do not need
to raise an error.

Not using blk_co_is_available() aligns the function with
blk_co_get_geometry(), which becomes a simple wrapper for
blk_co_nb_sectors().  It will also make it possible to skip the creation
of a coroutine in the (common) case where bs->bl.has_variable_length
is false.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-Id: <20230407153303.391121-8-pbonzini@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: 81f730d4d0e8af9c0211c3fedf406df0046341a9
      
https://github.com/qemu/qemu/commit/81f730d4d0e8af9c0211c3fedf406df0046341a9
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-11 (Tue, 11 Apr 2023)

  Changed paths:
    M block.c
    M block/block-backend.c
    M include/block/block-io.h
    M include/sysemu/block-backend-io.h

  Log Message:
  -----------
  block, block-backend: write some hot coroutine wrappers by hand

The introduction of the graph lock is causing blk_get_geometry, a hot function
used in the I/O path, to create a coroutine.  However, the only part that really
needs to run in coroutine context is the call to bdrv_co_refresh_total_sectors,
which in turn only happens in the rare case of host CD-ROM devices.

So, write by hand the three wrappers on the path from blk_co_get_geometry to
bdrv_co_refresh_total_sectors, so that the coroutine wrapper is only created
if bdrv_nb_sectors actually calls bdrv_refresh_total_sectors.

Reported-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-Id: <20230407153303.391121-9-pbonzini@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>


  Commit: abb02ce0e76a8e00026699a863ab2d11d88f56d4
      
https://github.com/qemu/qemu/commit/abb02ce0e76a8e00026699a863ab2d11d88f56d4
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-11 (Tue, 11 Apr 2023)

  Changed paths:
    M block.c
    M block/block-backend.c
    M block/copy-on-read.c
    M block/file-posix.c
    M block/file-win32.c
    M block/filter-compress.c
    M block/io.c
    M block/preallocate.c
    M block/raw-format.c
    M block/replication.c
    M block/vhdx-log.c
    M include/block/block-io.h
    M include/block/block_int-common.h
    M include/sysemu/block-backend-io.h
    M migration/block.c
    A tests/qemu-iotests/tests/regression-vhdx-log
    A tests/qemu-iotests/tests/regression-vhdx-log.out

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

Block layer patches

- Fix VHDX image corruption bug
- Fix for performance regression: Remove bdrv_co_get_geometry coroutines
  from I/O hot path

# -----BEGIN PGP SIGNATURE-----
#
# iQJFBAABCAAvFiEE3D3rFZqa+V09dFb+fwmycsiPL9YFAmQ1dDARHGt3b2xmQHJl
# ZGhhdC5jb20ACgkQfwmycsiPL9ZM8BAArqnJjr2iAVT/yYHZKO8GUyrt3Ndq9aAb
# hlAoMud0Xkof588I1W4AelOBYz/Cm4OEeFNAYxFbWif6t1iSB/J3FG6EQMCRqOnV
# 1GHIrJO9tolhjGx9GcjbYjXVJDyIsKDhcNCFJ9gke7+zVZLT8bLA5ibdZ2xYEcAp
# DfH27pBa6dlLd2CnDfkatpUwqqUDju+iXLaB4kGN/AG4Xv61Jk9ZqpRIyl1lToXO
# C9HDbHh3U/7fT2q9lMUXecOQnRFhXhvYSyiU+vcCFJPdijYPacC/HqJo200fG67y
# NDw/xviip3nFQWpxB06qx5A/H3UtmacGRSeckPvN7ZuEG4qFJSgYFsJL2+Rd11gu
# y2it06WWpYz+CFtlbfTkDuKj35F9VGFcmdfwnWxcmpMYDBWLbCJuzMpZJkJj5ahm
# QT6cv138nSvhvMpXLLZXER9opdGqqTU7LS2NqSTDFDKlPOnhofl1+FK0dhjrecEf
# A3bVfY8z8j+R2CYRzFINf2FUJA91XJjbv2kaJkV6Jq3x1usmgsm+QmCEefPpYF2l
# nlx5wFewxlqg8skMKDrKPXpB7d3KiKHy829HRJJtgg9RBoI9yST9kSRQ/o1IXlnP
# xCPG23Trik0dj9W178MDrBwf9ug0EKg2a4Ny3ohLq48sJP9pzjL1bR6j0Zww+tcz
# XMvgFSKspeY=
# =4z1y
# -----END PGP SIGNATURE-----
# gpg: Signature made Tue 11 Apr 2023 15:52:32 BST
# 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:
  block, block-backend: write some hot coroutine wrappers by hand
  block-backend: ignore inserted state in blk_co_nb_sectors
  block-backend: inline bdrv_co_get_geometry
  migration/block: replace uses of blk_nb_sectors that do not check result
  block: remove has_variable_length from BlockDriver
  block: refresh bs->total_sectors on reopen
  block: remove has_variable_length from filters
  block: move has_variable_length to BlockLimits
  iotests: Regression test for vhdx log corruption
  block/vhdx: fix dynamic VHDX BAT corruption

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: cb16e5c76f4e719e6d0f9fd2cb6cfe6e6c17fed9
      
https://github.com/qemu/qemu/commit/cb16e5c76f4e719e6d0f9fd2cb6cfe6e6c17fed9
  Author: Klaus Jensen <k.jensen@samsung.com>
  Date:   2023-04-12 (Wed, 12 Apr 2023)

  Changed paths:
    M hw/nvme/ns.c

  Log Message:
  -----------
  hw/nvme: fix memory leak in fdp ruhid parsing

Coverity reports a memory leak of memory when parsing ruhids at
namespace initialization. Since this is just working memory, not needed
beyond the scope of the functions, fix this by adding a g_autofree
annotation.

Reported-by: Coverity (CID 1507979)
Fixes: 73064edfb864 ("hw/nvme: flexible data placement emulation")
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Klaus Jensen <k.jensen@samsung.com>


  Commit: 4b32319cdacd99be983e1a74128289ef52c5964e
      
https://github.com/qemu/qemu/commit/4b32319cdacd99be983e1a74128289ef52c5964e
  Author: Klaus Jensen <k.jensen@samsung.com>
  Date:   2023-04-12 (Wed, 12 Apr 2023)

  Changed paths:
    M hw/nvme/ctrl.c

  Log Message:
  -----------
  hw/nvme: fix memory leak in nvme_dsm

The iocb (and the allocated memory to hold LBA ranges) leaks if reading
the LBA ranges fails.

Fix this by adding a free and an unref of the iocb.

Reported-by: Coverity (CID 1508281)
Fixes: d7d1474fd85d ("hw/nvme: reimplement dsm to allow cancellation")
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Klaus Jensen <k.jensen@samsung.com>


  Commit: 77a87a07224b1e8167c99213065f5244bdbeca83
      
https://github.com/qemu/qemu/commit/77a87a07224b1e8167c99213065f5244bdbeca83
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-12 (Wed, 12 Apr 2023)

  Changed paths:
    M hw/nvme/ctrl.c
    M hw/nvme/ns.c

  Log Message:
  -----------
  Merge tag 'coverity-fixes-pull-request' of git://git.infradead.org/qemu-nvme 
into staging

hw/nvme coverity fixes

Fix two issues reported by coverity (CID 1451080 and 1451082).

# -----BEGIN PGP SIGNATURE-----
#
# iQEzBAABCgAdFiEEUigzqnXi3OaiR2bATeGvMW1PDekFAmQ2gfEACgkQTeGvMW1P
# DemcEQf/V+arKs9OFhfqu3OtKQu5R4F2i2Tq3aRulrbZr/dPGkkLjSQjgGdkbg0F
# 8TZQYezFGZdg45QqxfxpVxPf8hrlGX6c/cbVZp9BnIGGXForLLHfrvNQpVVg5Ldm
# 8fA5zBccbnH2ER4nf12xf56WzjKWIpv5Xt/+hqOSoghThKfUxjIowR58fxoZySy6
# zl0cr6+FMnMZkLxGN0EslckNzYzpX5aXfJLMZKPG3G07EVmTgcGfJxjw0pWkzbq6
# ictMeP8BTbOU4IGLC2SIRppkiWEr3rUCL4aPhlPg90rIyXDU4onYP8dr0Y5ZI0gY
# QFtaZpTYEeRw84AJhgyR4U6h37UE/g==
# =kGwj
# -----END PGP SIGNATURE-----
# gpg: Signature made Wed 12 Apr 2023 11:03:29 BST
# gpg:                using RSA key 522833AA75E2DCE6A24766C04DE1AF316D4F0DE9
# gpg: Good signature from "Klaus Jensen <its@irrelevant.dk>" [full]
# gpg:                 aka "Klaus Jensen <k.jensen@samsung.com>" [full]
# Primary key fingerprint: DDCA 4D9C 9EF9 31CC 3468  4272 63D5 6FC5 E55D A838
#      Subkey fingerprint: 5228 33AA 75E2 DCE6 A247  66C0 4DE1 AF31 6D4F 0DE9

* tag 'coverity-fixes-pull-request' of git://git.infradead.org/qemu-nvme:
  hw/nvme: fix memory leak in nvme_dsm
  hw/nvme: fix memory leak in fdp ruhid parsing

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 3fe64abcde55cf6f4ea5883106301baad219a7cc
      
https://github.com/qemu/qemu/commit/3fe64abcde55cf6f4ea5883106301baad219a7cc
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-12 (Wed, 12 Apr 2023)

  Changed paths:
    M block/nfs.c

  Log Message:
  -----------
  block/nfs: do not poll within a coroutine

Since the former nfs_get_allocated_file_size is now a coroutine
function, it must suspend rather than poll.  Switch BDRV_POLL_WHILE()
to a qemu_coroutine_yield() loop and schedule nfs_co_generic_bh_cb()
in place of the call to bdrv_wakeup().

Fixes: 82618d7bc341 ("block: Convert bdrv_get_allocated_file_size() to 
co_wrapper", 2023-02-01)
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Message-Id: <20230412112606.80983-1-pbonzini@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 9d177b7f87d96d1ed8fd16e222a37bd1ac8a0cd8
      
https://github.com/qemu/qemu/commit/9d177b7f87d96d1ed8fd16e222a37bd1ac8a0cd8
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-12 (Wed, 12 Apr 2023)

  Changed paths:
    M block/nfs.c

  Log Message:
  -----------
  Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging

Fix NFS driver issue.

# -----BEGIN PGP SIGNATURE-----
#
# iQFIBAABCAAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAmQ22+MUHHBib256aW5p
# QHJlZGhhdC5jb20ACgkQv/vSX3jHroOYfwgAm3K121ALsF2kDplg+nDA/H69DbCi
# HG0iozJc//MmqF+15dgmClcBn+567U7evSesATv0Bx/UBVN8XtUoS/Krf+QSHd80
# Ycxw1TBgD2Ddc1MmVuYPZetvs8j2a+cYEQIW3ZP5o7Ng88o2BEYiyU1CXA/opfXy
# Lz1lQd3OHK7p00h0uHlqG41XZEuMkj5I6uorqvyDoqVkojtq2agbA7YWEsuiKyzj
# owztvajmh4v0vDSMVuFGr721VIiAm2sFh7JoL69E4EOig47QD3mPPDm8wX48O0dM
# ISKztYKlsSIcGFqpMPsjXioQOiMfp/StfsS1kr6X4B0q4r7UXrpQQ+TMkA==
# =sStc
# -----END PGP SIGNATURE-----
# gpg: Signature made Wed 12 Apr 2023 17:27:15 BST
# gpg:                using RSA key F13338574B662389866C7682BFFBD25F78C7AE83
# gpg:                issuer "pbonzini@redhat.com"
# gpg: Good signature from "Paolo Bonzini <bonzini@gnu.org>" [full]
# gpg:                 aka "Paolo Bonzini <pbonzini@redhat.com>" [full]
# Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4  E2F7 7E15 100C CD36 69B1
#      Subkey fingerprint: F133 3857 4B66 2389 866C  7682 BFFB D25F 78C7 AE83

* tag 'for-upstream' of https://gitlab.com/bonzini/qemu:
  block/nfs: do not poll within a coroutine

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 86d063fa83901bc8150343ff8b03979fbea392c9
      
https://github.com/qemu/qemu/commit/86d063fa83901bc8150343ff8b03979fbea392c9
  Author: Peter Xu <peterx@redhat.com>
  Date:   2023-04-12 (Wed, 12 Apr 2023)

  Changed paths:
    M io/channel-tls.c

  Log Message:
  -----------
  io: tls: Inherit QIO_CHANNEL_FEATURE_SHUTDOWN on server side

TLS iochannel will inherit io_shutdown() from the master ioc, however we
missed to do that on the server side.

This will e.g. allow qemu_file_shutdown() to work on dest QEMU too for
migration.

Acked-by: Daniel P. Berrangé <berrange@redhat.com>
Signed-off-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>


  Commit: 6621883f9398bc3f255968f0b4919e883bafb06c
      
https://github.com/qemu/qemu/commit/6621883f9398bc3f255968f0b4919e883bafb06c
  Author: Peter Xu <peterx@redhat.com>
  Date:   2023-04-12 (Wed, 12 Apr 2023)

  Changed paths:
    M hw/core/machine.c
    M migration/migration.c
    M migration/migration.h
    M migration/postcopy-ram.c

  Log Message:
  -----------
  migration: Fix potential race on postcopy_qemufile_src

postcopy_qemufile_src object should be owned by one thread, either the main
thread (e.g. when at the beginning, or at the end of migration), or by the
return path thread (when during a preempt enabled postcopy migration).  If
that's not the case the access to the object might be racy.

postcopy_preempt_shutdown_file() can be potentially racy, because it's
called at the end phase of migration on the main thread, however during
which the return path thread hasn't yet been recycled; the recycle happens
in await_return_path_close_on_source() which is after this point.

It means, logically it's posslbe the main thread and the return path thread
are both operating on the same qemufile.  While I don't think qemufile is
thread safe at all.

postcopy_preempt_shutdown_file() used to be needed because that's where we
send EOS to dest so that dest can safely shutdown the preempt thread.

To avoid the possible race, remove this only place that a race can happen.
Instead we figure out another way to safely close the preempt thread on
dest.

The core idea during postcopy on deciding "when to stop" is that dest will
send a postcopy SHUT message to src, telling src that all data is there.
Hence to shut the dest preempt thread maybe better to do it directly on
dest node.

This patch proposed such a way that we change postcopy_prio_thread_created
into PreemptThreadStatus, so that we kick the preempt thread on dest qemu
by a sequence of:

  mis->preempt_thread_status = PREEMPT_THREAD_QUIT;
  qemu_file_shutdown(mis->postcopy_qemufile_dst);

While here shutdown() is probably so far the easiest way to kick preempt
thread from a blocked qemu_get_be64().  Then it reads preempt_thread_status
to make sure it's not a network failure but a willingness to quit the
thread.

We could have avoided that extra status but just rely on migration status.
The problem is postcopy_ram_incoming_cleanup() is just called early enough
so we're still during POSTCOPY_ACTIVE no matter what.. So just make it
simple to have the status introduced.

One flag x-preempt-pre-7-2 is added to keep old pre-7.2 behaviors of
postcopy preempt.

Fixes: 9358982744 ("migration: Send requested page directly in rp-return 
thread")
Signed-off-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>


  Commit: 06064a671573580326b1f23a2afa2702c48d8e05
      
https://github.com/qemu/qemu/commit/06064a671573580326b1f23a2afa2702c48d8e05
  Author: Peter Xu <peterx@redhat.com>
  Date:   2023-04-12 (Wed, 12 Apr 2023)

  Changed paths:
    M migration/migration.c
    M migration/migration.h
    M migration/postcopy-ram.c

  Log Message:
  -----------
  migration: Recover behavior of preempt channel creation for pre-7.2

In 8.0 devel window we reworked preempt channel creation, so that there'll
be no race condition when the migration channel and preempt channel got
established in the wrong order in commit 5655aab079.

However no one noticed that the change will also be not compatible with
older qemus, majorly 7.1/7.2 versions where preempt mode started to be
supported.

Leverage the same pre-7.2 flag introduced in the previous patch to recover
the behavior hopefully before 8.0 releases, so we don't break migration
when we migrate from 8.0 to older qemu binaries.

Fixes: 5655aab079 ("migration: Postpone postcopy preempt channel to be after 
main")
Signed-off-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>


  Commit: 37502df32c4b02403fe92452c4ed1d96da3df01c
      
https://github.com/qemu/qemu/commit/37502df32c4b02403fe92452c4ed1d96da3df01c
  Author: Lukas Straub <lukasstraub2@web.de>
  Date:   2023-04-12 (Wed, 12 Apr 2023)

  Changed paths:
    M migration/ram.c

  Log Message:
  -----------
  migration/ram.c: Fix migration with compress enabled

Since ec6f3ab9, migration with compress enabled was broken, because
the compress threads use a dummy QEMUFile which just acts as a
buffer and that commit accidentally changed it to use the outgoing
migration channel instead.

Fix this by using the dummy file again in the compress threads.

Signed-off-by: Lukas Straub <lukasstraub2@web.de>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>


  Commit: 28ef5339c37f1f78c2fa4df2295bc0cd73a0abfd
      
https://github.com/qemu/qemu/commit/28ef5339c37f1f78c2fa4df2295bc0cd73a0abfd
  Author: Juan Quintela <quintela@redhat.com>
  Date:   2023-04-12 (Wed, 12 Apr 2023)

  Changed paths:
    M migration/ram.c

  Log Message:
  -----------
  migration: fix ram_state_pending_exact()

I removed that bit on commit:

commit c8df4a7aeffcb46020f610526eea621fa5b0cd47
Author: Juan Quintela <quintela@redhat.com>
Date:   Mon Oct 3 02:00:03 2022 +0200

    migration: Split save_live_pending() into state_pending_*

Fixes: c8df4a7aeffcb46020f610526eea621fa5b0cd47
Suggested-by: Nina Schoetterl-Glausch <nsg@linux.ibm.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>


  Commit: 69d4e746b3a899b90d2cbf422a3ce764cf51cfbe
      
https://github.com/qemu/qemu/commit/69d4e746b3a899b90d2cbf422a3ce764cf51cfbe
  Author: David Woodhouse <dwmw@amazon.co.uk>
  Date:   2023-04-13 (Thu, 13 Apr 2023)

  Changed paths:
    M hw/char/xen_console.c

  Log Message:
  -----------
  hw/xen: Fix double-free in xen_console store_con_info()

Coverity spotted a double-free (CID 1508254); we g_string_free(path) and
then for some reason immediately call free(path) too.

We should just use g_autoptr() for it anyway, which simplifies the code
a bit.

Fixes: 7a8a749da7d3 ("hw/xen: Move xenstore_store_pv_console_info to 
xen_console.c")
Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: c38b2ca7387b7857a614d1a6b8be5371949156d4
      
https://github.com/qemu/qemu/commit/c38b2ca7387b7857a614d1a6b8be5371949156d4
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-13 (Thu, 13 Apr 2023)

  Changed paths:
    M hw/core/machine.c
    M io/channel-tls.c
    M migration/migration.c
    M migration/migration.h
    M migration/postcopy-ram.c
    M migration/ram.c

  Log Message:
  -----------
  Merge tag 'migration-20230412-pull-request' of 
https://gitlab.com/juan.quintela/qemu into staging

Migration Pull request for 8.0

Last patches found:
- peter xu preempt channel fixes.
  needed for backward compatibility with old machine types.
- lukas fix to get compress working again.

- fix ram on s390x.  Get back to the old code, even when it shouldn't
  be needed, but as it fails on s390x, just revert.

Later, Juan.

# -----BEGIN PGP SIGNATURE-----
#
# iQIzBAABCAAdFiEEGJn/jt6/WMzuA0uC9IfvGFhy1yMFAmQ3HgQACgkQ9IfvGFhy
# 1yPXGQ/+Pf6HepNUlIr7naYOcpRriXPQF+q1zqo74F9fy2vrGcwJOI6qmRTjsX4E
# 9KgXipOz7+b5wSemF7PDKcnBiwyt6UHCH+XXe0h4TpyuORbtABKRgtOhA1/sa84D
# HnKp0TwImpAO26tzPa7u49aau/EEVBKAzFVcyn4w56S9qiDWicOpd5kG0CJBIsMJ
# Mnvy5fXaqQRewnKiwFoJGWfyhzEToDO6Z/SkT5xYON94P+eiM2xMwXOC5WcGfmY7
# wFGDB+SuyEP8TTn7mV0mmnlFjYe4G07hVARHSDFX3ho4b6q5F+WzfW095G6QKiu9
# n3Pzr7IBGX3sgetPtYwOwGsE9JrfHMFzBRxQZZwq5GSmjk7+agkbXmV7RyV82EYs
# KYOhuNF91ca0qvCrGA/eGbbJqVrd7SR5FhS4SQ7oKd5n2au/ZHoKwAgm5lBdcvES
# 2TB0MBN1s0JPh6KMV8tPB2miZyqPRa++oA8qIX7Asoe1X4xVT1FwiDaFL8TO8i2A
# 7uBis3KLZqOHC6dAiXlCDtaADAWgQxjcdoS1l8jTF6MgBSe+zQhXG+pcIDuSiV9N
# WfDiUPY97iqPTvpzdz3Is+LbBax2uY5ZR05KSdmCBpIgfvSWMqXtwRydclt6G5h7
# ZiOcTwrgMpXdbhdsFZTqVWAJG2sTkj4TA+IezVpXzPeQNLZ+T8k=
# =kW3P
# -----END PGP SIGNATURE-----
# gpg: Signature made Wed 12 Apr 2023 22:09:24 BST
# gpg:                using RSA key 1899FF8EDEBF58CCEE034B82F487EF185872D723
# gpg: Good signature from "Juan Quintela <quintela@redhat.com>" [full]
# gpg:                 aka "Juan Quintela <quintela@trasno.org>" [full]
# Primary key fingerprint: 1899 FF8E DEBF 58CC EE03  4B82 F487 EF18 5872 D723

* tag 'migration-20230412-pull-request' of 
https://gitlab.com/juan.quintela/qemu:
  migration: fix ram_state_pending_exact()
  migration/ram.c: Fix migration with compress enabled
  migration: Recover behavior of preempt channel creation for pre-7.2
  migration: Fix potential race on postcopy_qemufile_src
  io: tls: Inherit QIO_CHANNEL_FEATURE_SHUTDOWN on server side

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 7dbd6f8a27e30fe14adb3d5869097cddf24038d6
      
https://github.com/qemu/qemu/commit/7dbd6f8a27e30fe14adb3d5869097cddf24038d6
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-13 (Thu, 13 Apr 2023)

  Changed paths:
    M VERSION

  Log Message:
  -----------
  Update version for v8.0.0-rc4 release

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: c1eb2ddf0f8075faddc5f7c3d39feae3e8e9d6b4
      
https://github.com/qemu/qemu/commit/c1eb2ddf0f8075faddc5f7c3d39feae3e8e9d6b4
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-19 (Wed, 19 Apr 2023)

  Changed paths:
    M VERSION

  Log Message:
  -----------
  Update version for v8.0.0 release

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: f9be4771d3bdfaa8ace096e03c38f6b538ff6d85
      
https://github.com/qemu/qemu/commit/f9be4771d3bdfaa8ace096e03c38f6b538ff6d85
  Author: Cornelia Huck <cohuck@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M hw/arm/virt.c
    M hw/core/machine.c
    M hw/i386/pc.c
    M hw/i386/pc_piix.c
    M hw/i386/pc_q35.c
    M hw/m68k/virt.c
    M hw/ppc/spapr.c
    M hw/s390x/s390-virtio-ccw.c
    M include/hw/boards.h
    M include/hw/i386/pc.h

  Log Message:
  -----------
  hw: Add compat machines for 8.1

Add 8.1 machine types for arm/i440fx/m68k/q35/s390x/spapr.

Signed-off-by: Cornelia Huck <cohuck@redhat.com>
Message-Id: <20230314173009.152667-1-cohuck@redhat.com>
Reviewed-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Acked-by: Gavin Shan <gshan@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: ca45a640b36e2bc7e3129293f3fcae5abc4c26f8
      
https://github.com/qemu/qemu/commit/ca45a640b36e2bc7e3129293f3fcae5abc4c26f8
  Author: Stefan Weil <sw@weilnetz.de>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M docs/system/introduction.rst

  Log Message:
  -----------
  docs: Fix typo (wphx => whpx)

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1529
Signed-off-by: Stefan Weil <sw@weilnetz.de>
Message-Id: <20230409201007.1157671-1-sw@weilnetz.de>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 63cec0506e32467ec94db2973a9459147f081abf
      
https://github.com/qemu/qemu/commit/63cec0506e32467ec94db2973a9459147f081abf
  Author: Stefan Weil <sw@weilnetz.de>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

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

  Log Message:
  -----------
  docs/cxl: Fix sentence

Signed-off-by: Stefan Weil <sw@weilnetz.de>
Message-Id: <20230409201828.1159568-1-sw@weilnetz.de>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Acked-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 9a29e02073e5d032e49fb3af992b6065bd2acd3c
      
https://github.com/qemu/qemu/commit/9a29e02073e5d032e49fb3af992b6065bd2acd3c
  Author: Juan Quintela <quintela@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M tests/unit/test-crypto-secret.c

  Log Message:
  -----------
  test: Fix test-crypto-secret when compiling without keyring support

Linux keyring support is protected by CONFIG_KEYUTILS.
We also need CONFIG_SECRET_KEYRING.

Signed-off-by: Juan Quintela <quintela@redhat.com>
Message-Id: <20230414114252.1136-1-quintela@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 537a1388e65a784ac21eaf1639222e6332357b2f
      
https://github.com/qemu/qemu/commit/537a1388e65a784ac21eaf1639222e6332357b2f
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M softmmu/qtest.c

  Log Message:
  -----------
  qtest: Don't assert on "-qtest chardev:myid"

If the -qtest command line argument is passed a string that says
"use this chardev for I/O", then it will assert:

$ ./build/clang/qemu-system-i386 -chardev file,path=/dev/null,id=myid -qtest 
chardev:myid
Unexpected error in qtest_set_chardev() at ../../softmmu/qtest.c:1011:
qemu-system-i386: Cannot find character device 'qtest'
Aborted (core dumped)

This is because in qtest_server_init() we assume that when we create
the chardev with qemu_chr_new() it will always have the name "qtest".
This is true if qemu_chr_new() had to create a new chardev, but not
true if one already existed and is being referred to with
"chardev:myid".

Use the name of the chardev we get back from qemu_chr_new() as the
string to set the qtest 'chardev' property to, instead of hardcoding
it to "qtest".

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-Id: <20230413150724.404304-2-peter.maydell@linaro.org>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 5b18a6bf44b93122ba6638d227153cd146a68973
      
https://github.com/qemu/qemu/commit/5b18a6bf44b93122ba6638d227153cd146a68973
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M chardev/char-file.c
    M chardev/char.c
    M qemu-options.hx

  Log Message:
  -----------
  chardev: Allow setting file chardev input file on the command line

Our 'file' chardev backend supports both "output from this chardev
is written to a file" and "input from this chardev should be read
from a file" (except on Windows). However, you can only set up
the input file if you're using the QMP interface -- there is no
command line syntax to do it.

Add command line syntax to allow specifying an input file
as well as an output file, using a new 'input-path' suboption.

The specific use case I have is that I'd like to be able to
feed fuzzer reproducer input into qtest without having to use
'-qtest stdio' and put the input onto stdin. Being able to
use a file chardev like this:
 -chardev file,id=repro,path=/dev/null,input-path=repro.txt -qtest chardev:repro
means that stdio is free for use by gdb.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-Id: <20230413150724.404304-3-peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
[thuth: Replace "input-file=" typo with "input-path="]
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: a53be6665905a2eb9c56f3e3d8a167a2d2113d31
      
https://github.com/qemu/qemu/commit/a53be6665905a2eb9c56f3e3d8a167a2d2113d31
  Author: Vaibhav Jain <vaibhav@linux.ibm.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M .travis.yml

  Log Message:
  -----------
  travis.yml: Add missing clang-10 package to the 'Clang (disable-tcg)' job

Since commit 74a1b256d775("configure: Bump minimum Clang version to 10.0") qemu
needs Clang version 10.0 as the minimum version to build qemu with
Clang. However 'focal' ships by default with Clang version 7.0.0 which causes an
error while executing the 'Clang (disable-tcg)' travis job of the form below:

<snip>
$clang --version

clang version 7.0.0 (tags/RELEASE_700/final)

<snip>
 ERROR: You need at least GCC v7.4 or Clang v10.0 (or XCode Clang v12.0)

 # QEMU configure log Fri 14 Apr 2023 03:48:22 PM UTC

 # Configured with: '../configure' '--disable-docs' '--disable-tools'
 '--disable-containers' '--disable-tcg' '--enable-kvm' '--disable-tools'
 '--enable-fdt=system' '--host-cc=clang' '--cxx=clang++'

Fix this by adding 'clang-10' to the 'apt_packages' section of the "[s390x]
Clang (disable-tcg)" job and updating the compiler to 'clang-10'.

Signed-off-by: Vaibhav Jain <vaibhav@linux.ibm.com>
Message-Id: <20230414210645.820204-1-vaibhav@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 2d82c32b2ceaca3dc3da5e36e10976f34bfcb598
      
https://github.com/qemu/qemu/commit/2d82c32b2ceaca3dc3da5e36e10976f34bfcb598
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M VERSION

  Log Message:
  -----------
  Open 8.1 development tree

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: bc848265bca784b8807361e355eabc3d401d0561
      
https://github.com/qemu/qemu/commit/bc848265bca784b8807361e355eabc3d401d0561
  Author: Marc-André Lureau <marcandre.lureau@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M scripts/mtest2make.py

  Log Message:
  -----------
  mtest2make.py: teach suite name that are just "PROJECT"

A subproject test may be simply in the "PROJECT" suite (such as
"qemu-common" with the following patches)

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230302131848.1527460-2-marcandre.lureau@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 5a347a735232750f8b524aeaea68e9b6f1647f72
      
https://github.com/qemu/qemu/commit/5a347a735232750f8b524aeaea68e9b6f1647f72
  Author: Marc-André Lureau <marcandre.lureau@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M configure

  Log Message:
  -----------
  build-sys: prevent meson from downloading wrapped subprojects

The following patches are going to introduce meson wrap dependencies,
which is a solution to download and build missing dependencies.

The QEMU build-system will do network access with no way to avoid the
fallback. As a start, hardcode "--wrap-mode=nodownload" in configure, so
that wraps would be used only after a conscious decision of the user to
use "meson subprojects download" (before running configure).

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230302131848.1527460-3-marcandre.lureau@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 0abe33c13adb0ef67bfbbdce30dc5d9735899906
      
https://github.com/qemu/qemu/commit/0abe33c13adb0ef67bfbbdce30dc5d9735899906
  Author: Marc-André Lureau <marcandre.lureau@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M .gitignore
    A subprojects/slirp.wrap

  Log Message:
  -----------
  build-sys: add slirp.wrap

This allows to build with --enable-slirp / -D slirp=enabled, even when
libslirp is not installed on the system.  "meson subprojects download"
will pull it from git in that case.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230302131848.1527460-4-marcandre.lureau@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 3488fc326297831e5d57e6d49ed17d9c1c6d056b
      
https://github.com/qemu/qemu/commit/3488fc326297831e5d57e6d49ed17d9c1c6d056b
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M hw/nvme/ctrl.c
    M hw/nvme/trace-events

  Log Message:
  -----------
  nvme: remove constant argument to tracepoint

The last argument to -pci_nvme_err_startfail_virt_state is always "OFFLINE"
due to the enclosing "if" condition requiring !sctrl->scs.  Reported by
Coverity.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 3f9c41c5df9617510d8533cf6588172efb3df34b
      
https://github.com/qemu/qemu/commit/3f9c41c5df9617510d8533cf6588172efb3df34b
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M ui/vnc.c

  Log Message:
  -----------
  vnc: avoid underflow when accessing user-provided address

If hostlen is zero, there is a possibility that addrstr[hostlen - 1]
underflows and, if a closing bracked is there, hostlen - 2 is passed
to g_strndup() on the next line.  If websocket==false then
addrstr[0] would be a colon, but if websocket==true this could in
principle happen.

Fix it by checking hostlen.

Reported by Coverity.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: a74b0d0a6dcca4e7d7561655256a8cf671d80ac1
      
https://github.com/qemu/qemu/commit/a74b0d0a6dcca4e7d7561655256a8cf671d80ac1
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M tests/qtest/bios-tables-test.c

  Log Message:
  -----------
  tests: bios-tables-test: replace memset with initializer

Coverity complains that memset() writes over a const field.  Use
an initializer instead, so that the const field is left to zero.
Tests that have to write the const field already use an initializer
for the whole struct, here I am choosing the smallest possible
patch (which is not that small already).

Cc: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 8041e9e314819de9f54f3e267a0479e329561b96
      
https://github.com/qemu/qemu/commit/8041e9e314819de9f54f3e267a0479e329561b96
  Author: Akihiko Odaki <akihiko.odaki@daynix.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M configure

  Log Message:
  -----------
  configure: Avoid -Werror=maybe-uninitialized

The configure script used to compile some code which dereferences memory
with ubsan to verify the compiler can link with ubsan library which
detects dereferencing of uninitialized memory. However, as the
dereferenced memory was allocated in the same code, GCC can statically
detect the unitialized memory dereference and emit maybe-uninitialized
warning. If -Werror is set, this becomes an error, and the configure
script incorrectly thinks the error indicates the compiler cannot use
ubsan.

Fix this error by replacing the code with another function which adds
1 to a signed integer argument. This brings in ubsan to detect if it
causes signed integer overflow. As the value of the argument cannot be
statically determined, the new function is also immune to compiler
warnings.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Message-Id: <20230405070030.23148-1-akihiko.odaki@daynix.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 987b63f24afe027a09b1c549c05a032a477f7e96
      
https://github.com/qemu/qemu/commit/987b63f24afe027a09b1c549c05a032a477f7e96
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M target/i386/tcg/sysemu/excp_helper.c

  Log Message:
  -----------
  target/i386: Avoid unreachable variable declaration in mmu_translate()

Coverity complains (CID 1507880) that the declaration "int error_code;"
in mmu_translate() is unreachable code. Since this is only a declaration,
this isn't actually a bug, but:
 * it's a bear-trap for future changes, because if it was changed to
   include an initialization 'int error_code = foo;' then the
   initialization wouldn't actually happen (being dead code)
 * it's against our coding style, which wants declarations to be
   at the start of blocks
 * it means that anybody reading the code has to go and look up
   exactly what the C rules are for skipping over variable declarations
   using a goto

Move the declaration to the top of the function.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-Id: <20230406155946.3362077-1-peter.maydell@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: a64508304edbe51c6004a9af4e75e0e329797079
      
https://github.com/qemu/qemu/commit/a64508304edbe51c6004a9af4e75e0e329797079
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M hw/misc/lasi.c
    M include/hw/misc/lasi.h

  Log Message:
  -----------
  lasi: fix RTC migration

Migrate rtc_ref (which only needs to be 32-bit because it is summed to
a 32-bit register), which requires bumping the migration version.
The HPPA machine does not have versioned machine types so it is okay
to block migration to old versions of QEMU.

While at it, drop the write-only field rtc from LasiState.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: cc03dfa827819c78fdc6c8c5065910d6ac2567f1
      
https://github.com/qemu/qemu/commit/cc03dfa827819c78fdc6c8c5065910d6ac2567f1
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M scripts/coverity-scan/COMPONENTS.md

  Log Message:
  -----------
  coverity: update COMPONENTS.md

Hexagon is split into two components because it has hundreds of false positives
in the generated files.

capstone and slirp have been removed.

hw/nvme is added to block.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: dfae46c3ba4880036a3df0b0aafca0c792b7cb9d
      
https://github.com/qemu/qemu/commit/dfae46c3ba4880036a3df0b0aafca0c792b7cb9d
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M target/mips/tcg/translate.c

  Log Message:
  -----------
  target/mips: tcg: detect out-of-bounds accesses to cpu_gpr and cpu_gpr_hi

In some cases (for example gen_compute_branch_nm in
nanomips_translate.c.inc) registers can be unused
on some paths and a negative value is passed in that case:

        gen_compute_branch_nm(ctx, OPC_BPOSGE32, 4, -1, -2,
                              imm << 1);

To avoid an out of bounds access in those cases, introduce
assertions.

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: cf9d4e68d7bcd333d59d2f3ff876b86dec00281a
      
https://github.com/qemu/qemu/commit/cf9d4e68d7bcd333d59d2f3ff876b86dec00281a
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M scripts/qapi/commands.py

  Log Message:
  -----------
  qapi-gen: mark coroutine QMP command functions as coroutine_fn

Coroutine commands have to be declared as coroutine_fn, but the
marker does not show up in the qapi-comands-* headers; likewise, the
marshaling function calls the command and therefore must be coroutine_fn.
Static analysis would want coroutine_fn to match between prototype and
declaration, because in principle coroutines might be compiled to a
completely different calling convention.  So we would like to add the
marker to the header.

Reviewed-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 1dd91b22a620616cad08bee7efc29280121ff0da
      
https://github.com/qemu/qemu/commit/1dd91b22a620616cad08bee7efc29280121ff0da
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M include/io/channel.h
    M io/channel.c

  Log Message:
  -----------
  io: mark mixed functions that can suspend

There should be no paths from a coroutine_fn to aio_poll, however in
practice coroutine_mixed_fn will call aio_poll in the !qemu_in_coroutine()
path.  By marking mixed functions, we can track accurately the call paths
that execute entirely in coroutine context, and find more missing
coroutine_fn markers.  This results in more accurate checks that
coroutine code does not end up blocking.

If the marking were extended transitively to all functions that call
these ones, static analysis could be done much more efficiently.
However, this is a start and makes it possible to use vrc's path-based
searches to find potential bugs where coroutine_fns call blocking functions.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 394b9407e4c515f96df6647d629ee28cbb86f07c
      
https://github.com/qemu/qemu/commit/394b9407e4c515f96df6647d629ee28cbb86f07c
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M include/migration/qemu-file-types.h
    M migration/qemu-file.c
    M migration/qemu-file.h

  Log Message:
  -----------
  migration: mark mixed functions that can suspend

There should be no paths from a coroutine_fn to aio_poll, however in
practice coroutine_mixed_fn will call aio_poll in the !qemu_in_coroutine()
path.  By marking mixed functions, we can track accurately the call paths
that execute entirely in coroutine context, and find more missing
coroutine_fn markers.  This results in more accurate checks that
coroutine code does not end up blocking.

If the marking were extended transitively to all functions that call
these ones, static analysis could be done much more efficiently.
However, this is a start and makes it possible to use vrc's path-based
searches to find potential bugs where coroutine_fns call blocking functions.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: a50c99bcc09f5f85495e365a37f8ef459405fc51
      
https://github.com/qemu/qemu/commit/a50c99bcc09f5f85495e365a37f8ef459405fc51
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M include/qapi/qmp/dispatch.h
    M qapi/qmp-dispatch.c

  Log Message:
  -----------
  monitor: mark mixed functions that can suspend

There should be no paths from a coroutine_fn to aio_poll, however in
practice coroutine_mixed_fn will call aio_poll in the !qemu_in_coroutine()
path.  By marking mixed functions, we can track accurately the call paths
that execute entirely in coroutine context, and find more missing
coroutine_fn markers.  This results in more accurate checks that
coroutine code does not end up blocking.

If the marking were extended transitively to all functions that call
these ones, static analysis could be done much more efficiently.
However, this is a start and makes it possible to use vrc's path-based
searches to find potential bugs where coroutine_fns call blocking functions.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 72497cff896fecf74306ed33626c30e43633cdd6
      
https://github.com/qemu/qemu/commit/72497cff896fecf74306ed33626c30e43633cdd6
  Author: Yang Zhong <yang.zhong@linux.intel.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M target/i386/cpu.c

  Log Message:
  -----------
  target/i386: Change wrong XFRM value in SGX CPUID leaf

The previous patch wrongly replaced FEAT_XSAVE_XCR0_{LO|HI} with
FEAT_XSAVE_XSS_{LO|HI} in CPUID(EAX=12,ECX=1):{ECX,EDX}.  As a result,
SGX enclaves only supported SSE and x87 feature (xfrm=0x3).

Fixes: 301e90675c3f ("target/i386: Enable support for XSAVES based features")
Signed-off-by: Yang Zhong <yang.zhong@linux.intel.com>
Reviewed-by: Yang Weijiang <weijiang.yang@intel.com>
Reviewed-by: Kai Huang <kai.huang@intel.com>
Message-Id: <20230406064041.420039-1-yang.zhong@linux.intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 6a8a98a049f84d6633d024e97a1ecab2f220fa85
      
https://github.com/qemu/qemu/commit/6a8a98a049f84d6633d024e97a1ecab2f220fa85
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M block/block-backend.c

  Log Message:
  -----------
  block-backend: remove qatomic_mb_read()

There is already a barrier in AIO_WAIT_WHILE_INTERNAL(), thus the
qatomic_mb_read() is not adding anything.

Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 4592eaf38755a28300d113cd128f65b5b38495f2
      
https://github.com/qemu/qemu/commit/4592eaf38755a28300d113cd128f65b5b38495f2
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M migration/postcopy-ram.c

  Log Message:
  -----------
  postcopy-ram: do not use qatomic_mb_read

It does not even pair with a qatomic_mb_set(), so it is clearer to use
load-acquire in this case; they are synonyms.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 512c90c90ebdc0d77891bbef7265e9d40f812d02
      
https://github.com/qemu/qemu/commit/512c90c90ebdc0d77891bbef7265e9d40f812d02
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M util/qemu-coroutine.c

  Log Message:
  -----------
  qemu-coroutine: remove qatomic_mb_read()

Replace with an explicit barrier and a comment.

Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 000eebcfe8824aa35face1d06b0fa3ab3ec2aea8
      
https://github.com/qemu/qemu/commit/000eebcfe8824aa35face1d06b0fa3ab3ec2aea8
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M docs/devel/atomics.rst

  Log Message:
  -----------
  docs: explain effect of smp_read_barrier_depends() on modern architectures

The documentation for smp_read_barrier_depends() does not mention the 
architectures
for which it is an optimization, for example ARM and PPC.  As a result, it is 
not
clear to the reader why one would use it.  Relegate Alpha to a footnote together
with other architectures where it is equivalent to smp_rmb().

Suggested-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: dd5b6780f78bcbfc2120d879b092a8380d8bc706
      
https://github.com/qemu/qemu/commit/dd5b6780f78bcbfc2120d879b092a8380d8bc706
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M nbd/server.c

  Log Message:
  -----------
  nbd: a BlockExport always has a BlockBackend

exp->common.blk cannot be NULL, nbd_export_delete() is only called (through
a bottom half) from blk_exp_unref() and in turn that can only happen
after blk_exp_add() has asserted exp->blk != NULL.

Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 32a9d73579b3383cecee84683b1222615a0501bf
      
https://github.com/qemu/qemu/commit/32a9d73579b3383cecee84683b1222615a0501bf
  Author: Paolo Bonzini <pbonzini@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M scripts/coverity-scan/coverity-scan.docker

  Log Message:
  -----------
  coverity: unify Fedora dockerfiles

The Fedora CI and coverity runs are using a slightly different set of
packages.  Copy most of the content over from tests/docker while
keeping the commands at the end that unpack the tools.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-Id: <20230331174844.376300-1-pbonzini@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: c0c34c9105cb2c30222eb8f94005a326ad02efc0
      
https://github.com/qemu/qemu/commit/c0c34c9105cb2c30222eb8f94005a326ad02efc0
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M configure

  Log Message:
  -----------
  configure: Honour cross-prefix when finding ObjC compiler

Currently when configure picks an ObjectiveC compiler it doesn't pay
attention to the cross-prefix.  This isn't a big deal in practice,
because we only use ObjC on macos and you can't cross-compile to
macos.  But it's a bit inconsistent.

Rearrange the handling of objcc in configure so that we do the
same thing that we do with cc and cxx. This means that the logic
for picking the ObjC compiler goes from:
 if --objcc is specified, use that
 otherwise if clang is available, use that
 otherwise use $cc
to:
 if --objcc is specified, use that
 otherwise if --cross-prefix is specified, use ${cross_prefix}clang
 otherwise if clang is available, use that
 otherwise use $cc

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1185
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-Id: <20230418161554.744834-1-peter.maydell@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: dacc122e5eedf63ae90b50fec7e63cd8b04cafb3
      
https://github.com/qemu/qemu/commit/dacc122e5eedf63ae90b50fec7e63cd8b04cafb3
  Author: Peter Krempa <pkrempa@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M tests/docker/dockerfiles/centos8.docker
    M tests/docker/dockerfiles/debian-amd64-cross.docker
    M tests/docker/dockerfiles/debian-arm64-cross.docker
    M tests/docker/dockerfiles/debian-armel-cross.docker
    M tests/docker/dockerfiles/debian-armhf-cross.docker
    M tests/docker/dockerfiles/debian-mips64el-cross.docker
    M tests/docker/dockerfiles/debian-mipsel-cross.docker
    M tests/docker/dockerfiles/debian-ppc64el-cross.docker
    M tests/docker/dockerfiles/debian-s390x-cross.docker
    M tests/docker/dockerfiles/fedora-win32-cross.docker
    M tests/docker/dockerfiles/fedora-win64-cross.docker
    M tests/docker/dockerfiles/fedora.docker
    M tests/docker/dockerfiles/opensuse-leap.docker
    M tests/lcitool/libvirt-ci

  Log Message:
  -----------
  tests: libvirt-ci: Update to commit '2fa24dce8bc'

Update to commit which has fixes needed for OpenSUSE 15.4 and
re-generate output files.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Message-Id: 
<bd11b5954d3dd1e989699370af2b9e2e0c77194a.1681735482.git.pkrempa@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: 5f9efbbcf6fc77e583254389124437d981ad76b9
      
https://github.com/qemu/qemu/commit/5f9efbbcf6fc77e583254389124437d981ad76b9
  Author: Peter Krempa <pkrempa@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M tests/docker/dockerfiles/opensuse-leap.docker
    M tests/lcitool/libvirt-ci
    M tests/lcitool/mappings.yml
    M tests/lcitool/refresh
    A tests/lcitool/targets/opensuse-leap-15.yml
    R tests/lcitool/targets/opensuse-leap-153.yml

  Log Message:
  -----------
  tests: lcitool: Switch to OpenSUSE Leap 15.4

Since OpenSUSE Leap 15 counts as a single major release of an LTS distribution,
lcitool has changed the target name to remove the minor version.  Adjust the
mappings and refresh script.

This also updates the dockerfile to 15.4, since the 15.3 version is EOL now:

https://get.opensuse.org/leap/15.3

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: 
<a408b7f241ac59e5944db6ae2360a792305c36e0.1681735482.git.pkrempa@redhat.com>
[Adjust for target name change and reword commit message. - Paolo]
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>


  Commit: b3db996ffce758bd80181528110baac2b91cd531
      
https://github.com/qemu/qemu/commit/b3db996ffce758bd80181528110baac2b91cd531
  Author: Stefan Weil <sw@weilnetz.de>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M hw/arm/Kconfig
    M hw/arm/exynos4210.c
    M hw/arm/musicpal.c
    M hw/arm/omap1.c
    M hw/arm/omap2.c
    M hw/arm/virt-acpi-build.c
    M hw/arm/virt.c
    M hw/arm/xlnx-versal-virt.c

  Log Message:
  -----------
  hw/arm: Fix some typos in comments (most found by codespell)

Signed-off-by: Stefan Weil <sw@weilnetz.de>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-id: 20230409200526.1156456-1-sw@weilnetz.de
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: c47a80cd14309727f5a0a0eb0fd26d4aa1b5c14c
      
https://github.com/qemu/qemu/commit/c47a80cd14309727f5a0a0eb0fd26d4aa1b5c14c
  Author: Feng Jiang <jiangfeng@kylinos.cn>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M hw/timer/exynos4210_mct.c

  Log Message:
  -----------
  exynos: Fix out-of-bounds access in exynos4210_gcomp_find debug printf

One of the debug printfs in exynos4210_gcomp_find() will
access outside the 's->g_timer.reg.comp[]' array if there
was no active comparator and 'res' is -1. Add a conditional
to avoid this.

This doesn't happen in normal use because the debug printfs
are by default not compiled in.

Signed-off-by: Feng Jiang <jiangfeng@kylinos.cn>
Message-id: 20230404074506.112615-1-jiangfeng@kylinos.cn
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
[PMM: Adjusted commit message to clarify that the overrun
only happens if you've enabled debug printfs]
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 17b9730f9828c5ee2b443533db936a1def4341b3
      
https://github.com/qemu/qemu/commit/17b9730f9828c5ee2b443533db936a1def4341b3
  Author: Strahinja Jankovic <strahinjapjankovic@gmail.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M hw/watchdog/Kconfig
    A hw/watchdog/allwinner-wdt.c
    M hw/watchdog/meson.build
    M hw/watchdog/trace-events
    A include/hw/watchdog/allwinner-wdt.h

  Log Message:
  -----------
  hw/watchdog: Allwinner WDT emulation for system reset

This patch adds basic support for Allwinner WDT.
Both sun4i and sun6i variants are supported.
However, interrupt generation is not supported, so WDT can be used only to 
trigger system reset.

Signed-off-by: Strahinja Jankovic <strahinja.p.jankovic@gmail.com>
Reviewed-by: Niek Linnenbank <nieklinnenbank@gmail.com>
Tested-by: Niek Linnenbank <nieklinnenbank@gmail.com>
Message-id: 20230326202256.22980-2-strahinja.p.jankovic@gmail.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 470f9f2d93613e02cc94594c841d5f3fe7f4d8e6
      
https://github.com/qemu/qemu/commit/470f9f2d93613e02cc94594c841d5f3fe7f4d8e6
  Author: Strahinja Jankovic <strahinjapjankovic@gmail.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M docs/system/arm/cubieboard.rst
    M hw/arm/Kconfig
    M hw/arm/allwinner-a10.c
    M include/hw/arm/allwinner-a10.h

  Log Message:
  -----------
  hw/arm: Add WDT to Allwinner-A10 and Cubieboard

This patch adds WDT to Allwinner-A10 and Cubieboard.
WDT is added as an overlay to the Timer module memory map.

Signed-off-by: Strahinja Jankovic <strahinja.p.jankovic@gmail.com>
Reviewed-by: Niek Linnenbank <nieklinnenbank@gmail.com>
Message-id: 20230326202256.22980-3-strahinja.p.jankovic@gmail.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: c663fc9fbc368352d4cc86db3e9de5f46e64194c
      
https://github.com/qemu/qemu/commit/c663fc9fbc368352d4cc86db3e9de5f46e64194c
  Author: Strahinja Jankovic <strahinjapjankovic@gmail.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M docs/system/arm/orangepi.rst
    M hw/arm/Kconfig
    M hw/arm/allwinner-h3.c
    M include/hw/arm/allwinner-h3.h

  Log Message:
  -----------
  hw/arm: Add WDT to Allwinner-H3 and Orangepi-PC

This patch adds WDT to Allwinner-H3 and Orangepi-PC.
WDT is added as an overlay to the Timer module memory area.

Signed-off-by: Strahinja Jankovic <strahinja.p.jankovic@gmail.com>
Reviewed-by: Niek Linnenbank <nieklinnenbank@gmail.com>
Message-id: 20230326202256.22980-4-strahinja.p.jankovic@gmail.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: d784c5fbbadff4684c874474067046ec1b6d8bb0
      
https://github.com/qemu/qemu/commit/d784c5fbbadff4684c874474067046ec1b6d8bb0
  Author: Strahinja Jankovic <strahinjapjankovic@gmail.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M tests/avocado/boot_linux_console.py

  Log Message:
  -----------
  tests/avocado: Add reboot tests to Cubieboard

Cubieboard tests end with comment "reboot not functioning; omit test".
Fix this so reboot is done at the end of each test.

Signed-off-by: Strahinja Jankovic <strahinja.p.jankovic@gmail.com>
Reviewed-by: Niek Linnenbank <nieklinnenbank@gmail.com>
Tested-by: Niek Linnenbank <nieklinnenbank@gmail.com>
Message-id: 20230326202256.22980-5-strahinja.p.jankovic@gmail.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 542fd43d79327dabe62e49ff584ca60b6184923a
      
https://github.com/qemu/qemu/commit/542fd43d79327dabe62e49ff584ca60b6184923a
  Author: Axel Heider <axel.heider@hensoldt.net>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M hw/timer/imx_epit.c

  Log Message:
  -----------
  hw/timer/imx_epit: don't shadow variable

Fix issue reported by Coverity.

Signed-off-by: Axel Heider <axel.heider@hensoldt.net>
Message-id: 168070611775.20412.2883242077302841473-1@git.sr.ht
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 25d758175dfbfd53e02b4a52ac68cbd6eb05f648
      
https://github.com/qemu/qemu/commit/25d758175dfbfd53e02b4a52ac68cbd6eb05f648
  Author: Axel Heider <axel.heider@hensoldt.net>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M hw/timer/imx_epit.c

  Log Message:
  -----------
  hw/timer/imx_epit: fix limit check

Fix the limit check. If the limit is less than the compare value,
the timer can never reach this value, thus it will never fire.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1491
Signed-off-by: Axel Heider <axel.heider@hensoldt.net>
Message-id: 168070611775.20412.2883242077302841473-2@git.sr.ht
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 409504a1d59efb61316de80b3dfb593b4f53ef14
      
https://github.com/qemu/qemu/commit/409504a1d59efb61316de80b3dfb593b4f53ef14
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M target/arm/cpu_tcg.c
    M target/arm/kvm-consts.h

  Log Message:
  -----------
  target/arm: Remove KVM AArch32 CPU definitions

Missed in commit 80485d88f9 ("target/arm: Restrict
v7A TCG cpus to TCG accel").

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20230405100848.76145-2-philmd@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 7a98c8377b7466fbcbc488425d6b6bff85437013
      
https://github.com/qemu/qemu/commit/7a98c8377b7466fbcbc488425d6b6bff85437013
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M hw/arm/virt.c

  Log Message:
  -----------
  hw/arm/virt: Restrict Cortex-A7 check to TCG

The Cortex-A7 core is only available when TCG is enabled (see
commit 80485d88f9 "target/arm: Restrict v7A TCG cpus to TCG accel").

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20230405100848.76145-3-philmd@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: ad5c6ddea327758daa9f0e6edd916be39dce7dca
      
https://github.com/qemu/qemu/commit/ad5c6ddea327758daa9f0e6edd916be39dce7dca
  Author: Akihiko Odaki <akihiko.odaki@daynix.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M target/arm/kvm.c
    M target/arm/kvm64.c
    M target/arm/kvm_arm.h

  Log Message:
  -----------
  target/arm: Initialize debug capabilities only once

kvm_arm_init_debug() used to be called several times on a SMP system as
kvm_arch_init_vcpu() calls it. Move the call to kvm_arch_init() to make
sure it will be called only once; otherwise it will overwrite pointers
to memory allocated with the previous call and leak it.

Fixes: e4482ab7e3 ("target-arm: kvm - add support for HW assisted debug")
Suggested-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Message-id: 20230405153644.25300-1-akihiko.odaki@daynix.com
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: e61c4d87fa9d2ff030015f943f04f41cb3e3161d
      
https://github.com/qemu/qemu/commit/e61c4d87fa9d2ff030015f943f04f41cb3e3161d
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M target/arm/tcg/tlb_helper.c

  Log Message:
  -----------
  target/arm: Pass ARMMMUFaultInfo to merge_syn_data_abort()

We already pass merge_syn_data_abort() two fields from the
ARMMMUFaultInfo struct, and we're about to want to use a third field.
Refactor to just pass a pointer to the fault info.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-id: 20230331145045.2584941-2-peter.maydell@linaro.org


  Commit: a3856808d9e687fce071ffca223daeb88c760854
      
https://github.com/qemu/qemu/commit/a3856808d9e687fce071ffca223daeb88c760854
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M target/arm/tcg/tlb_helper.c

  Log Message:
  -----------
  target/arm: Don't set ISV when reporting stage 1 faults in ESR_EL2

The syndrome value reported to ESR_EL2 should only contain the
detailed instruction syndrome information when the fault has been
caused by a stage 2 abort, not when the fault was a stage 1 abort
(i.e.  caused by execution at EL2).  We were getting this wrong and
reporting the detailed ISV information all the time.

Fix the bug by checking fi->stage2.  Add a TODO comment noting the
cases where we'll have to come back and revisit this when we
implement FEAT_LS64 and friends.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20230331145045.2584941-3-peter.maydell@linaro.org


  Commit: dd17143fcecdc2b8845de1b0c251fa4e49b0f572
      
https://github.com/qemu/qemu/commit/dd17143fcecdc2b8845de1b0c251fa4e49b0f572
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M docs/system/arm/emulation.rst
    M target/arm/cpu.h
    M target/arm/cpu64.c
    M target/arm/ptw.c

  Log Message:
  -----------
  target/arm: Implement FEAT_PAN3

FEAT_PAN3 adds an EPAN bit to SCTLR_EL1 and SCTLR_EL2, which allows
the PAN bit to make memory non-privileged-read/write if it is
user-executable as well as if it is user-read/write.

Implement this feature and enable it in the AArch64 'max' CPU.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20230331145045.2584941-4-peter.maydell@linaro.org


  Commit: 0f40f7cabe82be49521779e6c4a6e5d2e09af89b
      
https://github.com/qemu/qemu/commit/0f40f7cabe82be49521779e6c4a6e5d2e09af89b
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M docs/devel/kconfig.rst

  Log Message:
  -----------
  docs/devel/kconfig.rst: Fix incorrect markup

In rST markup syntax, the inline markup (*italics*, **bold** and
``monospaced``) must be separated from the surrending text by
non-word characters, otherwise it is not interpreted as markup.
To force interpretation as markup in the middle of a word,
you need to use a backslash-escaped space (which will not
appear as a space in the output).

Fix a missing backslash-space in this file, which meant that the ``
after "select" was output literally and the monospacing was
incorrectly extended all the way to the end of the next monospaced
word.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-id: 20230411105424.3994585-1-peter.maydell@linaro.org


  Commit: 7bdd67a56036123b52048af45d304a2c926daa8a
      
https://github.com/qemu/qemu/commit/7bdd67a56036123b52048af45d304a2c926daa8a
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M gdb-xml/aarch64-pauth.xml
    M target/arm/gdbstub.c

  Log Message:
  -----------
  target/arm: Report pauth information to gdb as 'pauth_v2'

So that we can avoid the "older gdb crashes" problem described in
commit 5787d17a42f7af4 and which caused us to disable reporting pauth
information via the gdbstub, newer gdb is going to implement support
for recognizing the pauth information via a new feature name:
 org.gnu.gdb.aarch64.pauth_v2

Older gdb won't recognize this feature name, so we can re-enable the
pauth support under the new name without risking them crashing.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20230406150827.3322670-1-peter.maydell@linaro.org


  Commit: e23130f916b07d5a41dba9e06327d1e76713e85f
      
https://github.com/qemu/qemu/commit/e23130f916b07d5a41dba9e06327d1e76713e85f
  Author: Vaibhav Jain <vaibhav@linux.ibm.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M .travis.yml

  Log Message:
  -----------
  travis.yml: Add missing 'flex', 'bison' packages to 'GCC (user)' job

Since commit fd8171fe52b5e("target/hexagon: import lexer for idef-parser") the
hexagon target uses 'flex', 'bison' to generate idef-parser. However default
travis builder image for 'focal' may not have these pre-installed, consequently
following error is seen with travis when trying to execute the 'GCC (user)' job
that also tries to build hexagon user binary:

<snip>
export CONFIG="--disable-containers --disable-system"
<snip>
 Program flex found: NO

../target/hexagon/meson.build:179:4: ERROR: Program 'flex' not found or not
executable
<snip>

Fix this by explicitly add 'flex' and 'bison' to the list of addon apt-packages
for the 'GCC (user)' job.

Signed-off-by: Vaibhav Jain <vaibhav@linux.ibm.com>
Message-Id: <20230417162354.186678-1-vaibhav@linux.ibm.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 74902af7379cdcadca2ccbfe443bc211fb7a01fd
      
https://github.com/qemu/qemu/commit/74902af7379cdcadca2ccbfe443bc211fb7a01fd
  Author: Juan Quintela <quintela@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

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

  Log Message:
  -----------
  tests/migration: Only run auto_converge in slow mode

Signed-off-by: Juan Quintela <quintela@redhat.com>
Message-Id: <20230412142001.16501-3-quintela@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 123fa10279572dff2a280a8170e0888e0bf0bf79
      
https://github.com/qemu/qemu/commit/123fa10279572dff2a280a8170e0888e0bf0bf79
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M target/i386/cpu.c

  Log Message:
  -----------
  target/i386: Set family/model/stepping of the "max" CPU according to LM bit

We want to get rid of the "#ifdef TARGET_X86_64" compile-time switch
in the long run, so we can drop the separate compilation of the
"qemu-system-i386" binary one day - but we then still need a way to
run a guest with max. CPU settings in 32-bit mode. So the "max" CPU
should determine its family/model/stepping settings according to the
"large mode" (LM) CPU feature bit during runtime, so that it is
possible to run "qemu-system-x86_64 -cpu max,lm=off" and still get
a sane family/model/stepping setting for the guest CPU.

To be able to check the LM bit, we have to move the code that sets
up these properties to a "realize" function, since the LM setting is
not available yet when the "instance_init" function is being called.

Message-Id: <20230306154311.476458-1-thuth@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 8708c46306b8422eb0cbb882f88cdad29c041725
      
https://github.com/qemu/qemu/commit/8708c46306b8422eb0cbb882f88cdad29c041725
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M hw/char/meson.build

  Log Message:
  -----------
  hw/char: Move two more files from specific_ss to softmmu_ss

The code for these two devices seems to be independent from any
target specific macros. "riscv_htif.c" is used for both, riscv32 and
riscv64, so by moving this to the common code source set, we can
avoid to compile it twice every time.
"goldfish_tty.c" is only used for one target at the moment, but
since it is a paravirtualized device, it could get useful for other
targets one day, so let's move it now, too.

Message-Id: <20230411173206.1511621-1-thuth@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: c7a6bf5d921a25bf1d59143e63b453affe6c8892
      
https://github.com/qemu/qemu/commit/c7a6bf5d921a25bf1d59143e63b453affe6c8892
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M hw/ppc/spapr_rtas.c
    M include/sysemu/qtest.h
    M softmmu/qtest.c

  Log Message:
  -----------
  softmmu/qtest: Move the target-specific pseries RTAS code out of qtest.c

Ideally, qtest.c should be independent from target specific code, so
we only have to compile it once for all targets. Thus start improving
the situation by moving the pseries related code to hw/ppc/spapr_rtas.c
instead and allow target code to register a callback handler for such
target specific commands.

Message-Id: <20230411183418.1640500-2-thuth@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Cédric Le Goater <clg@kaod.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 24be3369ad63c3882be42dd510a45bad52816fd1
      
https://github.com/qemu/qemu/commit/24be3369ad63c3882be42dd510a45bad52816fd1
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M include/exec/cpu-all.h
    A include/exec/tswap.h

  Log Message:
  -----------
  include/exec: Provide the tswap() functions for target independent code, too

In some cases of target independent code, it would be useful to have access
to the functions that swap endianess in case it differs between guest and
host. Thus re-implement the tswapXX() functions in a new header that can be
included separately. The check whether the swapping is needed continues to
be done at compile-time for target specific code, while it is done at
run-time in target-independent code.

Message-Id: <20230411183418.1640500-3-thuth@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Cédric Le Goater <clg@kaod.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 09637edb84556e08dac10a13e7801918e4666d93
      
https://github.com/qemu/qemu/commit/09637edb84556e08dac10a13e7801918e4666d93
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M softmmu/meson.build
    M softmmu/qtest.c

  Log Message:
  -----------
  softmmu: Make qtest.c target independent

The code in this file is not performance critical, so we can use
the target independent endianess functions to only compile this
file once for all targets.

Message-Id: <20230411183418.1640500-4-thuth@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Cédric Le Goater <clg@kaod.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 9eb7e7e84af5362b125015e80fdaab96b944f6f2
      
https://github.com/qemu/qemu/commit/9eb7e7e84af5362b125015e80fdaab96b944f6f2
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M hw/display/meson.build
    M hw/display/vga.c

  Log Message:
  -----------
  hw/display: Compile vga.c as target-independent code

The target checks here are only during the initialization, so they
are not performance critical. We can switch these to runtime checks
to avoid that we have to compile this file multiple times during
the build, and make the code ready for an universal build one day.

Message-Id: <20230412163501.36770-1-thuth@redhat.com>
Reviewed-by: Fabiano Rosas <farosas@suse.de>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 30ee29fd03bbdd4cc250c1a591c5199b33e7a118
      
https://github.com/qemu/qemu/commit/30ee29fd03bbdd4cc250c1a591c5199b33e7a118
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M softmmu/dirtylimit.c
    M softmmu/meson.build

  Log Message:
  -----------
  softmmu: Move dirtylimit.c into the target independent source set

dirtylimit.c just uses one TARGET_PAGE_SIZE macro - change it to
qemu_target_page_size() so we can move thefile into the target
independent source set. Then we only have to compile this file
once during the build instead of multiple times (one time for
each target).

Message-Id: <20230413054509.54421-1-thuth@redhat.com>
Reviewed-by: Fabiano Rosas <farosas@suse.de>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: 992deb4c4ff88540edf4f337238e5f84dcdab094
      
https://github.com/qemu/qemu/commit/992deb4c4ff88540edf4f337238e5f84dcdab094
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M hw/core/meson.build

  Log Message:
  -----------
  hw/core: Move numa.c into the target independent source set

There is nothing that depends on target specific macros in this
file, so we can move it to the common source set to avoid that
we have to compile this file multiple times (one time for each
target).

Message-Id: <20230413182636.139356-1-thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: c138c3b864245d7721a03f01f97e70e47d253839
      
https://github.com/qemu/qemu/commit/c138c3b864245d7721a03f01f97e70e47d253839
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M cpu.c
    M include/exec/cpu-common.h
    M softmmu/vl.c

  Log Message:
  -----------
  cpu: Remove parameter of list_cpus()

The "optarg" parameter is completely unused, so let's drop it.

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


  Commit: 2243299a748dbc7581205e043dcdb66627a062dd
      
https://github.com/qemu/qemu/commit/2243299a748dbc7581205e043dcdb66627a062dd
  Author: Juan Quintela <quintela@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M MAINTAINERS

  Log Message:
  -----------
  MAINTAINERS: Add Juan Quintela to developer guides review

Signed-off-by: Juan Quintela <quintela@redhat.com>
Message-Id: <20230419163457.17175-1-quintela@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: a3ebb580a21c89d22ac5f52bd70814c997f28893
      
https://github.com/qemu/qemu/commit/a3ebb580a21c89d22ac5f52bd70814c997f28893
  Author: Stefan Berger <stefanb@linux.ibm.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M include/hw/i2c/aspeed_i2c.h
    A tests/qtest/qtest_aspeed.c
    A tests/qtest/qtest_aspeed.h

  Log Message:
  -----------
  qtest: Add functions for accessing devices on Aspeed I2C controller

Add read and write functions for accessing registers of I2C devices
connected to the Aspeed I2C controller.

Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
Reviewed-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: Ninad Palsule <ninad@linux.ibm.com>
Message-Id: <20230331173051.3857801-2-stefanb@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: f8d64616932805c5a5efea1a6a5bfee630d0096b
      
https://github.com/qemu/qemu/commit/f8d64616932805c5a5efea1a6a5bfee630d0096b
  Author: Stefan Berger <stefanb@linux.ibm.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M tests/qtest/tpm-crb-swtpm-test.c
    M tests/qtest/tpm-crb-test.c
    M tests/qtest/tpm-tis-device-swtpm-test.c
    M tests/qtest/tpm-tis-swtpm-test.c
    M tests/qtest/tpm-tis-util.c
    M tests/qtest/tpm-tis-util.h
    M tests/qtest/tpm-util.c
    M tests/qtest/tpm-util.h

  Log Message:
  -----------
  qtest: Move tpm_util_tis_transmit() into tpm-tis-utils.c and rename it

To be able to remove tpm_tis_base_addr from test cases that do not really
need it move the tpm_util_tis_transmit() function into tpm-tis-utils.c and
rename it to tpm_tis_transmit().

Fix a locality parameter in a test case on the way.

Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
Reviewed-by: Ninad Palsule <ninad@linux.ibm.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20230331173051.3857801-3-stefanb@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: bcbbd95d2ae002242ebf971d6e1e9aefb75ac8e2
      
https://github.com/qemu/qemu/commit/bcbbd95d2ae002242ebf971d6e1e9aefb75ac8e2
  Author: Stefan Berger <stefanb@linux.ibm.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M tests/qtest/meson.build
    A tests/qtest/tpm-tis-i2c-test.c

  Log Message:
  -----------
  qtest: Add a test case for TPM TIS I2C connected to Aspeed I2C controller

Add a test case for the TPM TIS I2C device exercising most of its
functionality, including localities.

Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
Tested-by: Cédric Le Goater <clg@kaod.org>
Tested-by: Ninad Palsule<ninad@linux.ibm.com>
Message-Id: <20230331173051.3857801-4-stefanb@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: df3f5efe108e4787187133dda05112d32a1b87e8
      
https://github.com/qemu/qemu/commit/df3f5efe108e4787187133dda05112d32a1b87e8
  Author: Guenter Roeck <linux@roeck-us.net>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M hw/net/imx_fec.c
    M include/hw/net/imx_fec.h

  Log Message:
  -----------
  hw/net/imx_fec: Support two Ethernet interfaces connected to single MDIO bus

The SOC on i.MX6UL and i.MX7 has 2 Ethernet interfaces. The PHY on each may
be connected to separate MDIO busses, or both may be connected on the same
MDIO bus using different PHY addresses. Commit 461c51ad4275 ("Add a phy-num
property to the i.MX FEC emulator") added support for specifying PHY
addresses, but it did not provide support for linking the second PHY on
a given MDIO bus to the other Ethernet interface.

To be able to support two PHY instances on a single MDIO bus, two properties
are needed: First, there needs to be a flag indicating if the MDIO bus on
a given Ethernet interface is connected. If not, attempts to read from this
bus must always return 0xffff. Implement this property as phy-connected.
Second, if the MDIO bus on an interface is active, it needs a link to the
consumer interface to be able to provide PHY access for it. Implement this
property as phy-consumer.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Message-id: 20230315145248.1639364-2-linux@roeck-us.net
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: ec6fb1c8cd8d55c3d2a34cacfea6df0fe6c76057
      
https://github.com/qemu/qemu/commit/ec6fb1c8cd8d55c3d2a34cacfea6df0fe6c76057
  Author: Thomas Huth <thuth@redhat.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M tests/vm/freebsd

  Log Message:
  -----------
  tests/vm/freebsd: Update to FreeBSD 13.2

According to QEMU's support policy, we stop supporting the previous
major release two years after the the new major release has been
published. So we can stop testing FreeBSD 12 now and should switch
our FreeBSD VM to version 13 instead.

Some changes are needed for this update: The downloadable .ISO images
do not use the serial port as console by default anymore, so they
are not usable in the same way as with FreeBSD 12. Fortunately, the
FreeBSD project now also offers some pre-installed CI images that
have the serial console enabled, so we can use those now, with the
benefit that we can skip almost all parts of the previous installation
process.

Message-Id: <20230419144553.719749-1-thuth@redhat.com>
Reviewed-by: Warner Losh <imp@bsdimp.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>


  Commit: bc14018c2d291949583dc80bafe1196efeba0317
      
https://github.com/qemu/qemu/commit/bc14018c2d291949583dc80bafe1196efeba0317
  Author: Guenter Roeck <linux@roeck-us.net>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M hw/arm/fsl-imx6ul.c
    M include/hw/arm/fsl-imx6ul.h

  Log Message:
  -----------
  fsl-imx6ul: Add fec[12]-phy-connected properties

Add fec[12]-phy-connected properties and use it to set phy-connected
and phy-consumer properties for imx_fec.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Message-id: 20230315145248.1639364-3-linux@roeck-us.net
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: bebcddbbb23249cfc058764ff2df0bc80be57ea8
      
https://github.com/qemu/qemu/commit/bebcddbbb23249cfc058764ff2df0bc80be57ea8
  Author: Guenter Roeck <linux@roeck-us.net>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M hw/arm/mcimx6ul-evk.c

  Log Message:
  -----------
  arm/mcimx6ul-evk: Set fec1-phy-connected property to false

On mcimx6ul-evk, the MDIO bus is connected to the second Ethernet
interface. Set fec1-phy-connected to false to reflect this.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Message-id: 20230315145248.1639364-4-linux@roeck-us.net
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 3b92718be97e98d0cd53b9853fbe9ee7e7136683
      
https://github.com/qemu/qemu/commit/3b92718be97e98d0cd53b9853fbe9ee7e7136683
  Author: Guenter Roeck <linux@roeck-us.net>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M hw/arm/fsl-imx7.c
    M include/hw/arm/fsl-imx7.h

  Log Message:
  -----------
  fsl-imx7: Add fec[12]-phy-connected properties

Add fec[12]-phy-connected properties and use it to set phy-connected
and phy-consumer properties for imx_fec.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Message-id: 20230315145248.1639364-5-linux@roeck-us.net
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: 1ed1f338520cda0574b7e04f5e8e85e049740548
      
https://github.com/qemu/qemu/commit/1ed1f338520cda0574b7e04f5e8e85e049740548
  Author: Guenter Roeck <linux@roeck-us.net>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M hw/arm/mcimx7d-sabre.c

  Log Message:
  -----------
  arm/mcimx7d-sabre: Set fec2-phy-connected property to false

On mcimx7d-sabre, the MDIO bus is connected to the first Ethernet
interface. Set fec2-phy-connected to false to reflect this.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Message-id: 20230315145248.1639364-6-linux@roeck-us.net
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


  Commit: fbd945e7831b45b266dae292e79b6cce2b94924f
      
https://github.com/qemu/qemu/commit/fbd945e7831b45b266dae292e79b6cce2b94924f
  Author: Ninad Palsule <ninad@linux.ibm.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M docs/specs/tpm.rst

  Log Message:
  -----------
  docs: Add support for TPM devices over I2C bus

This is a documentation change for I2C TPM device support.

Qemu already supports devices attached to ISA and sysbus.
This drop adds support for the I2C bus attached TPM devices.

Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
Reviewed-by: Stefan Berger <stefanb@linux.ibm.com>
Reviewed-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: Joel Stanley <joel@jms.id.au>
Message-id: 20230414220754.1191476-2-ninadpalsule@us.ibm.com


  Commit: bbadfb2e0af238576646e0fc8e0b5e4f4fe29648
      
https://github.com/qemu/qemu/commit/bbadfb2e0af238576646e0fc8e0b5e4f4fe29648
  Author: Ninad Palsule <ninad@linux.ibm.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M hw/tpm/tpm_tis.h
    M hw/tpm/tpm_tis_common.c
    M include/hw/acpi/tpm.h

  Log Message:
  -----------
  tpm: Extend common APIs to support TPM TIS I2C

Qemu already supports devices attached to ISA and sysbus. This drop adds
support for the I2C bus attached TPM devices.

This commit includes changes for the common code.
- Added support for the new checksum registers which are required for
  the I2C support. The checksum calculation is handled in the qemu
  common code.
- Added wrapper function for read and write data so that I2C code can
  call it without MMIO interface.

The TPM TIS I2C spec describes in the table in section "Interface Locality
Usage per Register" that the TPM_INT_ENABLE and TPM_INT_STATUS registers
must be writable for any locality even if the locality is not the active
locality. Therefore, remove the checks whether the writing locality is the
active locality for these registers.

Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
Reviewed-by: Stefan Berger <stefanb@linux.ibm.com>
Tested-by: Stefan Berger <stefanb@linux.ibm.com>
Reviewed-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: Joel Stanley <joel@jms.id.au>
Tested-by: Joel Stanley <joel@jms.id.au>
Message-id: 20230414220754.1191476-3-ninadpalsule@us.ibm.com


  Commit: 139fdb3ed8f593b03f78ec9984467562331ef98c
      
https://github.com/qemu/qemu/commit/139fdb3ed8f593b03f78ec9984467562331ef98c
  Author: Ninad Palsule <ninad@linux.ibm.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M hw/arm/Kconfig
    M hw/tpm/Kconfig
    M hw/tpm/meson.build
    A hw/tpm/tpm_tis_i2c.c
    M hw/tpm/trace-events
    M include/sysemu/tpm.h

  Log Message:
  -----------
  tpm: Add support for TPM device over I2C bus

Qemu already supports devices attached to ISA and sysbus. This drop adds
support for the I2C bus attached TPM devices. I2C model only supports
TPM2 protocol.

This commit includes changes for the common code.
- Added I2C emulation model. Logic was added in the model to temporarily
  cache the data as I2C interface works per byte basis.
- New tpm type "tpm-tis-i2c" added for I2C support. The user has to
  provide this string on command line.

Testing:
  TPM I2C device module is tested using SWTPM (software based TPM
  package). Qemu uses the rainier machine and is connected to swtpm over
  the socket interface.

  The command to start swtpm is as follows:
  $ swtpm socket --tpmstate dir=/tmp/mytpm1    \
                 --ctrl type=unixio,path=/tmp/mytpm1/swtpm-sock  \
                 --tpm2 --log level=100

  The command to start qemu is as follows:
  $ qemu-system-arm -M rainier-bmc -nographic \
            -kernel ${IMAGEPATH}/fitImage-linux.bin \
            -dtb ${IMAGEPATH}/aspeed-bmc-ibm-rainier.dtb \
            -initrd ${IMAGEPATH}/obmc-phosphor-initramfs.rootfs.cpio.xz \
            -drive 
file=${IMAGEPATH}/obmc-phosphor-image.rootfs.wic.qcow2,if=sd,index=2 \
            -net nic -net 
user,hostfwd=:127.0.0.1:2222-:22,hostfwd=:127.0.0.1:2443-:443 \
            -chardev socket,id=chrtpm,path=/tmp/mytpm1/swtpm-sock \
            -tpmdev emulator,id=tpm0,chardev=chrtpm \
            -device tpm-tis-i2c,tpmdev=tpm0,bus=aspeed.i2c.bus.12,address=0x2e

Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
Reviewed-by: Stefan Berger <stefanb@linux.ibm.com>
Tested-by: Stefan Berger <stefanb@linux.ibm.com>
Reviewed-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: Joel Stanley <joel@jms.id.au>
Tested-by: Joel Stanley <joel@jms.id.au>
Message-id: 20230414220754.1191476-4-ninadpalsule@us.ibm.com


  Commit: c3d58a7a26ffbf2ac54ed6d7a3a83f2a7af7159b
      
https://github.com/qemu/qemu/commit/c3d58a7a26ffbf2ac54ed6d7a3a83f2a7af7159b
  Author: Joel Stanley <joel@jms.id.au>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M tests/avocado/machine_aspeed.py

  Log Message:
  -----------
  tests/avocado/aspeed: Add TPM TIS I2C test

Add a new buildroot image based test that attaches a TPM emulator to the
I2C bus and checks for a known PCR0 value for the image that was booted.

Note that this does not tear down swtpm process when qemu execution fails.
The swtpm process will exit when qemu exits if a connection has been
made, but if the test errors before connection then the swtpm process
will still be around.

Signed-off-by: Joel Stanley <joel@jms.id.au>
Reviewed-by: Stefan Berger <stefanb@linux.ibm.com>
Reviewed-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: Ninad Palsule <ninad@linux.ibm.com>
Message-id: 20230328120844.190914-1-joel@jms.id.au


  Commit: f0de635677f264f79c8f85389e6203e32c423351
      
https://github.com/qemu/qemu/commit/f0de635677f264f79c8f85389e6203e32c423351
  Author: Stefan Berger <stefanb@linux.ibm.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M include/hw/i2c/aspeed_i2c.h
    A tests/qtest/qtest_aspeed.c
    A tests/qtest/qtest_aspeed.h

  Log Message:
  -----------
  qtest: Add functions for accessing devices on Aspeed I2C controller

Add read and write functions for accessing registers of I2C devices
connected to the Aspeed I2C controller.

Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
Reviewed-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: Ninad Palsule <ninad@linux.ibm.com>
Acked-by: Thomas Huth <thuth@redhat.com>
Message-id: 20230331173051.3857801-2-stefanb@linux.ibm.com


  Commit: ea5e73b6f52179416cdee9db18bec36fc00cf280
      
https://github.com/qemu/qemu/commit/ea5e73b6f52179416cdee9db18bec36fc00cf280
  Author: Stefan Berger <stefanb@linux.ibm.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M tests/qtest/tpm-crb-swtpm-test.c
    M tests/qtest/tpm-crb-test.c
    M tests/qtest/tpm-tis-device-swtpm-test.c
    M tests/qtest/tpm-tis-swtpm-test.c
    M tests/qtest/tpm-tis-util.c
    M tests/qtest/tpm-tis-util.h
    M tests/qtest/tpm-util.c
    M tests/qtest/tpm-util.h

  Log Message:
  -----------
  qtest: Move tpm_util_tis_transmit() into tpm-tis-utils.c and rename it

To be able to remove tpm_tis_base_addr from test cases that do not really
need it move the tpm_util_tis_transmit() function into tpm-tis-utils.c and
rename it to tpm_tis_transmit().

Fix a locality parameter in a test case on the way.

Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
Reviewed-by: Ninad Palsule <ninad@linux.ibm.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-id: 20230331173051.3857801-3-stefanb@linux.ibm.com


  Commit: 9d81aa3c0fe7480d722517f69e1bcb4aeaaf859c
      
https://github.com/qemu/qemu/commit/9d81aa3c0fe7480d722517f69e1bcb4aeaaf859c
  Author: Stefan Berger <stefanb@linux.ibm.com>
  Date:   2023-04-20 (Thu, 20 Apr 2023)

  Changed paths:
    M tests/qtest/meson.build
    A tests/qtest/tpm-tis-i2c-test.c

  Log Message:
  -----------
  qtest: Add a test case for TPM TIS I2C connected to Aspeed I2C controller

Add a test case for the TPM TIS I2C device exercising most of its
functionality, including localities.

Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
Tested-by: Cédric Le Goater <clg@kaod.org>
Tested-by: Ninad Palsule<ninad@linux.ibm.com>
Message-id: 20230331173051.3857801-4-stefanb@linux.ibm.com


  Commit: 29c343a463450f1aa15609014fb87a0472403d70
      
https://github.com/qemu/qemu/commit/29c343a463450f1aa15609014fb87a0472403d70
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-21 (Fri, 21 Apr 2023)

  Changed paths:
    M docs/devel/kconfig.rst
    M docs/system/arm/cubieboard.rst
    M docs/system/arm/emulation.rst
    M docs/system/arm/orangepi.rst
    M gdb-xml/aarch64-pauth.xml
    M hw/arm/Kconfig
    M hw/arm/allwinner-a10.c
    M hw/arm/allwinner-h3.c
    M hw/arm/exynos4210.c
    M hw/arm/fsl-imx6ul.c
    M hw/arm/fsl-imx7.c
    M hw/arm/mcimx6ul-evk.c
    M hw/arm/mcimx7d-sabre.c
    M hw/arm/musicpal.c
    M hw/arm/omap1.c
    M hw/arm/omap2.c
    M hw/arm/virt-acpi-build.c
    M hw/arm/virt.c
    M hw/arm/xlnx-versal-virt.c
    M hw/net/imx_fec.c
    M hw/timer/exynos4210_mct.c
    M hw/timer/imx_epit.c
    M hw/watchdog/Kconfig
    A hw/watchdog/allwinner-wdt.c
    M hw/watchdog/meson.build
    M hw/watchdog/trace-events
    M include/hw/arm/allwinner-a10.h
    M include/hw/arm/allwinner-h3.h
    M include/hw/arm/fsl-imx6ul.h
    M include/hw/arm/fsl-imx7.h
    M include/hw/net/imx_fec.h
    A include/hw/watchdog/allwinner-wdt.h
    M target/arm/cpu.h
    M target/arm/cpu64.c
    M target/arm/cpu_tcg.c
    M target/arm/gdbstub.c
    M target/arm/kvm-consts.h
    M target/arm/kvm.c
    M target/arm/kvm64.c
    M target/arm/kvm_arm.h
    M target/arm/ptw.c
    M target/arm/tcg/tlb_helper.c
    M tests/avocado/boot_linux_console.py

  Log Message:
  -----------
  Merge tag 'pull-target-arm-20230420' of 
https://git.linaro.org/people/pmaydell/qemu-arm into staging

target-arm queue:
 * hw/arm: Fix some typos in comments (most found by codespell)
 * exynos: Fix out-of-bounds access in exynos4210_gcomp_find debug printf
 * Orangepi-PC, Cubieboard: add Allwinner WDT watchdog emulation
 * tests/avocado: Add reboot tests to Cubieboard
 * hw/timer/imx_epit: Fix bugs in timer limit checking
 * target/arm: Remove KVM AArch32 CPU definitions
 * hw/arm/virt: Restrict Cortex-A7 check to TCG
 * target/arm: Initialize debug capabilities only once
 * target/arm: Implement FEAT_PAN3
 * docs/devel/kconfig.rst: Fix incorrect markup
 * target/arm: Report pauth information to gdb as 'pauth_v2'
 * mcimxd7-sabre, mcimx6ul-evk: Correctly model the way the PHY
   on the second ethernet device must be configured via the
   first one

# -----BEGIN PGP SIGNATURE-----
#
# iQJNBAABCAA3FiEE4aXFk81BneKOgxXPPCUl7RQ2DN4FAmRBDfkZHHBldGVyLm1h
# eWRlbGxAbGluYXJvLm9yZwAKCRA8JSXtFDYM3rtLD/93hJ+CEUnATXx7Ic7g0EvN
# eXIMsgd80pd1gn4PKzP9lol6I40VDuozs9mb9jP6+Hc0tEoOua4KlIvyMlYy4wSx
# eJBqt/gx/N/V+jwVG8seY+ifLIzECMLMOQIRQqQoVk+scENuiJIXcJRH5A1eUWNb
# iV0QfJa1gQrKyyIG9vNfZ+cS+xy0bl0E9FlZ0ty3zeh0xBaMhUqnpraTVLISWelP
# OEovcIBEzvD/ngj+7F/xKBGgtSTZ1FuN5p/oOFDCH2Fihe2+wuw7B3Rc1SbHLG7n
# Wr4JZozdPbnudhrZgn+1A9SCFhH+B8k/QlKY2Qc+w+GrnC0JpJAmqtaF2aIaepPo
# kfbTUshDstIZ7MnCeAa+SWn2Exgrsn0Gv9nWdOrPgrvo0bqK6ceAhchi5nFmkkaJ
# MOy+Xx5GIAE91418wR8C2TlrTl58A81s15AYY1D7nZ0GeuZV5io7wPIAOWa14rOQ
# RdvQ/0rcZ+IkOFXz5Zj/L/Y/W4BpDyfuUVzLAah56zYkuV4im2cLt3YAOMFYZjjO
# 6W1sdbAcuA5QFmO4v5VmcTU8t/B423QzcnssE6sbM0nazMh/i6kjzvJUhdJTQmi+
# lKjIe+MHutTgrbjrwemjiafk3dOpFpKtso/4C/dhP2UfDIcKuGXNpSYxCvoknO2j
# TWvxRvir/PC7gzUzA4CrwQ==
# =YUUL
# -----END PGP SIGNATURE-----
# gpg: Signature made Thu 20 Apr 2023 11:03:37 AM BST
# gpg:                using RSA key E1A5C593CD419DE28E8315CF3C2525ED14360CDE
# gpg:                issuer "peter.maydell@linaro.org"
# gpg: Good signature from "Peter Maydell <peter.maydell@linaro.org>" [full]
# gpg:                 aka "Peter Maydell <pmaydell@gmail.com>" [full]
# gpg:                 aka "Peter Maydell <pmaydell@chiark.greenend.org.uk>" 
[full]

* tag 'pull-target-arm-20230420' of 
https://git.linaro.org/people/pmaydell/qemu-arm: (21 commits)
  arm/mcimx7d-sabre: Set fec2-phy-connected property to false
  fsl-imx7: Add fec[12]-phy-connected properties
  arm/mcimx6ul-evk: Set fec1-phy-connected property to false
  fsl-imx6ul: Add fec[12]-phy-connected properties
  hw/net/imx_fec: Support two Ethernet interfaces connected to single MDIO bus
  target/arm: Report pauth information to gdb as 'pauth_v2'
  docs/devel/kconfig.rst: Fix incorrect markup
  target/arm: Implement FEAT_PAN3
  target/arm: Don't set ISV when reporting stage 1 faults in ESR_EL2
  target/arm: Pass ARMMMUFaultInfo to merge_syn_data_abort()
  target/arm: Initialize debug capabilities only once
  hw/arm/virt: Restrict Cortex-A7 check to TCG
  target/arm: Remove KVM AArch32 CPU definitions
  hw/timer/imx_epit: fix limit check
  hw/timer/imx_epit: don't shadow variable
  tests/avocado: Add reboot tests to Cubieboard
  hw/arm: Add WDT to Allwinner-H3 and Orangepi-PC
  hw/arm: Add WDT to Allwinner-A10 and Cubieboard
  hw/watchdog: Allwinner WDT emulation for system reset
  exynos: Fix out-of-bounds access in exynos4210_gcomp_find debug printf
  ...

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 1093893f07debd06a4f2aaf677b6e90997c9245f
      
https://github.com/qemu/qemu/commit/1093893f07debd06a4f2aaf677b6e90997c9245f
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-21 (Fri, 21 Apr 2023)

  Changed paths:
    M .travis.yml
    M MAINTAINERS
    M chardev/char-file.c
    M chardev/char.c
    M cpu.c
    M docs/system/devices/cxl.rst
    M docs/system/introduction.rst
    M hw/arm/virt.c
    M hw/char/meson.build
    M hw/core/machine.c
    M hw/core/meson.build
    M hw/display/meson.build
    M hw/display/vga.c
    M hw/i386/pc.c
    M hw/i386/pc_piix.c
    M hw/i386/pc_q35.c
    M hw/m68k/virt.c
    M hw/ppc/spapr.c
    M hw/ppc/spapr_rtas.c
    M hw/s390x/s390-virtio-ccw.c
    M include/exec/cpu-all.h
    M include/exec/cpu-common.h
    A include/exec/tswap.h
    M include/hw/boards.h
    M include/hw/i2c/aspeed_i2c.h
    M include/hw/i386/pc.h
    M include/sysemu/qtest.h
    M qemu-options.hx
    M softmmu/dirtylimit.c
    M softmmu/meson.build
    M softmmu/qtest.c
    M softmmu/vl.c
    M target/i386/cpu.c
    M tests/qtest/meson.build
    M tests/qtest/migration-test.c
    A tests/qtest/qtest_aspeed.c
    A tests/qtest/qtest_aspeed.h
    M tests/qtest/tpm-crb-swtpm-test.c
    M tests/qtest/tpm-crb-test.c
    M tests/qtest/tpm-tis-device-swtpm-test.c
    A tests/qtest/tpm-tis-i2c-test.c
    M tests/qtest/tpm-tis-swtpm-test.c
    M tests/qtest/tpm-tis-util.c
    M tests/qtest/tpm-tis-util.h
    M tests/qtest/tpm-util.c
    M tests/qtest/tpm-util.h
    M tests/unit/test-crypto-secret.c
    M tests/vm/freebsd

  Log Message:
  -----------
  Merge tag 'pull-request-2023-04-20' of https://gitlab.com/thuth/qemu into 
staging

* Compat machines for version 8.1
* Allow setting a chardev input file on the command line
* Fix .travis.yml to work with non-public Travis instances, too
* Move a lot of code from specifc_ss into softmmu_ss
* Add a test case for TPM TIS I2C connected to Aspeed I2C controller
* Update tests/vm/freebsd to version 13
* Some more misc minor fixes here and there

# -----BEGIN PGP SIGNATURE-----
#
# iQJFBAABCAAvFiEEJ7iIR+7gJQEY8+q5LtnXdP5wLbUFAmRBDtMRHHRodXRoQHJl
# ZGhhdC5jb20ACgkQLtnXdP5wLbXfjw//UYytlyZsDOLAMfFNGQViMmVf29KbrDRe
# doDh4Nl1oZLNKm9C5XlQExhsRbLm6Hi9nyQvSCJs4CvZ1jBY6U7GfgMNIaozXWb3
# 4gQyJb9ACe/z8bQmPUVF2sdW1QZ9zpf8LWpCOTGUZiI2Tevzkz7b/F5ZxiQiseG6
# dXe8UIwdZhG4jz2+6viqjHiGlKoBkegGYoJthcwnR07aRz2woiNr7rKRiJEiv2G7
# UfMVB96uLkpEhaDoohz440/rjviazO1nt6HDvgEajXT1X5P/8phT9IvT7olAZXZH
# R2Qm6YyYcSWavoPms3AryAWG8FjomcyBjuebfAVW5/x+fl/401sn9quBMoZrYPEX
# dfzF64vVokdXNQEH6+qc95PdB6/+d0CZPY8ilMRtAttf2sMw7IgqhG3zDLbj9t6R
# dns2/DY9zu2pp07IEAXn/iVbW4rl2HADUQncr6B/cPy++lYiFvv7LX8OE+YWOsk0
# gvxzYx6rRhr5j7xT1sP30pLwsG3mX7qRDfba1Bt19CzSbu7UGN+w+S1xclgZDoqE
# 0AZIeVUuqqNTEoBLoa2xHUDGs9NjeI2+qIh0R5csS/bqDscLXj0cOluvJO48n4Rt
# +SGQSCSmU/lxn6EbBz4tw3orlp0clBH9fEaSg9lYxuUTYvQOpdYS7u4d63VQFvzp
# dwQ9LRDFNsA=
# =8ZFL
# -----END PGP SIGNATURE-----
# gpg: Signature made Thu 20 Apr 2023 11:07:15 AM BST
# gpg:                using RSA key 27B88847EEE0250118F3EAB92ED9D774FE702DB5
# gpg:                issuer "thuth@redhat.com"
# gpg: Good signature from "Thomas Huth <th.huth@gmx.de>" [undefined]
# gpg:                 aka "Thomas Huth <thuth@redhat.com>" [undefined]
# gpg:                 aka "Thomas Huth <th.huth@posteo.de>" [unknown]
# gpg:                 aka "Thomas Huth <huth@tuxfamily.org>" [undefined]
# 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: 27B8 8847 EEE0 2501 18F3  EAB9 2ED9 D774 FE70 2DB5

* tag 'pull-request-2023-04-20' of https://gitlab.com/thuth/qemu: (23 commits)
  tests/vm/freebsd: Update to FreeBSD 13.2
  qtest: Add a test case for TPM TIS I2C connected to Aspeed I2C controller
  qtest: Move tpm_util_tis_transmit() into tpm-tis-utils.c and rename it
  qtest: Add functions for accessing devices on Aspeed I2C controller
  MAINTAINERS: Add Juan Quintela to developer guides review
  cpu: Remove parameter of list_cpus()
  hw/core: Move numa.c into the target independent source set
  softmmu: Move dirtylimit.c into the target independent source set
  hw/display: Compile vga.c as target-independent code
  softmmu: Make qtest.c target independent
  include/exec: Provide the tswap() functions for target independent code, too
  softmmu/qtest: Move the target-specific pseries RTAS code out of qtest.c
  hw/char: Move two more files from specific_ss to softmmu_ss
  target/i386: Set family/model/stepping of the "max" CPU according to LM bit
  tests/migration: Only run auto_converge in slow mode
  travis.yml: Add missing 'flex', 'bison' packages to 'GCC (user)' job
  travis.yml: Add missing clang-10 package to the 'Clang (disable-tcg)' job
  chardev: Allow setting file chardev input file on the command line
  qtest: Don't assert on "-qtest chardev:myid"
  test: Fix test-crypto-secret when compiling without keyring support
  ...

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: bee1fc56c2fae6fb96cc54b24a3a7ed7767a2f4a
      
https://github.com/qemu/qemu/commit/bee1fc56c2fae6fb96cc54b24a3a7ed7767a2f4a
  Author: Matheus Tavares Bernardino <quic_mathbern@quicinc.com>
  Date:   2023-04-21 (Fri, 21 Apr 2023)

  Changed paths:
    M target/hexagon/translate.c

  Log Message:
  -----------
  Hexagon (translate.c): avoid redundant PC updates on COF

When there is a conditional change of flow or an endloop instruction, we
preload HEX_REG_PC with ctx->next_PC at gen_start_packet(). Nonetheless,
we still generate TCG code to do this update again at gen_goto_tb() when
the condition for the COF is not met, thus producing redundant
instructions. This can be seen with the following packet:

 0x004002e4:  0x5c20d000 {       if (!P0) jump:t PC+0 }

Which generates this TCG code:

   ---- 004002e4
-> mov_i32 pc,$0x4002e8
   and_i32 loc9,p0,$0x1
   mov_i32 branch_taken,loc9
   add_i32 pkt_cnt,pkt_cnt,$0x2
   add_i32 insn_cnt,insn_cnt,$0x2
   brcond_i32 branch_taken,$0x0,ne,$L1
   goto_tb $0x0
   mov_i32 pc,$0x4002e4
   exit_tb $0x7fb0c36e5200
   set_label $L1
   goto_tb $0x1
-> mov_i32 pc,$0x4002e8
   exit_tb $0x7fb0c36e5201
   set_label $L0
   exit_tb $0x7fb0c36e5203

Note that even after optimizations, the redundant PC update is still
present:

   ---- 004002e4
-> mov_i32 pc,$0x4002e8                     sync: 0  dead: 0 1  pref=0xffff
   mov_i32 branch_taken,$0x1                sync: 0  dead: 0 1  pref=0xffff
   add_i32 pkt_cnt,pkt_cnt,$0x2             sync: 0  dead: 0 1  pref=0xffff
   add_i32 insn_cnt,insn_cnt,$0x2           sync: 0  dead: 0 1 2  pref=0xffff
   goto_tb $0x1
-> mov_i32 pc,$0x4002e8                     sync: 0  dead: 0 1  pref=0xffff
   exit_tb $0x7fb0c36e5201
   set_label $L0
   exit_tb $0x7fb0c36e5203

With this patch, the second redundant update is properly discarded.

Note that we need the additional "move_to_pc" flag instead of just
avoiding the update whenever `dest == ctx->next_PC`, as that could
potentially skip updates from a COF with met condition, whose
ctx->branch_dest just happens to be equal to ctx->next_PC.

Signed-off-by: Matheus Tavares Bernardino <quic_mathbern@quicinc.com>
Signed-off-by: Taylor Simpson <tsimpson@quicinc.com>
Reviewed-by: Anton Johansson <anjo@rev.ng>
Reviewed-by: Taylor Simpson <tsimpson@quicinc.com>
Message-Id: 
<fc059153c3f0526d97b7f13450c02b276b0908e1.1679519341.git.quic_mathbern@quicinc.com>


  Commit: cd6c4edff69ce6ba0aa8e6ed702f43a042a456bc
      
https://github.com/qemu/qemu/commit/cd6c4edff69ce6ba0aa8e6ed702f43a042a456bc
  Author: Marco Liebel <quic_mliebel@quicinc.com>
  Date:   2023-04-21 (Fri, 21 Apr 2023)

  Changed paths:
    M target/hexagon/gen_analyze_funcs.py
    M target/hexagon/gen_helper_funcs.py
    M target/hexagon/gen_helper_protos.py
    M target/hexagon/gen_idef_parser_funcs.py
    M target/hexagon/gen_op_attribs.py
    M target/hexagon/gen_op_regs.py
    M target/hexagon/gen_opcodes_def.py
    M target/hexagon/gen_printinsn.py
    M target/hexagon/gen_shortcode.py
    M target/hexagon/gen_tcg_func_table.py
    M target/hexagon/gen_tcg_funcs.py
    M target/hexagon/hex_common.py

  Log Message:
  -----------
  Use f-strings in python scripts

Replace python 2 format string with f-strings

Signed-off-by: Marco Liebel <quic_mliebel@quicinc.com>
Signed-off-by: Taylor Simpson <tsimpson@quicinc.com>
Reviewed-by: Taylor Simpson <tsimpson@quicinc.com>
Tested-by: Taylor Simpson <tsimpson@quicinc.com>
Message-Id: <20230320092533.2859433-2-quic_mliebel@quicinc.com>


  Commit: 5bb322e2a8ff001da60bda65459bde6e242cbe3c
      
https://github.com/qemu/qemu/commit/5bb322e2a8ff001da60bda65459bde6e242cbe3c
  Author: Marco Liebel <quic_mliebel@quicinc.com>
  Date:   2023-04-21 (Fri, 21 Apr 2023)

  Changed paths:
    M target/hexagon/dectree.py
    M target/hexagon/gen_analyze_funcs.py
    M target/hexagon/gen_helper_funcs.py
    M target/hexagon/gen_helper_protos.py
    M target/hexagon/gen_idef_parser_funcs.py
    M target/hexagon/gen_op_attribs.py
    M target/hexagon/gen_op_regs.py
    M target/hexagon/gen_opcodes_def.py
    M target/hexagon/gen_printinsn.py
    M target/hexagon/gen_shortcode.py
    M target/hexagon/gen_tcg_func_table.py
    M target/hexagon/gen_tcg_funcs.py
    M target/hexagon/hex_common.py

  Log Message:
  -----------
  Use black code style for python scripts

Signed-off-by: Marco Liebel <quic_mliebel@quicinc.com>
Signed-off-by: Taylor Simpson <tsimpson@quicinc.com>
Acked-by: Taylor Simpson <tsimpson@quicinc.com>
Tested-by: Taylor Simpson <tsimpson@quicinc.com>
Message-Id: <20230320092533.2859433-3-quic_mliebel@quicinc.com>


  Commit: 93550aebf8bdf3c99810aa96dbc7f9c10eead81e
      
https://github.com/qemu/qemu/commit/93550aebf8bdf3c99810aa96dbc7f9c10eead81e
  Author: Taylor Simpson <tsimpson@quicinc.com>
  Date:   2023-04-21 (Fri, 21 Apr 2023)

  Changed paths:
    M target/hexagon/macros.h

  Log Message:
  -----------
  Hexagon (target/hexagon) Remove redundant/unused macros

Remove the following macros (remnants of the old generator design)
    READ_REG
    READ_PREG
    WRITE_RREG
    WRITE_PREG
Modify macros that rely on the above

The following are unused
    READ_IREG
    fGET_FIELD
    fSET_FIELD
    fREAD_P3
    fREAD_NPC
    fWRITE_LC0
    fWRITE_LC1

Signed-off-by: Taylor Simpson <tsimpson@quicinc.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20230405183048.147767-1-tsimpson@quicinc.com>


  Commit: 2bda44e8aa8ed3b60c9d373dcbfaf92d51b270ec
      
https://github.com/qemu/qemu/commit/2bda44e8aa8ed3b60c9d373dcbfaf92d51b270ec
  Author: Taylor Simpson <tsimpson@quicinc.com>
  Date:   2023-04-21 (Fri, 21 Apr 2023)

  Changed paths:
    M target/hexagon/helper.h
    M target/hexagon/op_helper.c
    M target/hexagon/translate.c
    M target/hexagon/translate.h

  Log Message:
  -----------
  Hexagon (target/hexagon) Merge arguments to probe_pkt_scalar_hvx_stores

Reducing the number of arguments reduces the overhead of the helper
call

Signed-off-by: Taylor Simpson <tsimpson@quicinc.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20230405164211.30015-2-tsimpson@quicinc.com>


  Commit: a52584815e7adb2413893d2f5323bf7487c9117f
      
https://github.com/qemu/qemu/commit/a52584815e7adb2413893d2f5323bf7487c9117f
  Author: Taylor Simpson <tsimpson@quicinc.com>
  Date:   2023-04-21 (Fri, 21 Apr 2023)

  Changed paths:
    M target/hexagon/gen_tcg.h
    M tests/tcg/hexagon/misc.c

  Log Message:
  -----------
  Hexagon (target/hexagon) Add overrides for count trailing zeros/ones

The following instructions are overriden
    S2_ct0            Count trailing zeros
    S2_ct1            Count trailing ones
    S2_ct0p           Count trailing zeros (register pair)
    S2_ct1p           Count trailing ones (register pair)

These instructions are not handled by idef-parser because the
imported semantics uses bit-reverse.  However, they are
straightforward to implement in TCG with tcg_gen_ctzi_*

Test cases added to tests/tcg/hexagon/misc.c

Signed-off-by: Taylor Simpson <tsimpson@quicinc.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20230405164211.30015-1-tsimpson@quicinc.com>


  Commit: 148ef7fd8d7ec0bc48668a6ec28584e18b76912d
      
https://github.com/qemu/qemu/commit/148ef7fd8d7ec0bc48668a6ec28584e18b76912d
  Author: Taylor Simpson <tsimpson@quicinc.com>
  Date:   2023-04-21 (Fri, 21 Apr 2023)

  Changed paths:
    M target/hexagon/gen_tcg.h
    M target/hexagon/genptr.c
    M target/hexagon/genptr.h
    M target/hexagon/idef-parser/idef-parser.y
    M target/hexagon/idef-parser/parser-helpers.c
    M target/hexagon/macros.h

  Log Message:
  -----------
  Hexagon (target/hexagon) Updates to USR should use get_result_gpr

Signed-off-by: Taylor Simpson <tsimpson@quicinc.com>
Reviewed-by: Anton Johansson <anjo@rev.ng>
Message-Id: <20230405164211.30015-3-tsimpson@quicinc.com>


  Commit: 761e1c675e73502f95fc9e70aaeb4f228985cc44
      
https://github.com/qemu/qemu/commit/761e1c675e73502f95fc9e70aaeb4f228985cc44
  Author: Taylor Simpson <tsimpson@quicinc.com>
  Date:   2023-04-21 (Fri, 21 Apr 2023)

  Changed paths:
    M tests/tcg/hexagon/Makefile.target
    M tests/tcg/hexagon/hvx_misc.c
    A tests/tcg/hexagon/hvx_misc.h

  Log Message:
  -----------
  Hexagon (tests/tcg/hexagon) Move HVX test infra to header file

This will facilitate adding additional tests in separate .c files

Signed-off-by: Taylor Simpson <tsimpson@quicinc.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20230406174241.853296-1-tsimpson@quicinc.com>


  Commit: 111c529aa652fde71fe54a91776ffd166b724b42
      
https://github.com/qemu/qemu/commit/111c529aa652fde71fe54a91776ffd166b724b42
  Author: Taylor Simpson <tsimpson@quicinc.com>
  Date:   2023-04-21 (Fri, 21 Apr 2023)

  Changed paths:
    M target/hexagon/gen_helper_funcs.py
    M target/hexagon/macros.h
    M target/hexagon/op_helper.c
    M target/hexagon/op_helper.h

  Log Message:
  -----------
  Hexagon (target/hexagon) Remove unused slot variable in helpers

The slot variable in helpers was only passed to log_reg_write function
where the argument is unused.
- Remove declaration from generated helper functions
- Remove slot argument from log_reg_write

Signed-off-by: Taylor Simpson <tsimpson@quicinc.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20230407204521.357244-1-tsimpson@quicinc.com>


  Commit: a305a170398d80c08e19c2ef4c8637a4f4de50e1
      
https://github.com/qemu/qemu/commit/a305a170398d80c08e19c2ef4c8637a4f4de50e1
  Author: Taylor Simpson <tsimpson@quicinc.com>
  Date:   2023-04-21 (Fri, 21 Apr 2023)

  Changed paths:
    M target/hexagon/gen_tcg.h
    M target/hexagon/macros.h

  Log Message:
  -----------
  Hexagon (target/hexagon) Add overrides for cache/sync/barrier instructions

Most of these are not modelled in QEMU, so save the overhead of
calling a helper.

The only exception is dczeroa.  It assigns to hex_dczero_addr, which
is handled during packet commit.

Signed-off-by: Taylor Simpson <tsimpson@quicinc.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20230410202402.2856852-1-tsimpson@quicinc.com>


  Commit: 45608654aa63ca2b311d6cb761e1522f2128e00e
      
https://github.com/qemu/qemu/commit/45608654aa63ca2b311d6cb761e1522f2128e00e
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-21 (Fri, 21 Apr 2023)

  Changed paths:
    M docs/specs/tpm.rst
    M hw/arm/Kconfig
    M hw/tpm/Kconfig
    M hw/tpm/meson.build
    M hw/tpm/tpm_tis.h
    M hw/tpm/tpm_tis_common.c
    A hw/tpm/tpm_tis_i2c.c
    M hw/tpm/trace-events
    M include/hw/acpi/tpm.h
    M include/sysemu/tpm.h
    M tests/avocado/machine_aspeed.py

  Log Message:
  -----------
  Merge tag 'pull-tpm-2023-04-20-1' of https://github.com/stefanberger/qemu-tpm 
into staging

Merge tpm 2023/04/20 v1

# -----BEGIN PGP SIGNATURE-----
#
# iQEzBAABCAAdFiEEuBi5yt+QicLVzsZrda1lgCoLQhEFAmRBLgoACgkQda1lgCoL
# QhEPyQf/WfEg8k2hDLExobsSgup1IsnT+mHHTBOZVJvq2efg2YXUTHA56fmD9X6d
# crqTq68L5oaMES5iYEZhA7EAgfk3RvxDQGrlXBByPzrc6SSwEHHMR4Zzi5zrbCoW
# t6TmaKQrlQqYwkhhsbyqnG46bj0ugCDagkBLfJdVl96fjkYgTspcDxaNwqwy/DPn
# GTmQlvdRY09D1nylIdtcLBIfsM+sIkRslyngbUEIy+Bx8EWRy2a8Qw0BdY9g1XoE
# e0CaRaFMpju1KOIjq0YSIzt0LSQDFfPc1IlUAC0ZALhNmp+PPNtr4E7+4kFfO2ym
# 1sT2w25ho8dYDdm/m8tIauCdGoHw4A==
# =ML27
# -----END PGP SIGNATURE-----
# gpg: Signature made Thu 20 Apr 2023 01:20:26 PM BST
# gpg:                using RSA key B818B9CADF9089C2D5CEC66B75AD65802A0B4211
# gpg: Good signature from "Stefan Berger <stefanb@linux.vnet.ibm.com>" 
[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: B818 B9CA DF90 89C2 D5CE  C66B 75AD 6580 2A0B 4211

* tag 'pull-tpm-2023-04-20-1' of https://github.com/stefanberger/qemu-tpm:
  qtest: Add a test case for TPM TIS I2C connected to Aspeed I2C controller
  qtest: Move tpm_util_tis_transmit() into tpm-tis-utils.c and rename it
  qtest: Add functions for accessing devices on Aspeed I2C controller
  tests/avocado/aspeed: Add TPM TIS I2C test
  tpm: Add support for TPM device over I2C bus
  tpm: Extend common APIs to support TPM TIS I2C
  docs: Add support for TPM devices over I2C bus

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 1cc6e1a20144c0ae360cbeb0e035fdee1bd80609
      
https://github.com/qemu/qemu/commit/1cc6e1a20144c0ae360cbeb0e035fdee1bd80609
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-22 (Sat, 22 Apr 2023)

  Changed paths:
    M .gitignore
    M block/block-backend.c
    M configure
    M docs/devel/atomics.rst
    M hw/misc/lasi.c
    M hw/nvme/ctrl.c
    M hw/nvme/trace-events
    M include/hw/misc/lasi.h
    M include/io/channel.h
    M include/migration/qemu-file-types.h
    M include/qapi/qmp/dispatch.h
    M io/channel.c
    M migration/postcopy-ram.c
    M migration/qemu-file.c
    M migration/qemu-file.h
    M nbd/server.c
    M qapi/qmp-dispatch.c
    M scripts/coverity-scan/COMPONENTS.md
    M scripts/coverity-scan/coverity-scan.docker
    M scripts/mtest2make.py
    M scripts/qapi/commands.py
    A subprojects/slirp.wrap
    M target/i386/cpu.c
    M target/i386/tcg/sysemu/excp_helper.c
    M target/mips/tcg/translate.c
    M tests/docker/dockerfiles/centos8.docker
    M tests/docker/dockerfiles/debian-amd64-cross.docker
    M tests/docker/dockerfiles/debian-arm64-cross.docker
    M tests/docker/dockerfiles/debian-armel-cross.docker
    M tests/docker/dockerfiles/debian-armhf-cross.docker
    M tests/docker/dockerfiles/debian-mips64el-cross.docker
    M tests/docker/dockerfiles/debian-mipsel-cross.docker
    M tests/docker/dockerfiles/debian-ppc64el-cross.docker
    M tests/docker/dockerfiles/debian-s390x-cross.docker
    M tests/docker/dockerfiles/fedora-win32-cross.docker
    M tests/docker/dockerfiles/fedora-win64-cross.docker
    M tests/docker/dockerfiles/fedora.docker
    M tests/docker/dockerfiles/opensuse-leap.docker
    M tests/lcitool/libvirt-ci
    M tests/lcitool/mappings.yml
    M tests/lcitool/refresh
    A tests/lcitool/targets/opensuse-leap-15.yml
    R tests/lcitool/targets/opensuse-leap-153.yml
    M tests/qtest/bios-tables-test.c
    M ui/vnc.c
    M util/qemu-coroutine.c

  Log Message:
  -----------
  Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging

* Optional use of Meson wrap for slirp
* Coverity fixes
* Avoid -Werror=maybe-uninitialized
* Mark coroutine QMP command functions as coroutine_fn
* Mark functions that suspend as coroutine_mixed_fn
* target/i386: Fix SGX CPUID leaf
* First batch of qatomic_mb_read() removal
* Small atomic.rst improvement
* NBD cleanup
* Update libvirt-ci submodule

# -----BEGIN PGP SIGNATURE-----
#
# iQFIBAABCAAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAmRBAzwUHHBib256aW5p
# QHJlZGhhdC5jb20ACgkQv/vSX3jHroP64gf+NzLW95tylCfhKuuLq/TjuOTQqHCD
# KVLlA1I3pwJfk4SUuigrnaJtwfa/tBiWxfaivUdPAzPzeXyxcVSOps0neohrmFBh
# 2e3ylBWWz22K0gkLtrFwJT99TVy6w6Xhj9SX8HPRfxl4k8yMPrUJNW78hh6APAwq
# /etZY6+ieHC7cwG4xluhxsHnxnBYBYD+18hUd+b5LchD/yvCSCNNiursutpa0Ar/
# r/HtDwNFKlaApO3sU4R3yYgdS1Fvcas4tDZaumADsQlSG5z+UeJldc98LiRlFrAA
# gnskBSaaly/NgWqY3hVCYaBGyjD4lWPkX/FEChi0XX6Fl1P0umQAv/7z3w==
# =XSAs
# -----END PGP SIGNATURE-----
# gpg: Signature made Thu 20 Apr 2023 10:17:48 AM BST
# gpg:                using RSA key F13338574B662389866C7682BFFBD25F78C7AE83
# gpg:                issuer "pbonzini@redhat.com"
# gpg: Good signature from "Paolo Bonzini <bonzini@gnu.org>" [undefined]
# gpg:                 aka "Paolo Bonzini <pbonzini@redhat.com>" [undefined]
# 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: 46F5 9FBD 57D6 12E7 BFD4  E2F7 7E15 100C CD36 69B1
#      Subkey fingerprint: F133 3857 4B66 2389 866C  7682 BFFB D25F 78C7 AE83

* tag 'for-upstream' of https://gitlab.com/bonzini/qemu: (25 commits)
  tests: lcitool: Switch to OpenSUSE Leap 15.4
  tests: libvirt-ci: Update to commit '2fa24dce8bc'
  configure: Honour cross-prefix when finding ObjC compiler
  coverity: unify Fedora dockerfiles
  nbd: a BlockExport always has a BlockBackend
  docs: explain effect of smp_read_barrier_depends() on modern architectures
  qemu-coroutine: remove qatomic_mb_read()
  postcopy-ram: do not use qatomic_mb_read
  block-backend: remove qatomic_mb_read()
  target/i386: Change wrong XFRM value in SGX CPUID leaf
  monitor: mark mixed functions that can suspend
  migration: mark mixed functions that can suspend
  io: mark mixed functions that can suspend
  qapi-gen: mark coroutine QMP command functions as coroutine_fn
  target/mips: tcg: detect out-of-bounds accesses to cpu_gpr and cpu_gpr_hi
  coverity: update COMPONENTS.md
  lasi: fix RTC migration
  target/i386: Avoid unreachable variable declaration in mmu_translate()
  configure: Avoid -Werror=maybe-uninitialized
  tests: bios-tables-test: replace memset with initializer
  ...

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 6dd06214892d71cbbdd25daed7693e58afcb1093
      
https://github.com/qemu/qemu/commit/6dd06214892d71cbbdd25daed7693e58afcb1093
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-22 (Sat, 22 Apr 2023)

  Changed paths:
    M target/hexagon/dectree.py
    M target/hexagon/gen_analyze_funcs.py
    M target/hexagon/gen_helper_funcs.py
    M target/hexagon/gen_helper_protos.py
    M target/hexagon/gen_idef_parser_funcs.py
    M target/hexagon/gen_op_attribs.py
    M target/hexagon/gen_op_regs.py
    M target/hexagon/gen_opcodes_def.py
    M target/hexagon/gen_printinsn.py
    M target/hexagon/gen_shortcode.py
    M target/hexagon/gen_tcg.h
    M target/hexagon/gen_tcg_func_table.py
    M target/hexagon/gen_tcg_funcs.py
    M target/hexagon/genptr.c
    M target/hexagon/genptr.h
    M target/hexagon/helper.h
    M target/hexagon/hex_common.py
    M target/hexagon/idef-parser/idef-parser.y
    M target/hexagon/idef-parser/parser-helpers.c
    M target/hexagon/macros.h
    M target/hexagon/op_helper.c
    M target/hexagon/op_helper.h
    M target/hexagon/translate.c
    M target/hexagon/translate.h
    M tests/tcg/hexagon/Makefile.target
    M tests/tcg/hexagon/hvx_misc.c
    A tests/tcg/hexagon/hvx_misc.h
    M tests/tcg/hexagon/misc.c

  Log Message:
  -----------
  Merge tag 'pull-hex-20230421' of https://github.com/quic/qemu into staging

Hexagon update

# -----BEGIN PGP SIGNATURE-----
#
# iQEzBAABCgAdFiEENjXHiM5iuR/UxZq0ewJE+xLeRCIFAmRCu/gACgkQewJE+xLe
# RCIlnQgAkdLjTQGC+V+HKIcuD6BWCqk+fRuMAI7Ban/bq/bN5nm4xv8rWIdBAKkj
# xj1MxWgW/yns76A/OupC6tJD/1PvkdvCGUPIdRphK60raP3l1o88ivs2WsJdw9/O
# PAubqwyYNhdnEIhiA9QOVkUoh7rVVKzpri2ldRNdmxBc9tQi9POYvKSVy6rSoiQw
# rhrYfpc0fd50L4oeT1rqpCad9NrbDlCwrRSc/1oA/pUPiuxUYYr6BiIx0ytbTvH2
# aMJUdA2ynkrgxkFn3v42qOrT7M9cs1b7abHz9obWibl6Jqcl4AIoKvF/kAuDmQuV
# FAq8Qhn/cK49M9xCEZOI8olE/xIUjQ==
# =+I8i
# -----END PGP SIGNATURE-----
# gpg: Signature made Fri 21 Apr 2023 05:38:16 PM BST
# gpg:                using RSA key 3635C788CE62B91FD4C59AB47B0244FB12DE4422
# gpg: Good signature from "Taylor Simpson (Rock on) <tsimpson@quicinc.com>" 
[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: 3635 C788 CE62 B91F D4C5  9AB4 7B02 44FB 12DE 4422

* tag 'pull-hex-20230421' of https://github.com/quic/qemu:
  Hexagon (target/hexagon) Add overrides for cache/sync/barrier instructions
  Hexagon (target/hexagon) Remove unused slot variable in helpers
  Hexagon (tests/tcg/hexagon) Move HVX test infra to header file
  Hexagon (target/hexagon) Updates to USR should use get_result_gpr
  Hexagon (target/hexagon) Add overrides for count trailing zeros/ones
  Hexagon (target/hexagon) Merge arguments to probe_pkt_scalar_hvx_stores
  Hexagon (target/hexagon) Remove redundant/unused macros
  Use black code style for python scripts
  Use f-strings in python scripts
  Hexagon (translate.c): avoid redundant PC updates on COF

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 1a057554cc2e3ece8ed166f12a9b85cd5ec4cbe1
      
https://github.com/qemu/qemu/commit/1a057554cc2e3ece8ed166f12a9b85cd5ec4cbe1
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-23 (Sun, 23 Apr 2023)

  Changed paths:
    M tcg/i386/tcg-target.c.inc
    M tcg/tcg.c

  Log Message:
  -----------
  tcg: Replace if + tcg_abort with tcg_debug_assert

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 732e89f4c401c3cf175aa84c987a029b9729070b
      
https://github.com/qemu/qemu/commit/732e89f4c401c3cf175aa84c987a029b9729070b
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-23 (Sun, 23 Apr 2023)

  Changed paths:
    M include/tcg/tcg.h
    M target/i386/tcg/translate.c
    M target/s390x/tcg/translate.c
    M tcg/aarch64/tcg-target.c.inc
    M tcg/arm/tcg-target.c.inc
    M tcg/i386/tcg-target.c.inc
    M tcg/mips/tcg-target.c.inc
    M tcg/optimize.c
    M tcg/ppc/tcg-target.c.inc
    M tcg/s390x/tcg-target.c.inc
    M tcg/sparc64/tcg-target.c.inc
    M tcg/tcg.c
    M tcg/tci/tcg-target.c.inc

  Log Message:
  -----------
  tcg: Replace tcg_abort with g_assert_not_reached

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 678155b2c50aa3bf37abef6bfe914bf58f49bec2
      
https://github.com/qemu/qemu/commit/678155b2c50aa3bf37abef6bfe914bf58f49bec2
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-23 (Sun, 23 Apr 2023)

  Changed paths:
    M tcg/aarch64/tcg-target.c.inc
    M tcg/arm/tcg-target.c.inc
    M tcg/i386/tcg-target.c.inc
    M tcg/loongarch64/tcg-target.c.inc
    M tcg/mips/tcg-target.c.inc
    M tcg/ppc/tcg-target.c.inc
    M tcg/riscv/tcg-target.c.inc
    M tcg/s390x/tcg-target.c.inc
    M tcg/sparc64/tcg-target.c.inc
    M tcg/tcg.c
    M tcg/tci/tcg-target.c.inc

  Log Message:
  -----------
  tcg: Split out tcg_out_ext8s

We will need a backend interface for performing 8-bit sign-extend.
Use it in tcg_reg_alloc_op in the meantime.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: d0e66c897f2cdfb0807b76567a17d7811487fac3
      
https://github.com/qemu/qemu/commit/d0e66c897f2cdfb0807b76567a17d7811487fac3
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-23 (Sun, 23 Apr 2023)

  Changed paths:
    M tcg/aarch64/tcg-target.c.inc
    M tcg/arm/tcg-target.c.inc
    M tcg/i386/tcg-target.c.inc
    M tcg/loongarch64/tcg-target.c.inc
    M tcg/mips/tcg-target.c.inc
    M tcg/ppc/tcg-target.c.inc
    M tcg/riscv/tcg-target.c.inc
    M tcg/s390x/tcg-target.c.inc
    M tcg/sparc64/tcg-target.c.inc
    M tcg/tcg.c
    M tcg/tci/tcg-target.c.inc

  Log Message:
  -----------
  tcg: Split out tcg_out_ext8u

We will need a backend interface for performing 8-bit zero-extend.
Use it in tcg_reg_alloc_op in the meantime.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 753e42eada5c790bb3727c262f2e368e81cc788f
      
https://github.com/qemu/qemu/commit/753e42eada5c790bb3727c262f2e368e81cc788f
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-23 (Sun, 23 Apr 2023)

  Changed paths:
    M tcg/aarch64/tcg-target.c.inc
    M tcg/arm/tcg-target.c.inc
    M tcg/i386/tcg-target.c.inc
    M tcg/loongarch64/tcg-target.c.inc
    M tcg/mips/tcg-target.c.inc
    M tcg/ppc/tcg-target.c.inc
    M tcg/riscv/tcg-target.c.inc
    M tcg/s390x/tcg-target.c.inc
    M tcg/sparc64/tcg-target.c.inc
    M tcg/tcg.c
    M tcg/tci/tcg-target.c.inc

  Log Message:
  -----------
  tcg: Split out tcg_out_ext16s

We will need a backend interface for performing 16-bit sign-extend.
Use it in tcg_reg_alloc_op in the meantime.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 379afdff47556f01e75ce2caffd7ae9efa4f1214
      
https://github.com/qemu/qemu/commit/379afdff47556f01e75ce2caffd7ae9efa4f1214
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-23 (Sun, 23 Apr 2023)

  Changed paths:
    M tcg/aarch64/tcg-target.c.inc
    M tcg/arm/tcg-target.c.inc
    M tcg/i386/tcg-target.c.inc
    M tcg/loongarch64/tcg-target.c.inc
    M tcg/mips/tcg-target.c.inc
    M tcg/ppc/tcg-target.c.inc
    M tcg/riscv/tcg-target.c.inc
    M tcg/s390x/tcg-target.c.inc
    M tcg/sparc64/tcg-target.c.inc
    M tcg/tcg.c
    M tcg/tci/tcg-target.c.inc

  Log Message:
  -----------
  tcg: Split out tcg_out_ext16u

We will need a backend interface for performing 16-bit zero-extend.
Use it in tcg_reg_alloc_op in the meantime.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 52bf3398c3a2f51d3eaf8fd30dafcdc0cc7fc571
      
https://github.com/qemu/qemu/commit/52bf3398c3a2f51d3eaf8fd30dafcdc0cc7fc571
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-23 (Sun, 23 Apr 2023)

  Changed paths:
    M tcg/aarch64/tcg-target.c.inc
    M tcg/arm/tcg-target.c.inc
    M tcg/i386/tcg-target.c.inc
    M tcg/loongarch64/tcg-target.c.inc
    M tcg/mips/tcg-target.c.inc
    M tcg/ppc/tcg-target.c.inc
    M tcg/riscv/tcg-target.c.inc
    M tcg/s390x/tcg-target.c.inc
    M tcg/sparc64/tcg-target.c.inc
    M tcg/tcg.c
    M tcg/tci/tcg-target.c.inc

  Log Message:
  -----------
  tcg: Split out tcg_out_ext32s

We will need a backend interface for performing 32-bit sign-extend.
Use it in tcg_reg_alloc_op in the meantime.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 9ecf5f61b8f468f17483f325f565802c645983a5
      
https://github.com/qemu/qemu/commit/9ecf5f61b8f468f17483f325f565802c645983a5
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-23 (Sun, 23 Apr 2023)

  Changed paths:
    M tcg/aarch64/tcg-target.c.inc
    M tcg/arm/tcg-target.c.inc
    M tcg/i386/tcg-target.c.inc
    M tcg/loongarch64/tcg-target.c.inc
    M tcg/mips/tcg-target.c.inc
    M tcg/ppc/tcg-target.c.inc
    M tcg/riscv/tcg-target.c.inc
    M tcg/s390x/tcg-target.c.inc
    M tcg/sparc64/tcg-target.c.inc
    M tcg/tcg.c
    M tcg/tci/tcg-target.c.inc

  Log Message:
  -----------
  tcg: Split out tcg_out_ext32u

We will need a backend interface for performing 32-bit zero-extend.
Use it in tcg_reg_alloc_op in the meantime.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 9c6aa274a494ce807e998a3652fa16a3d2da4387
      
https://github.com/qemu/qemu/commit/9c6aa274a494ce807e998a3652fa16a3d2da4387
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-23 (Sun, 23 Apr 2023)

  Changed paths:
    M tcg/aarch64/tcg-target.c.inc
    M tcg/arm/tcg-target.c.inc
    M tcg/i386/tcg-target.c.inc
    M tcg/loongarch64/tcg-target.c.inc
    M tcg/mips/tcg-target.c.inc
    M tcg/ppc/tcg-target.c.inc
    M tcg/riscv/tcg-target.c.inc
    M tcg/s390x/tcg-target.c.inc
    M tcg/sparc64/tcg-target.c.inc
    M tcg/tcg.c
    M tcg/tci/tcg-target.c.inc

  Log Message:
  -----------
  tcg: Split out tcg_out_exts_i32_i64

We will need a backend interface for type extension with sign.
Use it in tcg_reg_alloc_op in the meantime.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: b9bfe000f954e1defefb4c917f98bf82c337144b
      
https://github.com/qemu/qemu/commit/b9bfe000f954e1defefb4c917f98bf82c337144b
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-23 (Sun, 23 Apr 2023)

  Changed paths:
    M tcg/aarch64/tcg-target.c.inc
    M tcg/arm/tcg-target.c.inc
    M tcg/i386/tcg-target.c.inc
    M tcg/loongarch64/tcg-target.c.inc
    M tcg/mips/tcg-target.c.inc
    M tcg/ppc/tcg-target.c.inc
    M tcg/riscv/tcg-target.c.inc
    M tcg/s390x/tcg-target.c.inc
    M tcg/sparc64/tcg-target.c.inc
    M tcg/tcg.c
    M tcg/tci/tcg-target.c.inc

  Log Message:
  -----------
  tcg: Split out tcg_out_extu_i32_i64

We will need a backend interface for type extension with zero.
Use it in tcg_reg_alloc_op in the meantime.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: b8b94ac6753effcfda7880d3b9ac49b530e3d2ab
      
https://github.com/qemu/qemu/commit/b8b94ac6753effcfda7880d3b9ac49b530e3d2ab
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-23 (Sun, 23 Apr 2023)

  Changed paths:
    M tcg/aarch64/tcg-target.c.inc
    M tcg/arm/tcg-target.c.inc
    M tcg/i386/tcg-target.c.inc
    M tcg/loongarch64/tcg-target.c.inc
    M tcg/mips/tcg-target.c.inc
    M tcg/ppc/tcg-target.c.inc
    M tcg/riscv/tcg-target.c.inc
    M tcg/s390x/tcg-target.c.inc
    M tcg/sparc64/tcg-target.c.inc
    M tcg/tcg.c
    M tcg/tci/tcg-target.c.inc

  Log Message:
  -----------
  tcg: Split out tcg_out_extrl_i64_i32

We will need a backend interface for type truncation.  For those backends
that did not enable TCG_TARGET_HAS_extrl_i64_i32, use tcg_out_mov.
Use it in tcg_reg_alloc_op in the meantime.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: b3dfd5fc181433bd43e2163b1a94b11a548edfba
      
https://github.com/qemu/qemu/commit/b3dfd5fc181433bd43e2163b1a94b11a548edfba
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-23 (Sun, 23 Apr 2023)

  Changed paths:
    M tcg/aarch64/tcg-target.c.inc
    M tcg/arm/tcg-target.c.inc
    M tcg/i386/tcg-target.c.inc
    M tcg/loongarch64/tcg-target.c.inc
    M tcg/ppc/tcg-target.c.inc
    M tcg/riscv/tcg-target.c.inc
    M tcg/s390x/tcg-target.c.inc
    M tcg/sparc64/tcg-target.c.inc
    M tcg/tcg.c

  Log Message:
  -----------
  tcg: Introduce tcg_out_movext

This is common code in most qemu_{ld,st} slow paths, extending the
input value for the store helper data argument or extending the
return value from the load helper.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 767c250310ee0494d37bf7514d24973dd50e38ea
      
https://github.com/qemu/qemu/commit/767c250310ee0494d37bf7514d24973dd50e38ea
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-23 (Sun, 23 Apr 2023)

  Changed paths:
    M tcg/aarch64/tcg-target.c.inc
    M tcg/arm/tcg-target.c.inc
    M tcg/i386/tcg-target.c.inc
    M tcg/loongarch64/tcg-target.c.inc
    M tcg/mips/tcg-target.c.inc
    M tcg/ppc/tcg-target.c.inc
    M tcg/riscv/tcg-target.c.inc
    M tcg/s390x/tcg-target.c.inc
    M tcg/sparc64/tcg-target.c.inc
    M tcg/tcg.c
    M tcg/tci/tcg-target.c.inc

  Log Message:
  -----------
  tcg: Introduce tcg_out_xchg

We will want a backend interface for register swapping.
This is only properly defined for x86; all others get a
stub version that always indicates failure.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 4745b156b8412ef12af32bd474fee70c25940950
      
https://github.com/qemu/qemu/commit/4745b156b8412ef12af32bd474fee70c25940950
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-23 (Sun, 23 Apr 2023)

  Changed paths:
    M tcg/tcg-ldst.c.inc

  Log Message:
  -----------
  tcg: Clear TCGLabelQemuLdst on allocation

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 3ea9be33400f14305565a9a094cb6031c07183d5
      
https://github.com/qemu/qemu/commit/3ea9be33400f14305565a9a094cb6031c07183d5
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-23 (Sun, 23 Apr 2023)

  Changed paths:
    M tcg/riscv/tcg-target.c.inc

  Log Message:
  -----------
  tcg/riscv: Conditionalize tcg_out_exts_i32_i64

Since TCG_TYPE_I32 values are kept sign-extended in registers, via "w"
instructions, we don't need to extend if the register matches.
This is already relied upon by comparisons.

Reviewed-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


  Commit: 327ec8d6c2a2223b78d311153a471036e474c5c5
      
https://github.com/qemu/qemu/commit/327ec8d6c2a2223b78d311153a471036e474c5c5
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-04-23 (Sun, 23 Apr 2023)

  Changed paths:
    M include/tcg/tcg.h
    M target/i386/tcg/translate.c
    M target/s390x/tcg/translate.c
    M tcg/aarch64/tcg-target.c.inc
    M tcg/arm/tcg-target.c.inc
    M tcg/i386/tcg-target.c.inc
    M tcg/loongarch64/tcg-target.c.inc
    M tcg/mips/tcg-target.c.inc
    M tcg/optimize.c
    M tcg/ppc/tcg-target.c.inc
    M tcg/riscv/tcg-target.c.inc
    M tcg/s390x/tcg-target.c.inc
    M tcg/sparc64/tcg-target.c.inc
    M tcg/tcg-ldst.c.inc
    M tcg/tcg.c
    M tcg/tci/tcg-target.c.inc

  Log Message:
  -----------
  Merge tag 'pull-tcg-20230423' of https://gitlab.com/rth7680/qemu into staging

tcg cleanups:
  - Remove tcg_abort()
  - Split out extensions as known backend interfaces
  - Put the separate extensions together as tcg_out_movext
  - Introduce tcg_out_xchg as a backend interface
  - Clear TCGLabelQemuLdst on allocation
  - Avoid redundant extensions for riscv

# -----BEGIN PGP SIGNATURE-----
#
# iQFRBAABCgA7FiEEekgeeIaLTbaoWgXAZN846K9+IV8FAmRE69sdHHJpY2hhcmQu
# aGVuZGVyc29uQGxpbmFyby5vcmcACgkQZN846K9+IV/6jQf6Al9cgeJ6guVMpoRS
# +sXaTs5U2yaqRvz5gGn2ANFuFgD2QanbWHjS5guTnhbsvq3icyOCpIXIPg/Z04LB
# fTgAUCF5ut8U8C12HyGq/p4BFoTTWnCGPwY+PB9pMb5LiEcmaSUUz+fSA8xMX1b6
# EylI8YNd74A9j5PBNbGIXooj8llM71p9YztwQ9V7sPH3ZON4qbPRDgrJsb5TngMa
# daTpGoW+A9UyG7z0Ie6UuiOyYAzeQqm64WmMlc7UYeb9lL+yxvCq4+MXH2V/SKqg
# GLOF95DCdqj1EeZCOt0aN1ybZPcYFFkmpXrD1iLu0Mhy7Qo/vghX/eFoFnLleD+Y
# yM+LTg==
# =d2hZ
# -----END PGP SIGNATURE-----
# gpg: Signature made Sun 23 Apr 2023 09:27:07 AM BST
# gpg:                using RSA key 7A481E78868B4DB6A85A05C064DF38E8AF7E215F
# gpg:                issuer "richard.henderson@linaro.org"
# gpg: Good signature from "Richard Henderson <richard.henderson@linaro.org>" 
[ultimate]

* tag 'pull-tcg-20230423' of https://gitlab.com/rth7680/qemu:
  tcg/riscv: Conditionalize tcg_out_exts_i32_i64
  tcg: Clear TCGLabelQemuLdst on allocation
  tcg: Introduce tcg_out_xchg
  tcg: Introduce tcg_out_movext
  tcg: Split out tcg_out_extrl_i64_i32
  tcg: Split out tcg_out_extu_i32_i64
  tcg: Split out tcg_out_exts_i32_i64
  tcg: Split out tcg_out_ext32u
  tcg: Split out tcg_out_ext32s
  tcg: Split out tcg_out_ext16u
  tcg: Split out tcg_out_ext16s
  tcg: Split out tcg_out_ext8u
  tcg: Split out tcg_out_ext8s
  tcg: Replace tcg_abort with g_assert_not_reached
  tcg: Replace if + tcg_abort with tcg_debug_assert

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


Compare: https://github.com/qemu/qemu/compare/60ca584b8af0...327ec8d6c2a2



reply via email to

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