Branch: refs/heads/staging
  Home:   https://github.com/qemu/qemu
  Commit: 3ab823b980ae33cec3e64053230af7b2807dce60
      
https://github.com/qemu/qemu/commit/3ab823b980ae33cec3e64053230af7b2807dce60
  Author: Thomas Huth <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M tests/qemu-iotests/tests/inactive-node-nbd

  Log Message:
  -----------
  tests/qemu-iotests: Mark the 'inactive-node-nbd' as unsupported with -luks

When running "./check -luks inactive-node-nbd", the test currently fails
because QEMU terminates immediately. The reason can be seen with the
"-p" parameter of the "check" script:

 qemu-system-x86_64: -blockdev 
luks,file=disk-file,node-name=disk-fmt,active=off:
  Parameter 'key-secret' is required for cipher

Quoting Kevin: "The test case just isn't made for luks. iotests.py has
special code for luks in VM.add_drive(), but not in VM.add_blockdev()."

Thus let's mark it as unsupported on luks to avoid the failure.

Suggested-by: Kevin Wolf <[email protected]>
Signed-off-by: Thomas Huth <[email protected]>
Message-ID: <[email protected]>
Reviewed-by: Daniel P. Berrangé <[email protected]>
Reviewed-by: Kevin Wolf <[email protected]>
Signed-off-by: Kevin Wolf <[email protected]>


  Commit: 6eda39a87f4fda78befa4085e3644e4440afc1dd
      
https://github.com/qemu/qemu/commit/6eda39a87f4fda78befa4085e3644e4440afc1dd
  Author: Daniel P. Berrangé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M block/crypto.c

  Log Message:
  -----------
  block: remove 'detached-header' option from opts after use

The code for creating LUKS devices references a 'detached-header'
option in the QemuOpts  data, but does not consume (remove) the
option.

Thus when the code later tries to convert the remaining unused
QemuOpts into a QCryptoBlockCreateOptions struct, an error is
reported by the QAPI code that 'detached-header' is not a valid
field.

This fixes a regression caused by

  commit e818c01ae6e7c54c7019baaf307be59d99ce80b9
  Author: Daniel P. Berrangé <[email protected]>
  Date:   Mon Feb 19 15:12:59 2024 +0000

    qapi: drop unused QCryptoBlockCreateOptionsLUKS.detached-header

which identified that the QAPI field was unused, but failed to
realize the QemuOpts -> QCryptoBlockCreateOptions conversion
was seeing the left-over 'detached-header' option which had not
been removed from QemuOpts.

This problem was identified by the 'luks-detached-header' I/O
test, but unfortunately I/O tests are not run regularly for the
LUKS format.

Fixes: e818c01ae6e7c54c7019baaf307be59d99ce80b9
Reported-by: Thomas Huth <[email protected]>
Signed-off-by: Daniel P. Berrangé <[email protected]>
Message-ID: <[email protected]>
Reviewed-by: Eric Blake <[email protected]>
Reviewed-by: Kevin Wolf <[email protected]>
Signed-off-by: Kevin Wolf <[email protected]>


  Commit: c86488abaf017ed3f5a636c3247cd640a93d3b08
      
https://github.com/qemu/qemu/commit/c86488abaf017ed3f5a636c3247cd640a93d3b08
  Author: Daniel P. Berrangé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M block/crypto.c

  Log Message:
  -----------
  block: fix luks 'amend' when run in coroutine

Launch QEMU with

  $ qemu-img create \
      --object secret,id=sec0,data=123456 \
      -f luks -o key-secret=sec0 demo.luks 1g

  $ qemu-system-x86_64 \
      --object secret,id=sec0,data=123456 \
      -blockdev  
driver=luks,key-secret=sec0,file.filename=demo.luks,file.driver=file,node-name=luks

Then in QMP shell attempt

  x-blockdev-amend job-id=fish node-name=luks 
options={'state':'active','new-secret':'sec0','driver':'luks'}

It will result in an assertion

  #0  __pthread_kill_implementation (threadid=<optimized out>, 
signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
  #1  0x00007fad18b73f63 in __pthread_kill_internal (threadid=<optimized out>, 
signo=6) at pthread_kill.c:89
  #2  0x00007fad18b19f3e in __GI_raise (sig=sig@entry=6) at 
../sysdeps/posix/raise.c:26
  #3  0x00007fad18b016d0 in __GI_abort () at abort.c:77
  #4  0x00007fad18b01639 in __assert_fail_base
      (fmt=<optimized out>, assertion=<optimized out>, file=<optimized out>, 
line=<optimized out>, function=<optimized out>) at assert.c:118
  #5  0x00007fad18b120af in __assert_fail (assertion=<optimized out>, 
file=<optimized out>, line=<optimized out>, function=<optimized out>)
      at assert.c:127
  #6  0x000055ff74fdbd46 in bdrv_graph_rdlock_main_loop () at 
../block/graph-lock.c:260
  #7  0x000055ff7548521b in graph_lockable_auto_lock_mainloop (x=<optimized 
out>)
      at /usr/src/debug/qemu-9.2.4-1.fc42.x86_64/include/block/graph-lock.h:266
  #8  block_crypto_read_func (block=<optimized out>, offset=4096, 
buf=0x55ffb6d66ef0 "", buflen=256000, opaque=0x55ffb5edcc30, 
errp=0x55ffb6f00700)
      at ../block/crypto.c:71
  #9  0x000055ff75439f8b in qcrypto_block_luks_load_key
      (block=block@entry=0x55ffb5edbe90, slot_idx=slot_idx@entry=0, 
password=password@entry=0x55ffb67dc260 "123456", 
masterkey=masterkey@entry=0x55ffb5fb0c40 "", 
readfunc=readfunc@entry=0x55ff754851e0 <block_crypto_read_func>, 
opaque=opaque@entry=0x55ffb5edcc30, errp=0x55ffb6f00700)
      at ../crypto/block-luks.c:927
  #10 0x000055ff7543b90f in qcrypto_block_luks_find_key
      (block=<optimized out>, password=<optimized out>, masterkey=<optimized 
out>, readfunc=<optimized out>, opaque=<optimized out>, errp=<optimized out>) 
at ../crypto/block-luks.c:1045
  #11 qcrypto_block_luks_amend_add_keyslot
      (block=0x55ffb5edbe90, readfunc=0x55ff754851e0 <block_crypto_read_func>, 
writefunc=0x55ff75485100 <block_crypto_write_func>, opaque=0x55ffb5edcc3, 
opts_luks=0x7fad1715aef8, force=<optimized out>, errp=0x55ffb6f00700) at 
../crypto/block-luks.c:1673
  #12 qcrypto_block_luks_amend_options
      (block=0x55ffb5edbe90, readfunc=0x55ff754851e0 <block_crypto_read_func>, 
writefunc=0x55ff75485100 <block_crypto_write_func>, opaque=0x55ffb5edcc30, 
options=0x7fad1715aef0, force=<optimized out>, errp=0x55ffb6f00700) at 
../crypto/block-luks.c:1865
  #13 0x000055ff75485b95 in block_crypto_amend_options_generic_luks
      (bs=<optimized out>, amend_options=<optimized out>, force=<optimized 
out>, errp=<optimized out>) at ../block/crypto.c:949
  #14 0x000055ff75485c28 in block_crypto_co_amend_luks (bs=<optimized out>, 
opts=<optimized out>, force=<optimized out>, errp=<optimized out>)
      at ../block/crypto.c:1008
  #15 0x000055ff754778e5 in blockdev_amend_run (job=0x55ffb6f00640, 
errp=0x55ffb6f00700) at ../block/amend.c:52
  #16 0x000055ff75468b90 in job_co_entry (opaque=0x55ffb6f00640) at 
../job.c:1106
  #17 0x000055ff755a0fc2 in coroutine_trampoline (i0=<optimized out>, 
i1=<optimized out>) at ../util/coroutine-ucontext.c:175

This changes the read/write callbacks to not assert that they
are run in mainloop context if already in a coroutine.

This is also reproduced by qemu-iotests cases 295 and 296.

Fixes: 1f051dcbdf2e4b6f518db731c84e304b2b9d15ce
Signed-off-by: Daniel P. Berrangé <[email protected]>
Message-ID: <[email protected]>
Reviewed-by: Kevin Wolf <[email protected]>
Signed-off-by: Kevin Wolf <[email protected]>


  Commit: dec83ac02bee2f57f5b646dc1bedc5c200f3d679
      
https://github.com/qemu/qemu/commit/dec83ac02bee2f57f5b646dc1bedc5c200f3d679
  Author: Bin Guo <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M block/monitor/block-hmp-cmds.c
    M tests/qemu-iotests/267.out

  Log Message:
  -----------
  block/monitor: Use hmp_handle_error to report error

According to writing-monitor-commands.rst, best practice is to
use the 'hmp_handle_error' function, which ensures that the
message gets an 'Error: ' prefix.

Signed-off-by: Bin Guo <[email protected]>
Message-ID: <[email protected]>
Reviewed-by: Kevin Wolf <[email protected]>
[kwolf: Fixed up iotests reference output]
Signed-off-by: Kevin Wolf <[email protected]>


  Commit: ad97769e9dcf4dbdaae6d859176e5f37fd6a7c66
      
https://github.com/qemu/qemu/commit/ad97769e9dcf4dbdaae6d859176e5f37fd6a7c66
  Author: Richard W.M. Jones <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M block/curl.c

  Log Message:
  -----------
  block/curl.c: Fix CURLOPT_VERBOSE parameter type

In commit ed26056d90 ("block/curl.c: Use explicit long constants in
curl_easy_setopt calls") we missed a further call that takes a long
parameter.

Reported-by: Kevin Wolf <[email protected]>
Signed-off-by: Richard W.M. Jones <[email protected]>
Message-ID: <[email protected]>
Reviewed-by: Kevin Wolf <[email protected]>
Signed-off-by: Kevin Wolf <[email protected]>


  Commit: 5e5aebd848a0daa69fe2b478e376ab2ddf9d9a32
      
https://github.com/qemu/qemu/commit/5e5aebd848a0daa69fe2b478e376ab2ddf9d9a32
  Author: Eric Blake <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M tests/qemu-iotests/094.out
    M tests/qemu-iotests/119.out

  Log Message:
  -----------
  iotests: Adjust nbd expected outputs to match current behavior

'git bisect' confirms that the NBD iotests 94 and 119 have been broken
since commit effd60c8 in v9.0.0; but as Dan Berrange's efforts to
improve CI have proven, we haven't been reliably running them to
notice.  The change was good (moving coroutine commands to run in the
right context), but it meant that "execute":"quit" now waits to
complete until the coroutines tearing down NBD have first reported the
SHUTDOWN event, in the opposite order of what happened pre-patch.

Signed-off-by: Eric Blake <[email protected]>
Fixes: effd60c8 ("monitor: only run coroutine commands in qemu_aio_context", 
v9.0.0)
Reported-by: Daniel P. Berrangé <[email protected]>
Message-ID: <[email protected]>
Reviewed-by: Kevin Wolf <[email protected]>
Signed-off-by: Kevin Wolf <[email protected]>


  Commit: 3ab02c857047c16e622a7ad2adb51ef21e24989e
      
https://github.com/qemu/qemu/commit/3ab02c857047c16e622a7ad2adb51ef21e24989e
  Author: Eric Blake <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M tests/qemu-iotests/tests/fuse-allow-other.out

  Log Message:
  -----------
  iotests: Adjust fuse-allow-other expected output

The iotest fuse-allow-other has been broken since commit effd60c8 in
v9.0.0; but as Dan Berrange's efforts to improve CI have proven, we
haven't been reliably running it to notice.  The change in that commit
was good (moving coroutine commands to run in the right context), but
it meant that "execute":"quit" now waits to complete until the
coroutines tearing down fuse have first reported the SHUTDOWN event,
in the opposite order of what happened pre-patch.

Signed-off-by: Eric Blake <[email protected]>
Fixes: effd60c8 ("monitor: only run coroutine commands in qemu_aio_context",
Reported-by: Daniel P. Berrangé <[email protected]>
Message-ID: <[email protected]>
Reviewed-by: Daniel P. Berrangé <[email protected]>
Reviewed-by: Kevin Wolf <[email protected]>
Signed-off-by: Kevin Wolf <[email protected]>


  Commit: 9f0c763e16c65d3aab5f3f17768df58321874685
      
https://github.com/qemu/qemu/commit/9f0c763e16c65d3aab5f3f17768df58321874685
  Author: Chandan Somani <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M block/accounting.c
    M blockdev.c
    M hw/block/block.c
    M include/block/accounting.h
    M include/hw/block/block.h
    M tests/qemu-iotests/172.out

  Log Message:
  -----------
  block: enable stats-intervals for storage devices

This patch allows stats-intervals to be used for storage
devices with the -device option. It accepts a list of interval
lengths in JSON format.

It configures and collects the stats in the BlockBackend layer
through the storage device that consumes the BlockBackend.

Signed-off-by: Chandan Somani <[email protected]>
Message-ID: <[email protected]>
Reviewed-by: Kevin Wolf <[email protected]>
Signed-off-by: Kevin Wolf <[email protected]>


  Commit: aa981ab3a371c1100f8efaddbc319126ecdc3dd0
      
https://github.com/qemu/qemu/commit/aa981ab3a371c1100f8efaddbc319126ecdc3dd0
  Author: Peter Maydell <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M MAINTAINERS

  Log Message:
  -----------
  MAINTAINERS: Mark VHDX block driver as "Odd Fixes"

In 2018 (in commit 5f5246b6b) Jeff Cody stepped down as block
maintainer, but left himself as maintainer for VHDX and with a status
of "Supported", with the rationale:

    For VHDX, added my personal email address as a maintainer, as I can
    answer questions or send the occassional bug fix.  Leaving it as
    'Supported', instead of 'Odd Fixes', because I think the rest of the
    block layer maintainers and developers will upkeep it as well, if
    needed.

However, today the way we treat subsystems which are only maintained
under the general umbrella of a wider system is usually to mark them
as "Odd Fixes".  The vhdx.c code has had no commits which aren't a
part of more general refactoring changes since 2020, and Jeff himself
hasn't been active on qemu-devel since 2018, so this seems also to be
how we've handled the code in practice.

Signed-off-by: Peter Maydell <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Kevin Wolf <[email protected]>


  Commit: 41203754207ce78b2024043c457f66a833b723b9
      
https://github.com/qemu/qemu/commit/41203754207ce78b2024043c457f66a833b723b9
  Author: Fiona Ebner <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

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

  Log Message:
  -----------
  include/block/block_int-common: document when resize callback is used

The 'resize' callback is only called by bdrv_parent_cb_resize() which
is only called by bdrv_co_write_req_finish() to notify the parent(s)
that the child was resized.

Signed-off-by: Fiona Ebner <[email protected]>
Reviewed-by: Hanna Czenczek <[email protected]>
Message-ID: <[email protected]>
Reviewed-by: Kevin Wolf <[email protected]>
Signed-off-by: Kevin Wolf <[email protected]>


  Commit: 08736e7584c41b75e734f412e1fea5ae949afac1
      
https://github.com/qemu/qemu/commit/08736e7584c41b75e734f412e1fea5ae949afac1
  Author: Fiona Ebner <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

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

  Log Message:
  -----------
  block: make bdrv_co_parent_cb_resize() a proper IO API function

In preparation for calling it via the bdrv_child_cb_resize() callback
that will be added by the next commit. Rename it to include the "_co_"
part while at it.

Signed-off-by: Fiona Ebner <[email protected]>
Reviewed-by: Hanna Czenczek <[email protected]>
Message-ID: <[email protected]>
Reviewed-by: Kevin Wolf <[email protected]>
Signed-off-by: Kevin Wolf <[email protected]>


  Commit: cbadaf57a775e84ff10455108afd6e191c5c0630
      
https://github.com/qemu/qemu/commit/cbadaf57a775e84ff10455108afd6e191c5c0630
  Author: Fiona Ebner <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

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

  Log Message:
  -----------
  block: implement 'resize' callback for child_of_bds class

If a filtered child is resized, the size of the parent node is now
also refreshed (recursively for chains of filtered children).

For filter block drivers that do not implement .bdrv_co_getlength(),
this commit does not change the current behavior, because
bdrv_co_refresh_total_sectors() will used the current size via the
passed-in hint. This is the case for block drivers for (some) block
jobs, as well as copy-before-write.

Block jobs already set up a blocker preventing a QMP block_resize
operation while the job is running. That does not directly cover an
associated 'file' node of a 'raw' node, but resizing such a 'file'
node is already prevented too (backup, commit, mirror and stream were
checked).

The other case is copy-before-write. This commit does not change the
fact that the copy-before-write node still has the same size after its
filtered child is resized.

Block drivers that do implement .bdrv_co_getlength() and where
.is_filter is true, already returned the length of the file child, so
there is no change before and after this commit, with two exceptions:
1. preallocate can return an early data_end and otherwise queries the
   file child, but that special casing is not changed.
2. blkverify returns the length of the test file. This commit does not
   affect that behavior.

Signed-off-by: Fiona Ebner <[email protected]>
Message-ID: <[email protected]>
Reviewed-by: Kevin Wolf <[email protected]>
Signed-off-by: Kevin Wolf <[email protected]>


  Commit: 4eb4365b9fbd564aa8ef40b1cbd4f0e2076b4d6d
      
https://github.com/qemu/qemu/commit/4eb4365b9fbd564aa8ef40b1cbd4f0e2076b4d6d
  Author: Fiona Ebner <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    A tests/qemu-iotests/tests/resize-below-filter
    A tests/qemu-iotests/tests/resize-below-filter.out

  Log Message:
  -----------
  iotests: add test for resizing a node below filters

Signed-off-by: Fiona Ebner <[email protected]>
Reviewed-by: Hanna Czenczek <[email protected]>
Message-ID: <[email protected]>
Reviewed-by: Kevin Wolf <[email protected]>
Signed-off-by: Kevin Wolf <[email protected]>


  Commit: 59e231f3f03f6db5506312e3e7659480a752eba3
      
https://github.com/qemu/qemu/commit/59e231f3f03f6db5506312e3e7659480a752eba3
  Author: Fiona Ebner <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    A tests/qemu-iotests/tests/resize-below-raw
    A tests/qemu-iotests/tests/resize-below-raw.out

  Log Message:
  -----------
  iotests: add test for resizing a 'file' node below a 'raw' node

Signed-off-by: Fiona Ebner <[email protected]>
Message-ID: <[email protected]>
Reviewed-by: Kevin Wolf <[email protected]>
Signed-off-by: Kevin Wolf <[email protected]>


  Commit: 46dd683d56b1328cb2bc923914bfd7ac590064f7
      
https://github.com/qemu/qemu/commit/46dd683d56b1328cb2bc923914bfd7ac590064f7
  Author: Kevin Wolf <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

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

  Log Message:
  -----------
  block: Improve comments in BlockLimits

Patches to expose the limits in QAPI have made clear that the existing
documentation of BlockLimits could be improved: The meaning of
min_mem_alignment and opt_mem_alignment could be clearer, and talking
about better alignment values isn't helpful when we only detect these
values and never choose them.

Make the changes in the BlockLimits documentation now, so that the
patches exposing the fields in QAPI can use descriptions consistent with
it.

Signed-off-by: Kevin Wolf <[email protected]>
Message-ID: <[email protected]>
Reviewed-by: Eric Blake <[email protected]>
Signed-off-by: Kevin Wolf <[email protected]>


  Commit: d2634e18286a5772f04cc724e64f8b16a2124587
      
https://github.com/qemu/qemu/commit/d2634e18286a5772f04cc724e64f8b16a2124587
  Author: Kevin Wolf <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M block/qapi.c
    M qapi/block-core.json
    M tests/qemu-iotests/184
    M tests/qemu-iotests/184.out
    M tests/qemu-iotests/common.filter

  Log Message:
  -----------
  block: Expose block limits for images in QMP

This information can be useful both for debugging and for management
tools trying to configure guest devices with the optimal limits
(possibly across multiple hosts). There is no reason not to make it
available, so just add it to BlockNodeInfo.

Signed-off-by: Kevin Wolf <[email protected]>
Reviewed-by: Eric Blake <[email protected]>
Reviewed-by: Hanna Czenczek <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Kevin Wolf <[email protected]>


  Commit: 5b4b3bfdfc28d2398f34194d260d6eef9a9048b4
      
https://github.com/qemu/qemu/commit/5b4b3bfdfc28d2398f34194d260d6eef9a9048b4
  Author: Kevin Wolf <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M block/qapi.c
    M docs/tools/qemu-img.rst
    M include/block/qapi.h
    M qemu-img-cmds.hx
    M qemu-img.c

  Log Message:
  -----------
  qemu-img info: Optionally show block limits

Add a new --limits option to 'qemu-img info' that displays the block
limits for the image and all of its children, making the information
more accessible for human users than in QMP. This option is not enabled
by default because it can be a lot of output that isn't usually relevant
if you're not specifically trying to diagnose some I/O problem.

This makes the same information automatically also available in HMP
'info block -v'.

Signed-off-by: Kevin Wolf <[email protected]>
Reviewed-by: Eric Blake <[email protected]>
Reviewed-by: Hanna Czenczek <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Kevin Wolf <[email protected]>


  Commit: 911992fd6ec7a84c7cc82831b4bcd8a2ca5ccc76
      
https://github.com/qemu/qemu/commit/911992fd6ec7a84c7cc82831b4bcd8a2ca5ccc76
  Author: Kevin Wolf <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M docs/tools/qemu-img.rst
    M qemu-img-cmds.hx
    M qemu-img.c

  Log Message:
  -----------
  qemu-img info: Add cache mode option

When querying block limits, different cache modes (in particular
O_DIRECT or not) can result in different limits. Add an option to
'qemu-img info' that allows the user to specify a cache mode, so that
they can get the block limits for the cache mode they intend to use with
their VM.

Signed-off-by: Kevin Wolf <[email protected]>
Message-ID: <[email protected]>
Reviewed-by: Eric Blake <[email protected]>
Signed-off-by: Kevin Wolf <[email protected]>


  Commit: a04c5ba543c1bc83a25a557e3b62ee811869b373
      
https://github.com/qemu/qemu/commit/a04c5ba543c1bc83a25a557e3b62ee811869b373
  Author: Edgar E. Iglesias <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M target/microblaze/op_helper.c

  Log Message:
  -----------
  target/microblaze: Remove unused arg from check_divz()

Remove unused arg from check_divz(). No functional change.

Signed-off-by: Edgar E. Iglesias <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Reviewed-by: Philippe Mathieu-Daudé <[email protected]>


  Commit: 0e46b4d1f13b26c3c0e30eafa2be8eed76548bd3
      
https://github.com/qemu/qemu/commit/0e46b4d1f13b26c3c0e30eafa2be8eed76548bd3
  Author: Edgar E. Iglesias <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M target/microblaze/op_helper.c
    M target/microblaze/translate.c

  Log Message:
  -----------
  target/microblaze: div: Break out raise_divzero()

Break out raise_divzero() and take the opportunity to rename
and reorder function args to better match with spec and
pseudo code.

No functional change.

Signed-off-by: Edgar E. Iglesias <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Reviewed-by: Philippe Mathieu-Daudé <[email protected]>


  Commit: cfc1d54251d3b4c4cf21c4fa278c8aea2fe25a99
      
https://github.com/qemu/qemu/commit/cfc1d54251d3b4c4cf21c4fa278c8aea2fe25a99
  Author: Edgar E. Iglesias <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M target/microblaze/cpu.h
    M target/microblaze/op_helper.c

  Log Message:
  -----------
  target/microblaze: Handle signed division overflows

Handle signed division overflows as specified in UG984:
https://docs.amd.com/r/en-US/ug984-vivado-microblaze-ref/idiv

Signed-off-by: Edgar E. Iglesias <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>


  Commit: 2d89f33cd02ef8345d98262f51bc91bfcaaff86d
      
https://github.com/qemu/qemu/commit/2d89f33cd02ef8345d98262f51bc91bfcaaff86d
  Author: Alex Bennée <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M docs/devel/testing/ci-jobs.rst.inc
    M scripts/ci/setup/ubuntu/build-environment.yml

  Log Message:
  -----------
  ci: clean-up remaining bits of armhf builds.

We no longer need to support 32 bit builds and we missed this while
cleaning up.

Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: 1a0b5af768b0e428eaf33f7b6a2d0eb1e6dffe0a
      
https://github.com/qemu/qemu/commit/1a0b5af768b0e428eaf33f7b6a2d0eb1e6dffe0a
  Author: Alex Bennée <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M scripts/ci/setup/ubuntu/ubuntu-2404-aarch64.yaml
    M scripts/ci/setup/ubuntu/ubuntu-2404-s390x.yaml

  Log Message:
  -----------
  scripts/ci/setup: regenerate yaml

We inadvertently updated the base libvirt-ci project which has
resulted in changes. Make sure the output matches what we generate.

Fixes: 0d4fb8f746d (configure: set the bindgen cross target)
Reviewed-by: Manos Pitsidianakis <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: ced14739eb60e7f856374752adcc3fd056ce795c
      
https://github.com/qemu/qemu/commit/ced14739eb60e7f856374752adcc3fd056ce795c
  Author: Alex Bennée <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    A scripts/ci/setup/build-environment.yml
    R scripts/ci/setup/ubuntu/build-environment.yml

  Log Message:
  -----------
  scripts/ci: move build-environment.yaml up a level

We can share the setup of the build environment with multiple
operating systems as we just need to check the YAML for each env is
present in the directory structure.

Reviewed-by: Manos Pitsidianakis <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: 7425f47727e302d41fa803fbf1df86961bb1d177
      
https://github.com/qemu/qemu/commit/7425f47727e302d41fa803fbf1df86961bb1d177
  Author: Alex Bennée <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M scripts/ci/setup/build-environment.yml

  Log Message:
  -----------
  scripts/ci: allow both Ubuntu or Debian to run upgrade

There is no practical difference between the systems when it comes to
updating the installed system.

Reviewed-by: Manos Pitsidianakis <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: e1bbb4c62e0d96802ab6773f4661de9e1582e8bd
      
https://github.com/qemu/qemu/commit/e1bbb4c62e0d96802ab6773f4661de9e1582e8bd
  Author: Alex Bennée <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M scripts/ci/setup/build-environment.yml
    A scripts/ci/setup/debian/debian-13-ppc64le.yaml
    M tests/lcitool/refresh

  Log Message:
  -----------
  tests/lcitool: generate a yaml file for the ppc64le runner

Unlike the Aarch64 runners this comes with pure Debian out of the box.
We need a minor tweak to build-environment to deal with the
differences in naming convention.

Reviewed-by: Manos Pitsidianakis <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: 900a5ecf0a1e5db4dc93190a3f69d49755670450
      
https://github.com/qemu/qemu/commit/900a5ecf0a1e5db4dc93190a3f69d49755670450
  Author: Alex Bennée <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M scripts/ci/setup/gitlab-runner.yml

  Log Message:
  -----------
  scripts/ci: modify gitlab runner deb setup

Both Debian and Ubuntu are setup the same way.

Reviewed-by: Manos Pitsidianakis <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: a8b477239ec084f4749354059d3c0d4925e9c9a5
      
https://github.com/qemu/qemu/commit/a8b477239ec084f4749354059d3c0d4925e9c9a5
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M include/qemu/plugin.h
    M include/qemu/qemu-plugin.h

  Log Message:
  -----------
  plugins: add types for callbacks related to certain discontinuities

The plugin API allows registration of callbacks for a variety of VCPU
related events, such as VCPU reset, idle and resume. However, traps of
any kind, i.e. interrupts or exceptions, were previously not covered.
These kinds of events are arguably quite significant and usually go hand
in hand with a PC discontinuity. On most platforms, the discontinuity
also includes a transition from some "mode" to another. Thus, plugins
for the analysis of (virtualized) embedded systems may benefit from or
even require the possiblity to perform work on the occurance of an
interrupt or exception.

This change introduces the concept of such a discontinuity event in the
form of an enumeration. Currently only traps are covered. Specifically
we (loosely) define interrupts, exceptions and host calls across all
platforms. In addition, this change introduces a type to use for
callback functions related to such events. Since possible modes and the
enumeration of interupts and exceptions vary greatly between different
architectures, the callback type only receives the VCPU id, the type of
event as well as the old and new PC.

Reviewed-by: Pierrick Bouvier <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Reviewed-by: Alex Bennée <[email protected]>
Signed-off-by: Julian Ganz <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: aac73d85d2d6f556dbcee6041a2898cb0ef9b0e6
      
https://github.com/qemu/qemu/commit/aac73d85d2d6f556dbcee6041a2898cb0ef9b0e6
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M include/qemu/plugin-event.h
    M include/qemu/qemu-plugin.h
    M plugins/core.c

  Log Message:
  -----------
  plugins: add API for registering discontinuity callbacks

The plugin API allows registration of callbacks for a variety of VCPU
related events, such as VCPU reset, idle and resume. In addition to
those events, we recently defined discontinuity events, which include
traps.

This change introduces a function to register callbacks for these
events. We define one distinct plugin event type for each type of
discontinuity, granting fine control to plugins in term of which events
they receive.

Reviewed-by: Pierrick Bouvier <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Reviewed-by: Alex Bennée <[email protected]>
Signed-off-by: Julian Ganz <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: a1688bc86ce93ac0e006673766cd123eed43c02c
      
https://github.com/qemu/qemu/commit/a1688bc86ce93ac0e006673766cd123eed43c02c
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M include/qemu/plugin.h
    M plugins/core.c

  Log Message:
  -----------
  plugins: add hooks for new discontinuity related callbacks

The plugin API allows registration of callbacks for a variety of VCPU
related events, such as VCPU reset, idle and resume. In addition, we
recently introduced API for registering callbacks for discontinuity
events, specifically for interrupts, exceptions and host calls.

This change introduces the corresponding hooks called from target
specific code inside qemu.

Signed-off-by: Julian Ganz <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: 9fe4dd99438a6ea70f4c3b7309ca9219ebdfc1f5
      
https://github.com/qemu/qemu/commit/9fe4dd99438a6ea70f4c3b7309ca9219ebdfc1f5
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M contrib/plugins/meson.build
    A contrib/plugins/traps.c
    M docs/about/emulation.rst

  Log Message:
  -----------
  contrib/plugins: add plugin showcasing new dicontinuity related API

We recently introduced new plugin API for registration of discontinuity
related callbacks. This change introduces a minimal plugin showcasing
the new API. It simply counts the occurances of interrupts, exceptions
and host calls per CPU and reports the counts when exitting.

Reviewed-by: Pierrick Bouvier <[email protected]>
Reviewed-by: Alex Bennée <[email protected]>
Signed-off-by: Julian Ganz <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: 3d57ddace13912df5f1d52b5660c84cd91dd4507
      
https://github.com/qemu/qemu/commit/3d57ddace13912df5f1d52b5660c84cd91dd4507
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M target/alpha/helper.c

  Log Message:
  -----------
  target/alpha: call plugin trap callbacks

We recently introduced API for registering callbacks for trap related
events as well as the corresponding hook functions. Due to differences
between architectures, the latter need to be called from target specific
code.

This change places hooks for Alpha targets.

Reviewed-by: Richard Henderson <[email protected]>
Signed-off-by: Julian Ganz <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: 105e3c75697afa4cbd8f885ef0a2347b766f5e10
      
https://github.com/qemu/qemu/commit/105e3c75697afa4cbd8f885ef0a2347b766f5e10
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M target/arm/helper.c
    M target/arm/internals.h
    M target/arm/tcg/m_helper.c

  Log Message:
  -----------
  target/arm: call plugin trap callbacks

We recently introduced API for registering callbacks for trap related
events as well as the corresponding hook functions. Due to differences
between architectures, the latter need to be called from target specific
code.

This change places hooks for ARM (and Aarch64) targets. We decided to
treat the (V)IRQ, (VI/VF)NMI, (V)FIQ and VSERR exceptions as interrupts
since they are, presumably, async in nature.

Reviewed-by: Richard Henderson <[email protected]>
Signed-off-by: Julian Ganz <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: 14e1f3186ccbbe2f3e2fd3038213bd6f65cd0de6
      
https://github.com/qemu/qemu/commit/14e1f3186ccbbe2f3e2fd3038213bd6f65cd0de6
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M target/avr/helper.c

  Log Message:
  -----------
  target/avr: call plugin trap callbacks

We recently introduced API for registering callbacks for trap related
events as well as the corresponding hook functions. Due to differences
between architectures, the latter need to be called from target specific
code.

This change places the hook for AVR targets. That architecture appears
to only know interrupts.

Reviewed-by: Richard Henderson <[email protected]>
Signed-off-by: Julian Ganz <[email protected]>
Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: ed7b86888efcedebf50cf9055e1edd2e7ea019cb
      
https://github.com/qemu/qemu/commit/ed7b86888efcedebf50cf9055e1edd2e7ea019cb
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M target/hppa/int_helper.c

  Log Message:
  -----------
  target/hppa: call plugin trap callbacks

We identified a number of exceptions as interrupts, and we assume every
other exception is a (syncroneous) exceptions. PA-RISC appears to not
have any form of host-call.

This change places the hook for PA-RISC targets.

Signed-off-by: Julian Ganz <[email protected]>
Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: b5c8cd61447b7dd8e454b0b6055b05d92f09a06e
      
https://github.com/qemu/qemu/commit/b5c8cd61447b7dd8e454b0b6055b05d92f09a06e
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

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

  Log Message:
  -----------
  target/i386: call plugin trap callbacks

We recently introduced API for registering callbacks for trap related
events as well as the corresponding hook functions. Due to differences
between architectures, the latter need to be called from target specific
code.

This change places the hook for x86 targets.

Signed-off-by: Julian Ganz <[email protected]>
Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: ee0a63d0dac825e9a5133b073ec3a843d8b7e206
      
https://github.com/qemu/qemu/commit/ee0a63d0dac825e9a5133b073ec3a843d8b7e206
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M target/loongarch/tcg/tcg_cpu.c

  Log Message:
  -----------
  target/loongarch: call plugin trap callbacks

We recently introduced API for registering callbacks for trap related
events as well as the corresponding hook functions. Due to differences
between architectures, the latter need to be called from target specific
code.

This change places hooks for loongarch targets. This architecture
has one special "exception" for interrupts and no host calls.

Reviewed-by: Richard Henderson <[email protected]>
Signed-off-by: Julian Ganz <[email protected]>
Reviewed-by: Song Gao <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: b2d8618c216f9da8a468d20e2eb161ba72e6ecef
      
https://github.com/qemu/qemu/commit/b2d8618c216f9da8a468d20e2eb161ba72e6ecef
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M target/m68k/op_helper.c

  Log Message:
  -----------
  target/m68k: call plugin trap callbacks

We recently introduced API for registering callbacks for trap related
events as well as the corresponding hook functions. Due to differences
between architectures, the latter need to be called from target specific
code.

This change places hooks for Motorola 68000 targets.

Signed-off-by: Julian Ganz <[email protected]>
Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: cd6ee56222610f3228caf10c4868bd8593532b0c
      
https://github.com/qemu/qemu/commit/cd6ee56222610f3228caf10c4868bd8593532b0c
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M target/microblaze/helper.c

  Log Message:
  -----------
  target/microblaze: call plugin trap callbacks

We recently introduced API for registering callbacks for trap related
events as well as the corresponding hook functions. Due to differences
between architectures, the latter need to be called from target specific
code.

This change places the hook for MicroBlaze targets. This architecture
has one special "exception" for interrupts and no host calls.

Signed-off-by: Julian Ganz <[email protected]>
Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: c3d7005a6cbd5f7fe0ba01b92954964c90b76d15
      
https://github.com/qemu/qemu/commit/c3d7005a6cbd5f7fe0ba01b92954964c90b76d15
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M target/mips/tcg/system/tlb_helper.c

  Log Message:
  -----------
  target/mips: call plugin trap callbacks

We recently introduced API for registering callbacks for trap related
events as well as the corresponding hook functions. Due to differences
between architectures, the latter need to be called from target specific
code.

This change places hooks for MIPS targets. We consider the exceptions
NMI and EXT_INTERRUPT to be asynchronous interrupts rather than
exceptions.

Reviewed-by: Richard Henderson <[email protected]>
Acked-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Julian Ganz <[email protected]>
Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: cbf0e6e3dc8ece2f3eb05c1840d95440eab4ae8c
      
https://github.com/qemu/qemu/commit/cbf0e6e3dc8ece2f3eb05c1840d95440eab4ae8c
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M target/openrisc/interrupt.c

  Log Message:
  -----------
  target/openrisc: call plugin trap callbacks

We recently introduced API for registering callbacks for trap related
events as well as the corresponding hook functions. Due to differences
between architectures, the latter need to be called from target specific
code.

This change places hooks for OpenRISC targets. We treat anything other
than resets, timer and device interrupts as exceptions.

Signed-off-by: Julian Ganz <[email protected]>
Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: 11af01e8b760ba27f0246e1d990162ed6c6ea113
      
https://github.com/qemu/qemu/commit/11af01e8b760ba27f0246e1d990162ed6c6ea113
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M target/ppc/excp_helper.c

  Log Message:
  -----------
  target/ppc: call plugin trap callbacks

We recently introduced API for registering callbacks for trap related
events as well as the corresponding hook functions. Due to differences
between architectures, the latter need to be called from target specific
code.

This change places hooks for Power PC targets.

Signed-off-by: Julian Ganz <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: 081aaba705feea37986e02873e17348627e79770
      
https://github.com/qemu/qemu/commit/081aaba705feea37986e02873e17348627e79770
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M target/riscv/cpu_helper.c

  Log Message:
  -----------
  target/riscv: call plugin trap callbacks

We recently introduced API for registering callbacks for trap related
events as well as the corresponding hook functions. Due to differences
between architectures, the latter need to be called from target specific
code.

This change places hooks for RISC-V targets.

Reviewed-by: Daniel Henrique Barboza <[email protected]>
Reviewed-by: Alistair Francis <[email protected]>
Signed-off-by: Julian Ganz <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: dde21df2393a64df083cd8a524994a1ed9fd45dd
      
https://github.com/qemu/qemu/commit/dde21df2393a64df083cd8a524994a1ed9fd45dd
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M target/rx/helper.c

  Log Message:
  -----------
  target/rx: call plugin trap callbacks

We recently introduced API for registering callbacks for trap related
events as well as the corresponding hook functions. Due to differences
between architectures, the latter need to be called from target specific
code.

This change places hooks for Renesas Xtreme targets.

Reviewed-by: Richard Henderson <[email protected]>
Reviewed-by: Yoshinori Sato <[email protected]>
Signed-off-by: Julian Ganz <[email protected]>
Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: 42261299144ec57053431033afaa1ef8b376b79e
      
https://github.com/qemu/qemu/commit/42261299144ec57053431033afaa1ef8b376b79e
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M target/s390x/tcg/excp_helper.c

  Log Message:
  -----------
  target/s390x: call plugin trap callbacks

We recently introduced API for registering callbacks for trap related
events as well as the corresponding hook functions. Due to differences
between architectures, the latter need to be called from target specific
code.

This change places hooks for IBM System/390 targets. We treat "program
interrupts" and service calls as exceptions. We treat external and io
"exceptions" as well as resets as interrupts.

Acked-by: David Hildenbrand <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Signed-off-by: Julian Ganz <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: 01f0738c57063d7efdb682d543e85690db295053
      
https://github.com/qemu/qemu/commit/01f0738c57063d7efdb682d543e85690db295053
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M target/sh4/helper.c

  Log Message:
  -----------
  target/sh4: call plugin trap callbacks

We recently introduced API for registering callbacks for trap related
events as well as the corresponding hook functions. Due to differences
between architectures, the latter need to be called from target specific
code.

This change places hooks for SuperH targets.

Reviewed-by: Richard Henderson <[email protected]>
Reviewed-by: Yoshinori Sato <[email protected]>
Signed-off-by: Julian Ganz <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: 8a315a788a4bb4c09390dbadf934289b2cfcecb5
      
https://github.com/qemu/qemu/commit/8a315a788a4bb4c09390dbadf934289b2cfcecb5
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M target/sparc/int32_helper.c
    M target/sparc/int64_helper.c

  Log Message:
  -----------
  target/sparc: call plugin trap callbacks

We recently introduced API for registering callbacks for trap related
events as well as the corresponding hook functions. Due to differences
between architectures, the latter need to be called from target specific
code.

This change places hooks for SPARC (32bit and 64bit) targets. We treat
any interrupt other than EXTINT and IVEC as exceptions as they appear to
be synchroneous events.

Reviewed-by: Richard Henderson <[email protected]>
Signed-off-by: Julian Ganz <[email protected]>
Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: c4057ef38f8c7037b36d5931ae2144b7d523cd0c
      
https://github.com/qemu/qemu/commit/c4057ef38f8c7037b36d5931ae2144b7d523cd0c
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M target/tricore/op_helper.c

  Log Message:
  -----------
  target/tricore: call plugin trap callbacks

We recently introduced API for registering callbacks for trap related
events as well as the corresponding hook functions. Due to differences
between architectures, the latter need to be called from target specific
code.

This change places an exception hook for TriCore targets. Interrupts are
not implemented for this target and it has no host calls.

Reviewed-by: Bastian Koppelmann <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Signed-off-by: Julian Ganz <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: 6a0f4c11dd0e1a54f25842e94b465d35071c7c84
      
https://github.com/qemu/qemu/commit/6a0f4c11dd0e1a54f25842e94b465d35071c7c84
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M target/xtensa/exc_helper.c
    M target/xtensa/xtensa-semi.c

  Log Message:
  -----------
  target/xtensa: call plugin trap callbacks

We recently introduced API for registering callbacks for trap related
events as well as the corresponding hook functions. Due to differences
between architectures, the latter need to be called from target specific
code.

This change places hooks for xtensa targets.

Reviewed-by: Max Filippov <[email protected]>
Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Julian Ganz <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: 9125196aaa8c0be2f1e7d62ad30fd67cf46bbe9a
      
https://github.com/qemu/qemu/commit/9125196aaa8c0be2f1e7d62ad30fd67cf46bbe9a
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    A tests/tcg/plugins/discons.c
    M tests/tcg/plugins/meson.build

  Log Message:
  -----------
  tests: add plugin asserting correctness of discon event's to_pc

We recently introduced plugin API for the registration of callbacks for
discontinuity events, specifically for interrupts, exceptions and host
call events. The callback receives various bits of information,
including the VCPU index and PCs.

This change introduces a test plugin asserting the correctness of that
behaviour in cases where this is possible with reasonable effort.

Reviewed-by: Pierrick Bouvier <[email protected]>
Signed-off-by: Julian Ganz <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: 3c0b1fc078a2be255a72bec1ba4e088230307398
      
https://github.com/qemu/qemu/commit/3c0b1fc078a2be255a72bec1ba4e088230307398
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M tests/tcg/riscv64/Makefile.softmmu-target
    A tests/tcg/riscv64/doubletrap.S

  Log Message:
  -----------
  tests: add test for double-traps on rv64

We do have a number of test-case for various architectures exercising
their interrupt/exception logic. However, for the recently introduced
trap API we also want to exercise the logic for double traps on at least
one architecture.

Reviewed-by: Daniel Henrique Barboza <[email protected]>
Reviewed-by: Alistair Francis <[email protected]>
Signed-off-by: Julian Ganz <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: 5241645c47a9987f4fcc65bab303a444966b7942
      
https://github.com/qemu/qemu/commit/5241645c47a9987f4fcc65bab303a444966b7942
  Author: Julian Ganz <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M tests/tcg/riscv64/Makefile.softmmu-target
    A tests/tcg/riscv64/interruptedmemory.S

  Log Message:
  -----------
  tests: add test with interrupted memory accesses on rv64

This test aims at catching API misbehaviour w.r.t. the interaction
between interrupts and memory accesses, such as the bug fixed in

    27f347e6a1d269c533633c812321cabb249eada8
    (accel/tcg: also suppress asynchronous IRQs for cpu_io_recompile)

Because the condition for triggering misbehaviour may not be
deterministic and the cross-section between memory accesses and
interrupt handlers may be small, we have to place our trust in large
numbers. Instead of guessing/trying an arbitrary, fixed loop-bound, we
decided to loop for a fixed amount of real-time. This avoids the test
running into a time-out on slower machines while enabling a high number
of possible interactions on faster machines.

The test program sends a single '.' per 1000000 loads/stores over the
serial. This output is not captured, but may be used by developers to
gauge the number of possible interactions.

Reviewed-by: Daniel Henrique Barboza <[email protected]>
Signed-off-by: Julian Ganz <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: 78bd26bbf07ffdb58953b62ec8777a5283849809
      
https://github.com/qemu/qemu/commit/78bd26bbf07ffdb58953b62ec8777a5283849809
  Author: Alex Bennée <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M plugins/core.c
    M plugins/loader.c

  Log Message:
  -----------
  plugins/core: add missing QEMU_DISABLE_CFI annotations

Most of the memory callbacks come directly from the generated code
however we have do have a a direct from C callback for the slow-path
and memory helpers.

There is also a reset callback that calls out to plugins.

Like the other plugin points we need to disable CFI as we are making
function calls to dynamically linked libraries.

Fixes: https://gitlab.com/qemu-project/qemu/-/issues/3175
Reported-by: Peter Maydell <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: 12e9a13e32662f2b9abce1fc34a89b0786280328
      
https://github.com/qemu/qemu/commit/12e9a13e32662f2b9abce1fc34a89b0786280328
  Author: Alex Bennée <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M .gitlab-ci.d/custom-runners/ubuntu-24.04-aarch64.yml
    M configs/devices/aarch64-softmmu/minimal.mak

  Log Message:
  -----------
  configs: drop SBSA_REF from minimal specification

The whole point of SBSA_REF is for testing firmware which by
definition requires TCG. This means the configuration of:

  --disable-tcg --with-devices-aarch64=minimal

makes no sense (and indeed is broken for the
ubuntu-24.04-aarch64-notcg) test. Drop it from minimal and remove the
allow_failure from the test case.

Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: 524fc77d2322814f0dfde272559d74ec1599f01e
      
https://github.com/qemu/qemu/commit/524fc77d2322814f0dfde272559d74ec1599f01e
  Author: Sean Anderson <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M gdbstub/syscalls.c

  Log Message:
  -----------
  gdbstub: Fix %s formatting

The format string for %s has two format characters. This causes it to
emit strings like "466f5bd8/6x" instead of "466f5bd8/6". GDB detects
this and returns EIO, causing all open File I/O calls to fail.

Fixes: 0820a075af ("gdbstub: Adjust gdb_do_syscall to only use uint32_t and 
uint64_t")
Signed-off-by: Sean Anderson <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Reviewed-by: Alex Bennée <[email protected]>
Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: 4f45b2c352bb72c13a8801805061b31979e3f048
      
https://github.com/qemu/qemu/commit/4f45b2c352bb72c13a8801805061b31979e3f048
  Author: Sean Anderson <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M semihosting/arm-compat-semi.c

  Log Message:
  -----------
  semihosting: Fix GDB File-I/O FLEN

fstat returns 0 on success and -1 on error. Since we have already
checked for error, ret must be zero. Therefore, any call to fstat on a
non-empty file will return -1/EOVERFLOW.

Restore the original logic that just did a byteswap. I don't really know
what the intention of the fixed commit was.

Fixes: a6300ed6b7 ("semihosting: Split out semihost_sys_flen")
Signed-off-by: Sean Anderson <[email protected]>
Reviewed-by: Alex Bennée <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Alex Bennée <[email protected]>


  Commit: 5de9216064d32eaac125dac4de1878486c16d73e
      
https://github.com/qemu/qemu/commit/5de9216064d32eaac125dac4de1878486c16d73e
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    A include/hw/arm/machines-qom.h
    M meson.build
    A target-info-qom.c

  Log Message:
  -----------
  hw/arm: Register TYPE_TARGET_ARM/AARCH64_MACHINE QOM interfaces

Define the TYPE_TARGET_ARM_MACHINE and TYPE_TARGET_AARCH64_MACHINE
QOM interface names to allow machines to implement them.

Register these interfaces in common code in target_info-qom.c used
by all binaries because QOM interfaces must be registered before
being checked (see next commit with the 'none' machine).

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Acked-by: Peter Maydell <[email protected]>
Message-Id: <[email protected]>


  Commit: eb796c55513d9d39bf7ef40eec367098b16edd7f
      
https://github.com/qemu/qemu/commit/eb796c55513d9d39bf7ef40eec367098b16edd7f
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M hw/core/null-machine.c

  Log Message:
  -----------
  hw/core: Allow ARM/Aarch64 binaries to use the 'none' machine

When we'll start to use target_machine_typename() to filter
machines for the ARM/Aarch64 binaries, the 'none' machine
would be filtered. Register the proper interfaces to keep
it available.

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Acked-by: Peter Maydell <[email protected]>
Message-Id: <[email protected]>


  Commit: 453bf5c72f9b8d5dc96d4f8fce86a03464fae616
      
https://github.com/qemu/qemu/commit/453bf5c72f9b8d5dc96d4f8fce86a03464fae616
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M include/hw/arm/machines-qom.h
    M target/arm/machine.c

  Log Message:
  -----------
  hw/arm: Add DEFINE_MACHINE_ARM() / DEFINE_MACHINE_AARCH64() macros

A machine defined with the DEFINE_MACHINE_ARM() macro will
be available in both qemu-system-arm and qemu-system-aarch64
binaries.

One defined with DEFINE_MACHINE_AARCH64() will only be
available in the qemu-system-aarch64 binary.

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Acked-by: Peter Maydell <[email protected]>
Message-Id: <[email protected]>


  Commit: 9043b0b410aaa67f5195662ddfed7f2dc7e29bcf
      
https://github.com/qemu/qemu/commit/9043b0b410aaa67f5195662ddfed7f2dc7e29bcf
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M hw/arm/aspeed.c
    M hw/arm/aspeed_ast27x0-fc.c
    M hw/arm/b-l475e-iot01a.c
    M hw/arm/bananapi_m2u.c
    M hw/arm/collie.c
    M hw/arm/cubieboard.c
    M hw/arm/digic_boards.c
    M hw/arm/exynos4_boards.c
    M hw/arm/fby35.c
    M hw/arm/highbank.c
    M hw/arm/imx25_pdk.c
    M hw/arm/imx8mp-evk.c
    M hw/arm/integratorcp.c
    M hw/arm/kzm.c
    M hw/arm/mcimx6ul-evk.c
    M hw/arm/mcimx7d-sabre.c
    M hw/arm/microbit.c
    M hw/arm/mps2-tz.c
    M hw/arm/mps2.c
    M hw/arm/mps3r.c
    M hw/arm/msf2-som.c
    M hw/arm/musca.c
    M hw/arm/musicpal.c
    M hw/arm/netduino2.c
    M hw/arm/netduinoplus2.c
    M hw/arm/npcm7xx_boards.c
    M hw/arm/npcm8xx_boards.c
    M hw/arm/olimex-stm32-h405.c
    M hw/arm/omap_sx1.c
    M hw/arm/orangepi.c
    M hw/arm/raspi.c
    M hw/arm/raspi4b.c
    M hw/arm/realview.c
    M hw/arm/sabrelite.c
    M hw/arm/sbsa-ref.c
    M hw/arm/stellaris.c
    M hw/arm/stm32vldiscovery.c
    M hw/arm/versatilepb.c
    M hw/arm/vexpress.c
    M hw/arm/virt.c
    M hw/arm/xilinx_zynq.c
    M hw/arm/xlnx-versal-virt.c
    M hw/arm/xlnx-zcu102.c

  Log Message:
  -----------
  hw/arm: Filter machine types for qemu-system-arm/aarch64 binaries

Register machines to be able to run with the qemu-system-arm
and qemu-system-aarch64 binaries, except few machines which
are only available on the qemu-system-aarch64 binary:

  $ git grep TARGET_AARCH64 hw/arm/meson.build
  hw/arm/meson.build:31:arm_common_ss.add(when: ['CONFIG_RASPI', 
'TARGET_AARCH64'], if_true: files('bcm2838.c', 'raspi4b.c'))
  hw/arm/meson.build:50:arm_common_ss.add(when: ['CONFIG_ASPEED_SOC', 
'TARGET_AARCH64'], if_true: files('aspeed_ast27x0.c'))

  $ git grep -W AARCH64 hw/arm/Kconfig
  hw/arm/Kconfig=185=config SBSA_REF
  hw/arm/Kconfig-186-    bool
  hw/arm/Kconfig-187-    default y
  hw/arm/Kconfig:188:    depends on TCG && AARCH64
  --
  hw/arm/Kconfig=413=config XLNX_ZYNQMP_ARM
  hw/arm/Kconfig-414-    bool
  hw/arm/Kconfig-415-    default y if PIXMAN
  hw/arm/Kconfig:416:    depends on TCG && AARCH64
  --
  hw/arm/Kconfig=435=config XLNX_VERSAL
  hw/arm/Kconfig-436-    bool
  hw/arm/Kconfig-437-    default y
  hw/arm/Kconfig:438:    depends on TCG && AARCH64
  --
  hw/arm/Kconfig=475=config NPCM8XX
  hw/arm/Kconfig-476-    bool
  hw/arm/Kconfig-477-    default y
  hw/arm/Kconfig:478:    depends on TCG && AARCH64
  --
  hw/arm/Kconfig=605=config FSL_IMX8MP_EVK
  hw/arm/Kconfig-606-    bool
  hw/arm/Kconfig-607-    default y
  hw/arm/Kconfig:608:    depends on TCG && AARCH64

  $ git grep -wW TARGET_AARCH64 hw/arm | fgrep -4 MACHINE_TYPE_NAME
  ...
  hw/arm/aspeed.c:1939:#ifdef TARGET_AARCH64
  hw/arm/aspeed.c-1940-    }, {
  hw/arm/aspeed.c-1941-        .name          = 
MACHINE_TYPE_NAME("ast2700a0-evb"),

  hw/arm/aspeed.c-1949-        .name          = 
MACHINE_TYPE_NAME("ast2700a1-evb"),

  hw/arm/raspi.c:420:#ifdef TARGET_AARCH64
  hw/arm/raspi.c-421-    }, {
  hw/arm/raspi.c-422-        .name           = MACHINE_TYPE_NAME("raspi3ap"),

  hw/arm/raspi.c-429-    }, {
  hw/arm/raspi.c-430-        .name           = MACHINE_TYPE_NAME("raspi3b"),

This can be verified as:

$ diff -u0 <(qemu-system-arm -M help) <(qemu-system-aarch64 -M help)
  @@ -1,0 +2,3 @@
  +xlnx-versal-virt     AMD Versal Virtual development board (alias of 
amd-versal-virt)
  +amd-versal-virt      AMD Versal Virtual development board
  +amd-versal2-virt     AMD Versal Gen 2 Virtual development board
  @@ -4,0 +8,5 @@
  +ast2700a0-evb        Aspeed AST2700 A0 EVB (Cortex-A35)
  +ast2700-evb          Aspeed AST2700 A1 EVB (Cortex-A35) (alias of 
ast2700a1-evb)
  +ast2700a1-evb        Aspeed AST2700 A1 EVB (Cortex-A35)
  +ast2700fc            ast2700 full core support (alias of ast2700fc)
  +ast2700fc            ast2700 full core support
  @@ -20,0 +29 @@
  +imx8mp-evk           NXP i.MX 8M Plus EVK Board
  @@ -47,0 +57 @@
  +npcm845-evb          Nuvoton NPCM845 Evaluation Board (Cortex-A35)
  @@ -60,0 +71,3 @@
  +raspi3ap             Raspberry Pi 3A+ (revision 1.0)
  +raspi3b              Raspberry Pi 3B (revision 1.2)
  +raspi4b              Raspberry Pi 4B (revision 1.5)
  @@ -66,0 +80 @@
  +sbsa-ref             QEMU 'SBSA Reference' ARM Virtual Machine
  @@ -99,0 +114 @@
  +xlnx-zcu102          Xilinx ZynqMP ZCU102 board with 4xA53s and 2xR5Fs based 
on the value of smp

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Acked-by: Peter Maydell <[email protected]>
Message-Id: <[email protected]>


  Commit: de911ca22739fe25c7d8396c14a99d807489637d
      
https://github.com/qemu/qemu/commit/de911ca22739fe25c7d8396c14a99d807489637d
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M MAINTAINERS
    A configs/targets/meson.build
    M meson.build

  Log Message:
  -----------
  meson: Prepare to accept per-binary TargetInfo structure implementation

If a file defining the binary TargetInfo structure is available,
link with it. Otherwise keep using the stub.

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Acked-by: Peter Maydell <[email protected]>
Message-Id: <[email protected]>


  Commit: 749b03293d487887f2d2308a52255a8cff82ca5f
      
https://github.com/qemu/qemu/commit/749b03293d487887f2d2308a52255a8cff82ca5f
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    A configs/targets/aarch64-softmmu.c
    A configs/targets/arm-softmmu.c
    M configs/targets/meson.build

  Log Message:
  -----------
  config/target: Implement per-binary TargetInfo structure (ARM, AARCH64)

Implement the TargetInfo structure for qemu-system-arm
and qemu-system-aarch64 binaries.

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Acked-by: Peter Maydell <[email protected]>
Message-Id: <[email protected]>


  Commit: ebc475ac1e1e31393a6f4768c65bdb26f3d3154c
      
https://github.com/qemu/qemu/commit/ebc475ac1e1e31393a6f4768c65bdb26f3d3154c
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M hw/arm/virt.c

  Log Message:
  -----------
  hw/arm/virt: Register valid CPU types dynamically

Replace the static array returned as MachineClass::valid_cpu_types[]
by a runtime one generated by MachineClass::get_valid_cpu_types()
once the machine is created (its options being processed).

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Acked-by: Peter Maydell <[email protected]>
Message-Id: <[email protected]>


  Commit: 93a72a9542d656b257faa373507fe004e954d645
      
https://github.com/qemu/qemu/commit/93a72a9542d656b257faa373507fe004e954d645
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M hw/arm/virt.c

  Log Message:
  -----------
  hw/arm/virt: Check accelerator availability at runtime

It is not possible to call accelerator runtime helpers
when QOM types are registered, because they depend on
the parsing of the '-accel FOO' command line option,
which happens after main().

Now than get_valid_cpu_types() is called after
accelerator initializations, it is safe to call the
accelerator helpers:

  main
   + configure_accelerators
   + qmp_x_exit_preconfig
     + qemu_init_board
       + machine_run_board_init
         + is_cpu_type_supported

Replace compile-time check on CONFIG_{ACCEL} by
runtime check on {accel}_enabled() helpers.

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Acked-by: Peter Maydell <[email protected]>
Message-Id: <[email protected]>


  Commit: e2d87c5666e2ce34560fedd1c85c3305e1a2898e
      
https://github.com/qemu/qemu/commit/e2d87c5666e2ce34560fedd1c85c3305e1a2898e
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M include/qemu/target-info.h
    M target-info.c

  Log Message:
  -----------
  qemu/target_info: Add target_arm() helper

Add a helper to distinct whether the binary is targetting
ARM (32-bit only) or not.

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Acked-by: Peter Maydell <[email protected]>
Message-Id: <[email protected]>


  Commit: 8bf0544a642ff8962adca5853e409a12c1918b64
      
https://github.com/qemu/qemu/commit/8bf0544a642ff8962adca5853e409a12c1918b64
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M include/qemu/target-info.h
    M target-info.c

  Log Message:
  -----------
  qemu/target_info: Add target_aarch64() helper

Add a helper to distinct whether the binary is targetting
Aarch64 or not.

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Acked-by: Peter Maydell <[email protected]>
Message-Id: <[email protected]>


  Commit: c19204f59500063a99161a4794b5b06290ede0b4
      
https://github.com/qemu/qemu/commit/c19204f59500063a99161a4794b5b06290ede0b4
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M include/qemu/target-info.h
    M target-info.c

  Log Message:
  -----------
  qemu/target_info: Add target_base_arm() helper

Add a helper to check whether the target base architecture
is ARM (either 32-bit or 64-bit).

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Acked-by: Peter Maydell <[email protected]>
Message-Id: <[email protected]>


  Commit: 30f97c17c7eb6597e4748b2f16b5d5d8496df6f8
      
https://github.com/qemu/qemu/commit/30f97c17c7eb6597e4748b2f16b5d5d8496df6f8
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M hw/arm/virt.c

  Log Message:
  -----------
  hw/arm/virt: Replace TARGET_AARCH64 -> target_aarch64()

Replace the target-specific TARGET_AARCH64 definition
by a call to the generic target_aarch64() helper.

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Acked-by: Peter Maydell <[email protected]>
Message-Id: <[email protected]>


  Commit: fb341ac937b02e2e059e80c75e5a66fa47ed8259
      
https://github.com/qemu/qemu/commit/fb341ac937b02e2e059e80c75e5a66fa47ed8259
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M hw/arm/virt.c

  Log Message:
  -----------
  hw/arm/virt: Get default CPU type at runtime

Prefer MachineClass::get_default_cpu_type() over
MachineClass::default_cpu_type to get CPU type,
evaluating TCG availability at runtime calling
tcg_enabled().

It's worth noting that this is a behavior change:

- Previously only

  ./configure --disable-tcg --enable-kvm
  ./qemu-system-aarch64 -M virt -accel kvm

  would default to 'max' and

  ./configure --enable-tcg --enable-kvm
  ./qemu-system-aarch64 -M virt -accel kvm

  would default to 'cortex-a15'.

- Afterward, -accel kvm will always default to 'max'.

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Richard Henderson <[email protected]>
Reviewed-by: Zhang Chen <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Acked-by: Peter Maydell <[email protected]>
Message-Id: <[email protected]>


  Commit: d90d6b402293c0439eaf454f3d84f3ad28cb921f
      
https://github.com/qemu/qemu/commit/d90d6b402293c0439eaf454f3d84f3ad28cb921f
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M hw/arm/sbsa-ref.c

  Log Message:
  -----------
  hw/arm/sbsa-ref: Include missing 'cpu.h' header

"cpu.h" is indirectly pulled in by another header. Include
it explicitly in order to avoid when changing default CPPFLAGS path:

  hw/arm/sbsa-ref.c:162:25: error: use of undeclared identifier 
'ARM_DEFAULT_CPUS_PER_CLUSTER'
    162 |     uint8_t clustersz = ARM_DEFAULT_CPUS_PER_CLUSTER;
        |                         ^
  hw/arm/sbsa-ref.c:163:12: error: call to undeclared function 
'arm_build_mp_affinity'
    163 |     return arm_build_mp_affinity(idx, clustersz);
        |            ^
  hw/arm/sbsa-ref.c:746:25: error: use of undeclared identifier 
'QEMU_PSCI_CONDUIT_DISABLED'
    746 |     sms->psci_conduit = QEMU_PSCI_CONDUIT_DISABLED;
        |                         ^

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Acked-by: Peter Maydell <[email protected]>
Message-Id: <[email protected]>


  Commit: 5237275eb7490347dd24f17c7f8c3a2cac779a13
      
https://github.com/qemu/qemu/commit/5237275eb7490347dd24f17c7f8c3a2cac779a13
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M hw/arm/meson.build

  Log Message:
  -----------
  hw/arm/sbsa-ref: Build only once

Since previous commit allowed the use of accelerator definitions
in common code, we can now move sbsa-ref.c to arm_common_ss[].

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Acked-by: Peter Maydell <[email protected]>
Message-Id: <[email protected]>


  Commit: 2ec2eae6422441b7150461fcf3cc4aefddcfac50
      
https://github.com/qemu/qemu/commit/2ec2eae6422441b7150461fcf3cc4aefddcfac50
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M hw/arm/virt-acpi-build.c

  Log Message:
  -----------
  hw/arm/virt-acpi-build: Include missing 'cpu.h' header

"cpu.h" is indirectly pulled in by another header. Include
it explicitly in order to avoid when changing default CPPFLAGS path:

  hw/arm/virt-acpi-build.c:903:34: error: call to undeclared function 
'arm_feature';
    903 |         uint32_t pmu_interrupt = arm_feature(&armcpu->env, 
ARM_FEATURE_PMU) ?
        |                                  ^
  hw/arm/virt-acpi-build.c:903:53: error: incomplete definition of type 
'ARMCPU' (aka 'struct ArchCPU')
    903 |         uint32_t pmu_interrupt = arm_feature(&armcpu->env, 
ARM_FEATURE_PMU) ?
        |                                               ~~~~~~^
  include/qemu/typedefs.h:30:16: note: forward declaration of 'struct ArchCPU'
     30 | typedef struct ArchCPU ArchCPU;
        |                ^
  hw/arm/virt-acpi-build.c:903:60: error: use of undeclared identifier 
'ARM_FEATURE_PMU'
    903 |         uint32_t pmu_interrupt = arm_feature(&armcpu->env, 
ARM_FEATURE_PMU) ?
        |                                                            ^
  hw/arm/virt-acpi-build.c:993:10: error: use of undeclared identifier 
'QEMU_PSCI_CONDUIT_DISABLED'
    993 |     case QEMU_PSCI_CONDUIT_DISABLED:
        |          ^
  hw/arm/virt-acpi-build.c:996:10: error: use of undeclared identifier 
'QEMU_PSCI_CONDUIT_HVC'
    996 |     case QEMU_PSCI_CONDUIT_HVC:
        |          ^
  hw/arm/virt-acpi-build.c:1000:10: error: use of undeclared identifier 
'QEMU_PSCI_CONDUIT_SMC'
   1000 |     case QEMU_PSCI_CONDUIT_SMC:
        |          ^

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Acked-by: Peter Maydell <[email protected]>
Message-Id: <[email protected]>


  Commit: 72989845e901028684bfb30a9e0aefbcade3b696
      
https://github.com/qemu/qemu/commit/72989845e901028684bfb30a9e0aefbcade3b696
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M hw/arm/meson.build

  Log Message:
  -----------
  hw/arm/virt-acpi-build: Build only once

Previous commits removed the target-specificities,
we can now move virt-acpi-build.c to arm_common_ss[].

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Acked-by: Peter Maydell <[email protected]>
Message-Id: <[email protected]>


  Commit: 35f4e39234165eb34be3499d3f5b6bb7ff2378d7
      
https://github.com/qemu/qemu/commit/35f4e39234165eb34be3499d3f5b6bb7ff2378d7
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M hw/arm/meson.build

  Log Message:
  -----------
  hw/arm/virt: Build only once

Previous commits removed the TARGET_AARCH64 uses in virt.c,
we can now move it to arm_common_ss[] and build it once.

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Acked-by: Peter Maydell <[email protected]>
Message-Id: <[email protected]>


  Commit: 60db369c0879209d2e34fac6caf3f0e87987dfa9
      
https://github.com/qemu/qemu/commit/60db369c0879209d2e34fac6caf3f0e87987dfa9
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M hw/arm/meson.build

  Log Message:
  -----------
  hw/arm/meson: Move Xen files to arm_common_ss[]

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Acked-by: Peter Maydell <[email protected]>
Message-Id: <[email protected]>


  Commit: 46360573ec654820144ca3ce865b4490c6dadc54
      
https://github.com/qemu/qemu/commit/46360573ec654820144ca3ce865b4490c6dadc54
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M hw/xen/xen-hvm-common.c

  Log Message:
  -----------
  hw/xen: Use BITS_PER_BYTE & MAKE_64BIT_MASK() in req_size_bits()

Replace magic 8 by BITS_PER_BYTE, use MAKE_64BIT_MASK()
instead of open coding it.

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Reviewed-by: Edgar E. Iglesias <[email protected]>
Message-Id: <[email protected]>


  Commit: 606e55e5d9fc5988c2267504567e1e81dc1fdfa7
      
https://github.com/qemu/qemu/commit/606e55e5d9fc5988c2267504567e1e81dc1fdfa7
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M hw/xen/xen-hvm-common.c

  Log Message:
  -----------
  hw/xen: Replace target_ulong by agnostic target_long_bits()

Both are equivalent:

  target_long_bits()

  sizeof(target_u?long) * BITS_PER_BYTE

Prefer the former which is target-agnostic.

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Reviewed-by: Edgar E. Iglesias <[email protected]>
Message-Id: <[email protected]>


  Commit: 8f5bfe403504af8a45296b2ba7e68595a09671e4
      
https://github.com/qemu/qemu/commit/8f5bfe403504af8a45296b2ba7e68595a09671e4
  Author: Philippe Mathieu-Daudé <[email protected]>
  Date:   2025-10-29 (Wed, 29 Oct 2025)

  Changed paths:
    M hw/xen/meson.build

  Log Message:
  -----------
  hw/xen: Build only once

Now than hw/xen/ files don't use any target-specific code,
we can build all file units once, removing the need for the
xen_specific_ss[] source set.

Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Pierrick Bouvier <[email protected]>
Reviewed-by: Edgar E. Iglesias <[email protected]>
Message-Id: <[email protected]>


  Commit: 2e0096a2b6a5a7e3cde1dd13704cc71af6b9bdd7
      
https://github.com/qemu/qemu/commit/2e0096a2b6a5a7e3cde1dd13704cc71af6b9bdd7
  Author: Bibo Mao <[email protected]>
  Date:   2025-10-30 (Thu, 30 Oct 2025)

  Changed paths:
    M include/standard-headers/linux/ethtool.h
    M include/standard-headers/linux/fuse.h
    M include/standard-headers/linux/input-event-codes.h
    M include/standard-headers/linux/input.h
    M include/standard-headers/linux/pci_regs.h
    M include/standard-headers/linux/virtio_ids.h
    M linux-headers/asm-loongarch/kvm.h
    M linux-headers/asm-riscv/kvm.h
    M linux-headers/asm-riscv/ptrace.h
    M linux-headers/asm-x86/kvm.h
    M linux-headers/asm-x86/unistd_64.h
    M linux-headers/asm-x86/unistd_x32.h
    M linux-headers/linux/kvm.h
    M linux-headers/linux/psp-sev.h
    M linux-headers/linux/stddef.h
    M linux-headers/linux/vduse.h
    M linux-headers/linux/vhost.h

  Log Message:
  -----------
  linux-headers: Update to Linux v6.18-rc3

Update headers to retrieve the latest KVM caps for LoongArch. It is added
to the tree by running `update-linux-headers.sh` on linux v6.18-rc3.

Signed-off-by: Bibo Mao <[email protected]>
Reviewed-by: Song Gao <[email protected]>


  Commit: c981119dab04ac20f86ae755a669d74fc1373cb7
      
https://github.com/qemu/qemu/commit/c981119dab04ac20f86ae755a669d74fc1373cb7
  Author: Bibo Mao <[email protected]>
  Date:   2025-10-30 (Thu, 30 Oct 2025)

  Changed paths:
    M target/loongarch/cpu.c
    M target/loongarch/cpu.h
    M target/loongarch/kvm/kvm.c

  Log Message:
  -----------
  target/loongarch: Add PTW feature support in KVM mode

Implement Hardware page table walker(PTW for short) feature in KVM mode.
Use OnOffAuto type variable ptw to check the PTW feature. If the PTW
feature is not supported on KVM host, there is error reported with ptw=on
option.

By default PTW feature is disabled on la464 CPU type, and auto detected
on max CPU type.

Signed-off-by: Bibo Mao <[email protected]>
Reviewed-by: Song Gao <[email protected]>


  Commit: 169e8d0c4b014fed1785fd3e31932ce92b15883f
      
https://github.com/qemu/qemu/commit/169e8d0c4b014fed1785fd3e31932ce92b15883f
  Author: Wilfred Mallawa <[email protected]>
  Date:   2025-10-30 (Thu, 30 Oct 2025)

  Changed paths:
    M backends/spdm-socket.c
    M include/system/spdm-socket.h

  Log Message:
  -----------
  spdm-socket: add seperate send/recv functions

This is to support uni-directional transports such as SPDM over Storage.
As specified by the DMTF DSP0286.

Also update spdm_socket_rsp() to use the new send()/receive() functions. For
the case of spdm_socket_receive(), this allows us to do error checking
in one place with the addition of spdm_socket_command_valid().

Signed-off-by: Wilfred Mallawa <[email protected]>
Reviewed-by: Alistair Francis <[email protected]>
Reviewed-by: Jonathan Cameron <[email protected]>
Signed-off-by: Klaus Jensen <[email protected]>


  Commit: 64a9336a413beb3f6e90a2fa12b761043d10b68d
      
https://github.com/qemu/qemu/commit/64a9336a413beb3f6e90a2fa12b761043d10b68d
  Author: Wilfred Mallawa <[email protected]>
  Date:   2025-10-30 (Thu, 30 Oct 2025)

  Changed paths:
    M include/system/spdm-socket.h

  Log Message:
  -----------
  spdm: add spdm storage transport virtual header

This header contains the transport encoding for an SPDM message that
uses the SPDM over Storage transport as defined by the DMTF DSP0286.

Note that in the StorageSpdmTransportHeader structure, security_protocol
field is defined in the SCSI Primary Commands 5 (SPC-5) specification.
The NVMe specification also refers to the SPC-5 for this definition.
The security_protocol_specific field is defined in DSP0286 and is
referred to as SP Specific for NVMe and ATA.

Signed-off-by: Wilfred Mallawa <[email protected]>
Reviewed-by: Alistair Francis <[email protected]>
Reviewed-by: Jonathan Cameron <[email protected]>
Signed-off-by: Klaus Jensen <[email protected]>


  Commit: e5534abeb4575db0afc2664e542b26975413fd5a
      
https://github.com/qemu/qemu/commit/e5534abeb4575db0afc2664e542b26975413fd5a
  Author: Wilfred Mallawa <[email protected]>
  Date:   2025-10-30 (Thu, 30 Oct 2025)

  Changed paths:
    M hw/nvme/ctrl.c
    M hw/nvme/nvme.h
    M include/block/nvme.h
    M include/system/spdm-socket.h

  Log Message:
  -----------
  hw/nvme: add NVMe Admin Security SPDM support

Adds the NVMe Admin Security Send/Receive command support with support
for DMTFs SPDM. The transport binding for SPDM is defined in the
DMTF DSP0286.

Signed-off-by: Wilfred Mallawa <[email protected]>
Reviewed-by: Stefan Hajnoczi <[email protected]>
Reviewed-by: Jonathan Cameron <[email protected]>
Reviewed-by: Klaus Jensen <[email protected]>
Reviewed-by: Alistair Francis <[email protected]>
Signed-off-by: Klaus Jensen <[email protected]>


  Commit: 3d8412c2fbe9387ece65d6acb8708960bf762693
      
https://github.com/qemu/qemu/commit/3d8412c2fbe9387ece65d6acb8708960bf762693
  Author: Wilfred Mallawa <[email protected]>
  Date:   2025-10-30 (Thu, 30 Oct 2025)

  Changed paths:
    M backends/spdm-socket.c
    M include/system/spdm-socket.h

  Log Message:
  -----------
  spdm: define SPDM transport enum types

SPDM maybe used over different transports. This patch specifies the
trasnport types as an enum with a qdev property definition such that
a user input transport type (string) can be mapped directly into the
respective SPDM transportenum for internal use.

Signed-off-by: Wilfred Mallawa <[email protected]>
Reviewed-by: Jonathan Cameron <[email protected]>
Reviewed-by: Alistair Francis <[email protected]>
Signed-off-by: Klaus Jensen <[email protected]>


  Commit: 7f2eeccb4b2ea66ff516d94ff57e6b72a4b4d4f9
      
https://github.com/qemu/qemu/commit/7f2eeccb4b2ea66ff516d94ff57e6b72a4b4d4f9
  Author: Wilfred Mallawa <[email protected]>
  Date:   2025-10-30 (Thu, 30 Oct 2025)

  Changed paths:
    M docs/specs/spdm.rst
    M hw/nvme/ctrl.c
    M include/hw/pci/pci_device.h

  Log Message:
  -----------
  hw/nvme: connect SPDM over NVMe Security Send/Recv

This patch extends the existing support we have for NVMe with only DoE
to also add support to SPDM over the NVMe Security Send/Recv commands.

With the new definition of the `spdm-trans` argument, users can specify
`spdm_trans=nvme` or `spdm_trans=doe`. This allows us to select the SPDM
transport respectively. SPDM over the NVMe Security Send/Recv commands
are defined in the DMTF DSP0286.

Signed-off-by: Wilfred Mallawa <[email protected]>
Reviewed-by: Jonathan Cameron <[email protected]>
Reviewed-by: Klaus Jensen <[email protected]>
Reviewed-by: Alistair Francis <[email protected]>
[k.jensen: fix declaration in case statement; fix quotes in docs]
Signed-off-by: Klaus Jensen <[email protected]>


  Commit: 3b41acc9629990e04812c538bdfceb7cd061861e
      
https://github.com/qemu/qemu/commit/3b41acc9629990e04812c538bdfceb7cd061861e
  Author: Alan Adamson <[email protected]>
  Date:   2025-10-30 (Thu, 30 Oct 2025)

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

  Log Message:
  -----------
  hw/nvme: enable ns atomic writes

Add support for the namespace atomic paramters: NAWUN and NAWUN. Namespace
Atomic Compare and Write Unit (NACWU) is not currently supported.

Writes that adhere to the NACWU and NAWUPF parameters are guaranteed to be
atomic.

New NVMe QEMU Paramters (See NVMe Specification for details):
        atomic.nawun=UINT16 (default: 0)
        atomic.nawupf=UINT16 (default: 0)
        atomic.nsfeat (default off) - Set Namespace Supported Atomic Boundary &
                Power (NSABP) bit in Namespace Features (NSFEAT) in the Identify
                Namespace Data Structure

See the NVMe Specification for more information.

Signed-off-by: Alan Adamson <[email protected]>
Reviewed-by: Jesper Wendel Devantier <[email protected]>
Signed-off-by: Klaus Jensen <[email protected]>


  Commit: bce51b83709b548fbecbe64acd65225587c5b803
      
https://github.com/qemu/qemu/commit/bce51b83709b548fbecbe64acd65225587c5b803
  Author: Alan Adamson <[email protected]>
  Date:   2025-10-30 (Thu, 30 Oct 2025)

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

  Log Message:
  -----------
  hw/nvme: add atomic boundary support

Add support for the namespace atomic boundary paramters: NABO, NABSN, and 
NABSPF.

Writes that cross an atomic boundary whose size is less than or equal to values
reported by AWUN/AWUPF are guaranteed to be atomic. If AWUN/AWUPF is set to 
zero,
writes that cross an atomic boundary are not guaranteed to be atomic.

The value reported by NABO field indicates the LBA on this namespace where the
first atomic boundary starts.

New NVMe QEMU Paramters (See NVMe Specification for details):
        atomic.nabo=UINT16 (default: 0)
        atomic.nabsn=UINT16 (default: 0)
        atomic.nabspf=UINT16 (default: 0)

See the NVMe Specification for more information.

Signed-off-by: Alan Adamson <[email protected]>
Reviewed-by: Jesper Wendel Devantier <[email protected]>
Signed-off-by: Klaus Jensen <[email protected]>


  Commit: 7fe5794db1aab865b345d3c130a3330fd48b118c
      
https://github.com/qemu/qemu/commit/7fe5794db1aab865b345d3c130a3330fd48b118c
  Author: Anton Johansson <[email protected]>
  Date:   2025-10-30 (Thu, 30 Oct 2025)

  Changed paths:
    M hw/riscv/riscv-iommu.c
    M hw/riscv/riscv_hart.c

  Log Message:
  -----------
  hw/riscv: Replace target_ulong uses

Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Anton Johansson <[email protected]>
Reviewed-by: Alistair Francis <[email protected]>
Message-ID: <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>


  Commit: 097966704932ee28dadbf75243108097b0f3e123
      
https://github.com/qemu/qemu/commit/097966704932ee28dadbf75243108097b0f3e123
  Author: Richard Henderson <[email protected]>
  Date:   2025-10-30 (Thu, 30 Oct 2025)

  Changed paths:
    M MAINTAINERS
    M block.c
    M block/accounting.c
    M block/crypto.c
    M block/curl.c
    M block/io.c
    M block/monitor/block-hmp-cmds.c
    M block/qapi.c
    M blockdev.c
    M docs/tools/qemu-img.rst
    M hw/block/block.c
    M include/block/accounting.h
    M include/block/block_int-common.h
    M include/block/block_int-io.h
    M include/block/qapi.h
    M include/hw/block/block.h
    M qapi/block-core.json
    M qemu-img-cmds.hx
    M qemu-img.c
    M tests/qemu-iotests/094.out
    M tests/qemu-iotests/119.out
    M tests/qemu-iotests/172.out
    M tests/qemu-iotests/184
    M tests/qemu-iotests/184.out
    M tests/qemu-iotests/267.out
    M tests/qemu-iotests/common.filter
    M tests/qemu-iotests/tests/fuse-allow-other.out
    M tests/qemu-iotests/tests/inactive-node-nbd
    A tests/qemu-iotests/tests/resize-below-filter
    A tests/qemu-iotests/tests/resize-below-filter.out
    A tests/qemu-iotests/tests/resize-below-raw
    A tests/qemu-iotests/tests/resize-below-raw.out

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

Block layer patches

- Expose block limits in monitor and qemu-img info
- Resize: Refresh filter node size when its child was resized
- Support configuring stats-intervals in -device (instead of only -drive)
- luks: Fix QMP x-blockdev-amend crash and image creation with detached-header
- iotests: Several test case fixes
- Code cleanups

# -----BEGIN PGP SIGNATURE-----
#
# iQJFBAABCgAvFiEE3D3rFZqa+V09dFb+fwmycsiPL9YFAmkCAkIRHGt3b2xmQHJl
# ZGhhdC5jb20ACgkQfwmycsiPL9a3bA/+MMS9ocOyEiE4u66XbhQ4KgqxECtD/uzg
# 3lYQJbfVpphizq0QQn1pAno9rpjdWnkwPv9TasAEM/9R/wz/ygjmXM9GyQDvNLoB
# t6dTyWKpsi4lVB7FNPBNQvyz7mHqWQULrhI/mNGLsbiss32SMiE08amjOzSrFSZJ
# zn8TsEzDB218Bv8OBH/eI1mMvZ2gG6+yzPf7znA5nSOtJkG1kGLPInZuRgeN7e7W
# DUl5EeiP3sGZh4pF/IyRc8BNMsvPR7Lk31PrPEXAz+7g0y8dfPukrcR0nY6nwekT
# omPhbIBfDOEKpYdBxheOdh9TkT40Fo2Oc7DIhzY4at3O02BKy60kJSZaqoWj+80L
# A3yJ1K7wgiwqzOw0VaHU56Y5awnD5cculciwHxrfc6OHnG9cotvCSxsU2qr/UMd2
# N/cPhUDKfWcilVoRNy+yYiubQsp2s4amF2uGDn/QjjZx0c3dgfXc9BCNmu9nbAMr
# UsmzZBH9GCpaTajVIsX8RdnaovMTxGr4UFyuSQ2jWYWp3k2BR89jkBpXReGGOYr6
# SuEOOnx/E1duTZUPq1gdSkQm9uGxxq5FSGIWR+rWMdFkZS09HStmq5hcY+Zx0pSg
# JzDaLgPATV65y0VswFVUj6NemmNU983DwKPACwVCpemeBETtVuoU/CydzEPPwiL6
# Kl5ISmjZz3I=
# =v2BI
# -----END PGP SIGNATURE-----
# gpg: Signature made Wed 29 Oct 2025 01:02:10 PM CET
# gpg:                using RSA key DC3DEB159A9AF95D3D7456FE7F09B272C88F2FD6
# gpg:                issuer "[email protected]"
# gpg: Good signature from "Kevin Wolf <[email protected]>" [unknown]
# gpg: WARNING: The key's User ID is not certified with a trusted signature!
# gpg:          There is no indication that the signature belongs to the owner.
# Primary key fingerprint: DC3D EB15 9A9A F95D 3D74  56FE 7F09 B272 C88F 2FD6

* tag 'for-upstream' of https://repo.or.cz/qemu/kevin:
  qemu-img info: Add cache mode option
  qemu-img info: Optionally show block limits
  block: Expose block limits for images in QMP
  block: Improve comments in BlockLimits
  iotests: add test for resizing a 'file' node below a 'raw' node
  iotests: add test for resizing a node below filters
  block: implement 'resize' callback for child_of_bds class
  block: make bdrv_co_parent_cb_resize() a proper IO API function
  include/block/block_int-common: document when resize callback is used
  MAINTAINERS: Mark VHDX block driver as "Odd Fixes"
  block: enable stats-intervals for storage devices
  iotests: Adjust fuse-allow-other expected output
  iotests: Adjust nbd expected outputs to match current behavior
  block/curl.c: Fix CURLOPT_VERBOSE parameter type
  block/monitor: Use hmp_handle_error to report error
  block: fix luks 'amend' when run in coroutine
  block: remove 'detached-header' option from opts after use
  tests/qemu-iotests: Mark the 'inactive-node-nbd' as unsupported with -luks

Signed-off-by: Richard Henderson <[email protected]>


  Commit: 12688b0037da8185a45b31742220cd4263046044
      
https://github.com/qemu/qemu/commit/12688b0037da8185a45b31742220cd4263046044
  Author: Richard Henderson <[email protected]>
  Date:   2025-10-30 (Thu, 30 Oct 2025)

  Changed paths:
    M target/microblaze/cpu.h
    M target/microblaze/op_helper.c
    M target/microblaze/translate.c

  Log Message:
  -----------
  Merge tag 'edgar/xilinx-queue-2025-10-29.for-upstream' of 
https://gitlab.com/edgar.iglesias/qemu into staging

Xilinx queue

# -----BEGIN PGP SIGNATURE-----
#
# iQEzBAABCgAdFiEErET+3BT38evtv0FRKcWWeA9ryoMFAmkCDzgACgkQKcWWeA9r
# yoMxwAf/YRf8aNwn8+4MRAn5vuNI/Hyh75/Mu5m007fqU/gLEZxxzJQ0Jxrc5Oot
# tNqGBGnVsRmH7i7Kkn+Ch4GOozIEJkXmqeQ3brmCg1VvSgi2vtqvS9F3SK8U3I6j
# pavSC04KOtu33jlN63ObU+aAD/o5gLVwl2wAk+w0SWnnN4IhvPOilO7+ZeF5Lueh
# GH57sh9DRnMYJl4mOj5z5NDsgZhdnmjpvAkvWBI9cQ7uwhGXLk0lCu0+lJ25tr3T
# NAg6N4S94rCm0eaMKL79BHPuG59G3A5G8SOjn6pXkT2aYaaeHpqu2DcuFJsSsVxV
# 4CTignh5SVwICueFF4Z3RF5iZGHIDw==
# =ua+I
# -----END PGP SIGNATURE-----
# gpg: Signature made Wed 29 Oct 2025 01:57:28 PM CET
# gpg:                using RSA key AC44FEDC14F7F1EBEDBF415129C596780F6BCA83
# gpg: Good signature from "Edgar E. Iglesias (Xilinx key) 
<[email protected]>" [unknown]
# gpg:                 aka "Edgar E. Iglesias <[email protected]>" 
[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: AC44 FEDC 14F7 F1EB EDBF  4151 29C5 9678 0F6B CA83

* tag 'edgar/xilinx-queue-2025-10-29.for-upstream' of 
https://gitlab.com/edgar.iglesias/qemu:
  target/microblaze: Handle signed division overflows
  target/microblaze: div: Break out raise_divzero()
  target/microblaze: Remove unused arg from check_divz()

Signed-off-by: Richard Henderson <[email protected]>


  Commit: 4889d9666076d8164171d1208ffb8b2be10463f6
      
https://github.com/qemu/qemu/commit/4889d9666076d8164171d1208ffb8b2be10463f6
  Author: Richard Henderson <[email protected]>
  Date:   2025-10-30 (Thu, 30 Oct 2025)

  Changed paths:
    M .gitlab-ci.d/custom-runners/ubuntu-24.04-aarch64.yml
    M configs/devices/aarch64-softmmu/minimal.mak
    M contrib/plugins/meson.build
    A contrib/plugins/traps.c
    M docs/about/emulation.rst
    M docs/devel/testing/ci-jobs.rst.inc
    M gdbstub/syscalls.c
    M include/qemu/plugin-event.h
    M include/qemu/plugin.h
    M include/qemu/qemu-plugin.h
    M plugins/core.c
    M plugins/loader.c
    A scripts/ci/setup/build-environment.yml
    A scripts/ci/setup/debian/debian-13-ppc64le.yaml
    M scripts/ci/setup/gitlab-runner.yml
    R scripts/ci/setup/ubuntu/build-environment.yml
    M scripts/ci/setup/ubuntu/ubuntu-2404-aarch64.yaml
    M scripts/ci/setup/ubuntu/ubuntu-2404-s390x.yaml
    M semihosting/arm-compat-semi.c
    M target/alpha/helper.c
    M target/arm/helper.c
    M target/arm/internals.h
    M target/arm/tcg/m_helper.c
    M target/avr/helper.c
    M target/hppa/int_helper.c
    M target/i386/tcg/excp_helper.c
    M target/i386/tcg/seg_helper.c
    M target/loongarch/tcg/tcg_cpu.c
    M target/m68k/op_helper.c
    M target/microblaze/helper.c
    M target/mips/tcg/system/tlb_helper.c
    M target/openrisc/interrupt.c
    M target/ppc/excp_helper.c
    M target/riscv/cpu_helper.c
    M target/rx/helper.c
    M target/s390x/tcg/excp_helper.c
    M target/sh4/helper.c
    M target/sparc/int32_helper.c
    M target/sparc/int64_helper.c
    M target/tricore/op_helper.c
    M target/xtensa/exc_helper.c
    M target/xtensa/xtensa-semi.c
    M tests/lcitool/refresh
    A tests/tcg/plugins/discons.c
    M tests/tcg/plugins/meson.build
    M tests/tcg/riscv64/Makefile.softmmu-target
    A tests/tcg/riscv64/doubletrap.S
    A tests/tcg/riscv64/interruptedmemory.S

  Log Message:
  -----------
  Merge tag 'pull-10.2-maintainer-291025-1' of https://gitlab.com/stsquad/qemu 
into staging

maintainer updates for 10.2

  - clean-up remaining 32 bit armhf bits in ci
  - rationalise build-environment.yml for Debian and Ubuntu
  - generate a Debian ppc64 package list
  - rationalise gitlab-runner.yml for Debian and Ubuntu
  - new TCG plugin feature to track discontinuities
  - add missing CFI annotation to plugin callbacks
  - drop SBSA_REF from minimal Arm build
  - format string fix for gdbstub syscall response
  - simplify the gdbstub flen handling for semihosting

# -----BEGIN PGP SIGNATURE-----
#
# iQEzBAABCgAdFiEEZoWumedRZ7yvyN81+9DbCVqeKkQFAmkCInQACgkQ+9DbCVqe
# KkSZRwf/ReHIqQMxf8TqthskX8PLGUvsvWMkJptpu0Yc4HyU6DSjdPbU4L0tOmLU
# ss2sb+dZncp1iRxHpqOhPJ+a987RHHzFbz2GQ/nV37D7BTwtq0iID4SxmdfiYOAm
# VVm/WQ0HMjIYY84rzfE6U/3H+FgL+GaPbB0WYa5CtKpMOHMl4gJgoSsxljXQrmYe
# BCC+Z9loVUAnKVVM5BUMP/0Agfn0CUZlUHGEn6RvmNg81dJ5DWCfO9yW1EezLZmc
# PhS/txAWrpTqktPxN4h+um8ILvej5FF8nnNCsxodxD1XZImWsxawxcQAcgQQJGWu
# dFLBMre7QSM1ddIOgdyZt+zuDcpUiA==
# =QEqf
# -----END PGP SIGNATURE-----
# gpg: Signature made Wed 29 Oct 2025 03:19:32 PM CET
# gpg:                using RSA key 6685AE99E75167BCAFC8DF35FBD0DB095A9E2A44
# gpg: Good signature from "Alex Bennée (Master Work Key) 
<[email protected]>" [unknown]
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg:          There is no indication that the signature belongs to the owner.
# Primary key fingerprint: 6685 AE99 E751 67BC AFC8  DF35 FBD0 DB09 5A9E 2A44

* tag 'pull-10.2-maintainer-291025-1' of https://gitlab.com/stsquad/qemu: (35 
commits)
  semihosting: Fix GDB File-I/O FLEN
  gdbstub: Fix %s formatting
  configs: drop SBSA_REF from minimal specification
  plugins/core: add missing QEMU_DISABLE_CFI annotations
  tests: add test with interrupted memory accesses on rv64
  tests: add test for double-traps on rv64
  tests: add plugin asserting correctness of discon event's to_pc
  target/xtensa: call plugin trap callbacks
  target/tricore: call plugin trap callbacks
  target/sparc: call plugin trap callbacks
  target/sh4: call plugin trap callbacks
  target/s390x: call plugin trap callbacks
  target/rx: call plugin trap callbacks
  target/riscv: call plugin trap callbacks
  target/ppc: call plugin trap callbacks
  target/openrisc: call plugin trap callbacks
  target/mips: call plugin trap callbacks
  target/microblaze: call plugin trap callbacks
  target/m68k: call plugin trap callbacks
  target/loongarch: call plugin trap callbacks
  ...

Signed-off-by: Richard Henderson <[email protected]>


  Commit: f179caa0ccf27148a21c9a3ea1469fffd3efe33c
      
https://github.com/qemu/qemu/commit/f179caa0ccf27148a21c9a3ea1469fffd3efe33c
  Author: Richard Henderson <[email protected]>
  Date:   2025-10-30 (Thu, 30 Oct 2025)

  Changed paths:
    M MAINTAINERS
    A configs/targets/aarch64-softmmu.c
    A configs/targets/arm-softmmu.c
    A configs/targets/meson.build
    M hw/arm/aspeed.c
    M hw/arm/aspeed_ast27x0-fc.c
    M hw/arm/b-l475e-iot01a.c
    M hw/arm/bananapi_m2u.c
    M hw/arm/collie.c
    M hw/arm/cubieboard.c
    M hw/arm/digic_boards.c
    M hw/arm/exynos4_boards.c
    M hw/arm/fby35.c
    M hw/arm/highbank.c
    M hw/arm/imx25_pdk.c
    M hw/arm/imx8mp-evk.c
    M hw/arm/integratorcp.c
    M hw/arm/kzm.c
    M hw/arm/mcimx6ul-evk.c
    M hw/arm/mcimx7d-sabre.c
    M hw/arm/meson.build
    M hw/arm/microbit.c
    M hw/arm/mps2-tz.c
    M hw/arm/mps2.c
    M hw/arm/mps3r.c
    M hw/arm/msf2-som.c
    M hw/arm/musca.c
    M hw/arm/musicpal.c
    M hw/arm/netduino2.c
    M hw/arm/netduinoplus2.c
    M hw/arm/npcm7xx_boards.c
    M hw/arm/npcm8xx_boards.c
    M hw/arm/olimex-stm32-h405.c
    M hw/arm/omap_sx1.c
    M hw/arm/orangepi.c
    M hw/arm/raspi.c
    M hw/arm/raspi4b.c
    M hw/arm/realview.c
    M hw/arm/sabrelite.c
    M hw/arm/sbsa-ref.c
    M hw/arm/stellaris.c
    M hw/arm/stm32vldiscovery.c
    M hw/arm/versatilepb.c
    M hw/arm/vexpress.c
    M hw/arm/virt-acpi-build.c
    M hw/arm/virt.c
    M hw/arm/xilinx_zynq.c
    M hw/arm/xlnx-versal-virt.c
    M hw/arm/xlnx-zcu102.c
    M hw/core/null-machine.c
    M hw/riscv/riscv-iommu.c
    M hw/riscv/riscv_hart.c
    M hw/xen/meson.build
    M hw/xen/xen-hvm-common.c
    A include/hw/arm/machines-qom.h
    M include/qemu/target-info.h
    M meson.build
    A target-info-qom.c
    M target-info.c
    M target/arm/machine.c

  Log Message:
  -----------
  Merge tag 'single-binary-20251029' of https://github.com/philmd/qemu into 
staging

Various patches related to single binary work:

- Make hw/arm/ common by adding a QOM type to machines to
  tag in which binary (32 or 64-bit) they can be used.
  Convert the Virt and SBSA-Ref machines.
- Build Xen files once

# -----BEGIN PGP SIGNATURE-----
#
# iQIzBAABCAAdFiEE+qvnXhKRciHc/Wuy4+MsLN6twN4FAmkDIEIACgkQ4+MsLN6t
# wN6SFw/+P89LkHUi82Ov26K0iTUVK34odMBbLrAEs5PAUb8iNz6Gdc6VKUl+X65T
# GdlBdlZ+PV1YdyiHV1pLAFCtxNNgFo7qrYX2vjoJ2VwSn8cGggyKGfAzrPQ/o6Dh
# fVFoQoU+qJ/Zp2HI6JwCHscmU6/qSa+fesw4bVRGQYbkeCzMw1Vv2IGVsRyv6xxc
# ocqZ6di4Mr2kCyVrLVynJGQcDzmqj7VkcFERRmPQX2bXP5v/kojv5ZKYRjesn7uv
# GM5QvDiV5ndD1/FfAAk1sS3W1dXgd6jcDBrNsMswLb3uPDE90giRa45MIpfMyOUM
# AfEqq+Fz8LhbGDzT0IMlR4ipBI1/FPuGRZh/Y7Z6eqdcZ68aSkOLlaoTi9U+ITmY
# EoBZ9/N4Vf5/fwsPIXLbp1DySmtst3K5GYzJFdM927nlxgNHrCvnkv9b6HvEd1+J
# NJAmk3yjhzo0cZgeY9sAaV5eRO1Nuv8UESClPrM7GONfUdnMUxM5VaZ0y080VaG1
# s/rMIPXbulKgbBDtVByZjJccAWjQ6Gce5nK+GC3Ded3nuwGaTDn+rAQ6VKHChj54
# 4CHaZrFVG8Q5VEsTwUZgLYevXuw1twkyXpbZmBgYoWT9MwqH/SsvTuQ6RoZI1Bfl
# mD9IwfySJFHDOSD2oFc3wXEVp+E3HzDjyrSSOP2g+jDQ4DcsORU=
# =/1/Q
# -----END PGP SIGNATURE-----
# gpg: Signature made Thu 30 Oct 2025 09:22:26 AM CET
# gpg:                using RSA key FAABE75E12917221DCFD6BB2E3E32C2CDEADC0DE
# gpg: Good signature from "Philippe Mathieu-Daudé (F4BUG) <[email protected]>" 
[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: FAAB E75E 1291 7221 DCFD  6BB2 E3E3 2C2C DEAD C0DE

* tag 'single-binary-20251029' of https://github.com/philmd/qemu: (23 commits)
  hw/riscv: Replace target_ulong uses
  hw/xen: Build only once
  hw/xen: Replace target_ulong by agnostic target_long_bits()
  hw/xen: Use BITS_PER_BYTE & MAKE_64BIT_MASK() in req_size_bits()
  hw/arm/meson: Move Xen files to arm_common_ss[]
  hw/arm/virt: Build only once
  hw/arm/virt-acpi-build: Build only once
  hw/arm/virt-acpi-build: Include missing 'cpu.h' header
  hw/arm/sbsa-ref: Build only once
  hw/arm/sbsa-ref: Include missing 'cpu.h' header
  hw/arm/virt: Get default CPU type at runtime
  hw/arm/virt: Replace TARGET_AARCH64 -> target_aarch64()
  qemu/target_info: Add target_base_arm() helper
  qemu/target_info: Add target_aarch64() helper
  qemu/target_info: Add target_arm() helper
  hw/arm/virt: Check accelerator availability at runtime
  hw/arm/virt: Register valid CPU types dynamically
  config/target: Implement per-binary TargetInfo structure (ARM, AARCH64)
  meson: Prepare to accept per-binary TargetInfo structure implementation
  hw/arm: Filter machine types for qemu-system-arm/aarch64 binaries
  ...

Signed-off-by: Richard Henderson <[email protected]>


  Commit: fd25348cbd4d9481f34510cb9f235fbed91d8450
      
https://github.com/qemu/qemu/commit/fd25348cbd4d9481f34510cb9f235fbed91d8450
  Author: Richard Henderson <[email protected]>
  Date:   2025-10-30 (Thu, 30 Oct 2025)

  Changed paths:
    M include/standard-headers/linux/ethtool.h
    M include/standard-headers/linux/fuse.h
    M include/standard-headers/linux/input-event-codes.h
    M include/standard-headers/linux/input.h
    M include/standard-headers/linux/pci_regs.h
    M include/standard-headers/linux/virtio_ids.h
    M linux-headers/asm-loongarch/kvm.h
    M linux-headers/asm-riscv/kvm.h
    M linux-headers/asm-riscv/ptrace.h
    M linux-headers/asm-x86/kvm.h
    M linux-headers/asm-x86/unistd_64.h
    M linux-headers/asm-x86/unistd_x32.h
    M linux-headers/linux/kvm.h
    M linux-headers/linux/psp-sev.h
    M linux-headers/linux/stddef.h
    M linux-headers/linux/vduse.h
    M linux-headers/linux/vhost.h
    M target/loongarch/cpu.c
    M target/loongarch/cpu.h
    M target/loongarch/kvm/kvm.c

  Log Message:
  -----------
  Merge tag 'pull-loongarch-20251030' of https://github.com/bibo-mao/qemu into 
staging

loongarch queue

# -----BEGIN PGP SIGNATURE-----
#
# iHUEABYKAB0WIQQNhkKjomWfgLCz0aQfewwSUazn0QUCaQLPjQAKCRAfewwSUazn
# 0c6EAP4wnAifbVCAMLxvMXtacIO7LomcdGDxXtwSh8l7GXvCtwD9E8MvJhrb7gMb
# tty5M+P2eIzOafaRHscarWLrnI01mAY=
# =zfDK
# -----END PGP SIGNATURE-----
# gpg: Signature made Thu 30 Oct 2025 03:38:05 AM CET
# gpg:                using EDDSA key 0D8642A3A2659F80B0B3D1A41F7B0C1251ACE7D1
# gpg: Good signature from "bibo mao <[email protected]>" [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: 7044 3A00 19C0 E97A 31C7  13C4 8E86 8FB7 A176 9D4C
#      Subkey fingerprint: 0D86 42A3 A265 9F80 B0B3  D1A4 1F7B 0C12 51AC E7D1

* tag 'pull-loongarch-20251030' of https://github.com/bibo-mao/qemu:
  target/loongarch: Add PTW feature support in KVM mode
  linux-headers: Update to Linux v6.18-rc3

Signed-off-by: Richard Henderson <[email protected]>


  Commit: 69e329958ce30daa73bdc21513ac1135485d4b42
      
https://github.com/qemu/qemu/commit/69e329958ce30daa73bdc21513ac1135485d4b42
  Author: Richard Henderson <[email protected]>
  Date:   2025-10-30 (Thu, 30 Oct 2025)

  Changed paths:
    M backends/spdm-socket.c
    M docs/specs/spdm.rst
    M hw/nvme/ctrl.c
    M hw/nvme/ns.c
    M hw/nvme/nvme.h
    M include/block/nvme.h
    M include/hw/pci/pci_device.h
    M include/system/spdm-socket.h

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

nvme queue

# -----BEGIN PGP SIGNATURE-----
#
# iQEzBAABCgAdFiEEUigzqnXi3OaiR2bATeGvMW1PDekFAmkDE7gACgkQTeGvMW1P
# DekCOwgAuOQKWWW/UA1MmZ4ZHs+djf4q5UDwqGDx8tra8d32mZWRHgpJ/OBBOY2z
# CmuHqWLgooAqfx4hsrXELdNBEe7ccNE9nvsE3GjnYWxjoe51yl2Xc0RD5CZBVrN4
# RRMbBZRCewxGShyUaT31eedolWdr4zBuqkpLf9gcG8Yk7YD+xUkHUPeMXeAy+vkS
# pxW59AkXdjJZgBktOdV5uVj9gaCPgTcGaQNH2FYSnzHwdu5VyV8BKiiZE/fXS6FU
# xZvu+5p1Ro5vOdwG+iFBrbBwcGyjVOF1OfBZctyc83foyFxwzxqoqj9gy0ewuT2g
# HsupUiJgbkZ1Ut9fzaS5pHx3dd3dKw==
# =WDrH
# -----END PGP SIGNATURE-----
# gpg: Signature made Thu 30 Oct 2025 08:28:56 AM CET
# gpg:                using RSA key 522833AA75E2DCE6A24766C04DE1AF316D4F0DE9
# gpg: Good signature from "Klaus Jensen <[email protected]>" [unknown]
# gpg:                 aka "Klaus Jensen <[email protected]>" [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: DDCA 4D9C 9EF9 31CC 3468  4272 63D5 6FC5 E55D A838
#      Subkey fingerprint: 5228 33AA 75E2 DCE6 A247  66C0 4DE1 AF31 6D4F 0DE9

* tag 'pull-nvme-20251030' of https://gitlab.com/birkelund/qemu:
  hw/nvme: add atomic boundary support
  hw/nvme: enable ns atomic writes
  hw/nvme: connect SPDM over NVMe Security Send/Recv
  spdm: define SPDM transport enum types
  hw/nvme: add NVMe Admin Security SPDM support
  spdm: add spdm storage transport virtual header
  spdm-socket: add seperate send/recv functions

Signed-off-by: Richard Henderson <[email protected]>


Compare: https://github.com/qemu/qemu/compare/e090e0312dc9...69e329958ce3

To unsubscribe from these emails, change your notification settings at 
https://github.com/qemu/qemu/settings/notifications

Reply via email to