Re: [PATCH] hw/misc/aspeed_scu: Handle AST2600 protection key registers correctly

2025-06-11 Thread Cédric Le Goater
On 6/12/25 01:43, Tan Siewert wrote: The AST2600 SCU has two protection key registers (0x00 and 0x10) that both need to be unlocked. Each must be unlocked individually, but locking one will lock both. This commit updates the SCU write logic to reject writes unless both protection key registers a

Re: [PATCH v3 00/23] vfio-user client

2025-06-11 Thread Cédric Le Goater
John, On 6/7/25 02:10, John Levon wrote: The series contains an implement of a vfio-user client in QEMU, along with a few more preparatory patches. The vfio-user protocol allows for implementing (PCI) devices in another userspace process; SPDK is one example, which includes a virtual NVMe imple

Re: [PATCH 00/21] migration: Unify capabilities and parameters

2025-06-11 Thread Mario Casquero
This series has been successfully tested. Boot up two VMs, one in source and the other in destination with -incoming defer. Using the migrate_set_parameter, enable the postcopy-ram, after that check with info migrate_parameters this is correct. (qemu) migrate_set_parameter postcopy-ram on (qemu) i

Re: [PATCH v3 06/23] vfio-user: add vfio-user class and container

2025-06-11 Thread Cédric Le Goater
On 6/7/25 02:10, John Levon wrote: Introduce basic plumbing for vfio-user behind a new --enable-vfio-user-client option. We introduce VFIOUserContainer in hw/vfio-user/container.c, which is a container type for the "IOMMU" type "vfio-iommu-user", and share some common container code from hw/vfio

Re: [RFC PATCH v1] hw/vfio/ap: attribute constructor for cfg_chg_events_lock

2025-06-11 Thread Cédric Le Goater
On 6/11/25 23:12, Rorie Reyes wrote: Created an attribute constructor for cfg_chg_events_lock for locking mechanism when storing event information for an AP configuration change event Fixes: fd03360215 ("Storing event information for an AP configuration change event") Signed-off-by: Rorie Reyes

Re: [PATCH 0/5] DTB build housekeeping

2025-06-11 Thread Paolo Bonzini
On 6/10/25 22:41, Bernhard Beschow wrote: This series removes the bundled device tree blobs from the repository which are redundant to the bundled device tree sources. To make this work, the device tree compiler 'dtc' is now required for the boards which rely on these device trees. Building these

Re: [PATCH 4/5] configure: Add dtc option

2025-06-11 Thread Paolo Bonzini
On 6/12/25 07:12, Paolo Bonzini wrote: I'll send a patch to the upstream dtc project and you can add it to QEMU via diff_files (see commit 64644bc4eab2f for an example). This is the patch, backported to QEMU's version of the dtc subproject: diff --git a/libfdt/meson.build b/libfdt/meson.build i

Re: Re: [PATCH qemu v7 1/1] target/riscv: Add Zilsd and Zclsd extension support

2025-06-11 Thread Alistair Francis
On Wed, Jun 11, 2025 at 5:10 PM 刘旭 wrote: > > Thanks for your reply. > > However, regarding the issue of register restrictions, since I continued to > use the format in the basic C extension in insn16.deocode, I think the > register range has thus been compatible with `!function=ex_rvc_register

Re: [PATCH 4/5] configure: Add dtc option

2025-06-11 Thread Paolo Bonzini
On 6/11/25 13:45, BALATON Zoltan wrote: On Wed, 11 Jun 2025, Daniel P. Berrangé wrote: On Wed, Jun 11, 2025 at 02:37:08AM +0200, BALATON Zoltan wrote: On Tue, 10 Jun 2025, Bernhard Beschow wrote: The next patch will make dtc mandatory for boards with a bundled DTB, causing these boards to be o

Re: [RFC PATCH v1] hw/vfio/ap: attribute constructor for cfg_chg_events_lock

2025-06-11 Thread Thomas Huth
On 11/06/2025 23.12, Rorie Reyes wrote: Created an attribute constructor for cfg_chg_events_lock for locking mechanism when storing event information for an AP configuration change event Fixes: fd03360215 ("Storing event information for an AP configuration change event") Signed-off-by: Rorie Re

Re: [PULL 0/2] Seabios 1.17.0 20250611 patches

2025-06-11 Thread Thomas Huth
gitlab.com/stsquad/qemu into staging (2025-06-07 15:08:55 -0400) are available in the Git repository at: https://gitlab.com/kraxel/qemu.git tags/seabios-1.17.0-20250611-pull-request for you to fetch changes up to cba36cf3881e907553ba2de38abd5edf7f952de1: seabios: update binaries to 1.17.

Re: [PATCH v2 00/12] hw/riscv/virt: device tree reg cleanups

2025-06-11 Thread Alistair Francis
On Wed, Jun 4, 2025 at 12:58 PM Joel Stanley wrote: > > v2: > - Rebased on master now that Daniel's changes are merged > - Fixed doubled up patch 1 > - r-b tags from Alistair and Daniel added > > This is a set of cleanups for the riscv virt machine device tree > generation. > > Using dumpdtb th

Re: [PATCH v12 0/7] Add additional plugin API functions to read and write memory and registers

2025-06-11 Thread Rowan Hart
I forgot to mention it in the cover letter but v12 also addresses Pierrick's comments to clean up the patch plug-in. Thanks for the feedback!

[PATCH] hw/misc/aspeed_scu: Handle AST2600 protection key registers correctly

2025-06-11 Thread Tan Siewert
The AST2600 SCU has two protection key registers (0x00 and 0x10) that both need to be unlocked. Each must be unlocked individually, but locking one will lock both. This commit updates the SCU write logic to reject writes unless both protection key registers are unlocked, matching the behaviour of

[PATCH v12 3/7] plugins: Add enforcement of QEMU_PLUGIN_CB flags in register R/W callbacks

2025-06-11 Thread Rowan Hart
This patch adds functionality to enforce the requested QEMU_PLUGIN_CB_ flags level passed when registering a callback function using the plugins API. Each time a callback is about to be invoked, a thread-local variable will be updated with the level that callback requested. Then, called API functio

[PATCH v12 0/7] Add additional plugin API functions to read and write memory and registers

2025-06-11 Thread Rowan Hart
This patch series adds several new API functions focused on enabling use cases around reading and writing guest memory from QEMU plugins. To support these new APIs, some utility functionality around retrieving information about address spaces is added as well. The new qemu_plugin_write_register ut

[PATCH v12 4/7] plugins: Add memory virtual address write API

2025-06-11 Thread Rowan Hart
From: novafacing This patch adds functions to the plugins API to allow reading and writing memory via virtual addresses. These functions only permit doing so on the current CPU, because there is no way to ensure consistency if plugins are allowed to read or write to other CPUs that aren't current

[PATCH v12 2/7] plugins: Add register write API

2025-06-11 Thread Rowan Hart
From: novafacing This patch adds a function to the plugins API to allow plugins to write register contents. It also moves the qemu_plugin_read_register function so all the register-related functions are grouped together in the file. Reviewed-by: Pierrick Bouvier Signed-off-by: Rowan Hart ---

[PATCH v12 6/7] plugins: Add patcher plugin and test

2025-06-11 Thread Rowan Hart
From: novafacing This patch adds a plugin that exercises the virtual and hardware memory read-write API functions added in a previous patch. The plugin takes a target and patch byte sequence, and will overwrite any instruction matching the target byte sequence with the patch. Signed-off-by: Rowa

[PATCH v12 1/7] gdbstub: Expose gdb_write_register function to consumers of gdbstub

2025-06-11 Thread Rowan Hart
From: novafacing This patch exposes the gdb_write_register function from gdbstub/gdbstub.c via the exec/gdbstub.h header file to support use in plugins to write register contents. Reviewed-by: Alex Bennée Reviewed-by: Julian Ganz Reviewed-by: Pierrick Bouvier Signed-off-by: Rowan Hart --- g

[PATCH v12 7/7] plugins: Update plugin version and add notes

2025-06-11 Thread Rowan Hart
From: novafacing This patch updates the plugin version to gate new APIs and adds notes describing what has been added. Reviewed-by: Pierrick Bouvier Signed-off-by: Rowan Hart --- include/qemu/qemu-plugin.h | 9 - 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/include/qem

[PATCH v12 5/7] plugins: Add memory hardware address read/write API

2025-06-11 Thread Rowan Hart
From: novafacing This patch adds functions to the plugins API to allow plugins to read and write memory via hardware addresses. The functions use the current address space of the current CPU in order to avoid exposing address space information to users. A later patch may want to add a function to

Re: [PATCH v11 7/8] plugins: Add hypercalls plugin and test

2025-06-11 Thread Rowan Hart
Signed-off-by: Rowan Hart ---   tests/tcg/Makefile.target |   1 +   tests/tcg/plugins/hypercalls.c    | 547 ++   tests/tcg/plugins/meson.build |   2 +-   tests/tcg/x86_64/Makefile.softmmu-target  |   6 +-   tests/tcg/x86_64/syste

Re: [PULL 1/1] meson: fix Windows build

2025-06-11 Thread BALATON Zoltan
On Wed, 11 Jun 2025, Stefan Hajnoczi wrote: On Wed, Jun 11, 2025 at 3:25 PM BALATON Zoltan wrote: On Wed, 11 Jun 2025, Stefan Hajnoczi wrote: From: oltolm Sorry, I forgot to cc the maintainers. Do we want comments like this end up in git log? This could have been fixed before a pull. Also

Re: [PATCH v2 00/11] migration: Some enhancements and cleanups for 10.1

2025-06-11 Thread Peter Xu
On Mon, Jun 09, 2025 at 12:18:44PM -0400, Peter Xu wrote: > v2: > - Collected R-bs > - Avoid using "\b" in HMP dumps [Markus, Dave] > > The series is based on a small patch from Yanfei Xu here: > > Based-on: <20250514115827.3216082-1-yanfei...@bytedance.com> > https://lore.kernel.org/r/2025051411

Request for QEMU Wiki Account

2025-06-11 Thread Sean Wei
Hi QEMU Maintainers, I'm new to the QEMU community. While going through the wiki to get started, I noticed a few issues and I'd like to help correct: - Some links point to documents that have been renamed or removed. - Commit IDs and filenames could be hyperlinked. - Some sub-pages might benefit

[PULL 13/31] hw/audio/via-ac97: skip automatic zero-init of large array

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'out_cb' method has a 4k byte array used for copying data between the audio backend and device. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'tmpbuf' array will be fully initialized when reading data from d

[RFC PATCH v1] hw/vfio/ap: attribute constructor for cfg_chg_events_lock

2025-06-11 Thread Rorie Reyes
Created an attribute constructor for cfg_chg_events_lock for locking mechanism when storing event information for an AP configuration change event Fixes: fd03360215 ("Storing event information for an AP configuration change event") Signed-off-by: Rorie Reyes --- hw/vfio/ap.c | 12 +---

Re: [PATCH v3 2/2] migration: Support fd-based socket address in cpr_transfer_input

2025-06-11 Thread JAEHOON KIM
On 6/11/2025 7:28 AM, Steven Sistare wrote: On 6/10/2025 6:33 PM, Jaehoon Kim wrote: Extend cpr_transfer_input to handle SOCKET_ADDRESS_TYPE_FD alongside SOCKET_ADDRESS_TYPE_UNIX. This change supports the use of pre-listened socket file descriptors for cpr migration channels. This change is p

[PATCH v4 1/2] tests/migration: Setup pre-listened cpr.sock to remove race-condition.

2025-06-11 Thread Jaehoon Kim
When the source VM attempts to connect to the destination VM's Unix domain socket (cpr.sock) during a cpr-transfer test, race conditions can occur if the socket file isn't ready. This can lead to connection failures when running tests. This patch creates and listens on the socket in advance, and p

[PATCH v4 0/2] migration: Support socket fd for CPR and fix

2025-06-11 Thread Jaehoon Kim
Hello, This is v4 of the patch series. Changes since v3: - [Patch 1/2]: Applid review feedback from Steve Sistare - now using '%d' in g_strdup_printf - [Patch 2/2]: No changes; Kept as-is with Reviewed-by from Steve Sistare. Jaehoon Kim (2): tests/migration: Setup pre-listened cpr.sock to

[PATCH v4 2/2] migration: Support fd-based socket address in cpr_transfer_input

2025-06-11 Thread Jaehoon Kim
Extend cpr_transfer_input to handle SOCKET_ADDRESS_TYPE_FD alongside SOCKET_ADDRESS_TYPE_UNIX. This change supports the use of pre-listened socket file descriptors for cpr migration channels. This change is particularly useful in qtest environments, where the socket may be created externally and p

Re: [PATCH RESEND v3] meson: fix Windows build

2025-06-11 Thread Stefan Hajnoczi
On Sat, Jun 07, 2025 at 11:45:04AM +0200, oltolm wrote: > Sorry, I forgot to cc the maintainers. > > The build failed when run on Windows. I replaced calls to Unix programs > like ´cat´, ´sed´ and ´true´ with calls to ´python´. I wrapped calls to > ´os.path.relpath´ in try-except because it can fa

Re: [PATCH 1/2] qemu/timer: introduce time dilation factor

2025-06-11 Thread Paolo Bonzini
Il mer 11 giu 2025, 20:55 Pierrick Bouvier ha scritto: > > 1) different clocks have different starts, so the clock_start must be > > stored per clock type > > > > I was not sure if several clocks are used, so I'll simply use static in > concerned functions. > Ok. The cycles counter is also prob

Re: [PATCH v11 6/8] plugins: Add patcher plugin and test

2025-06-11 Thread Pierrick Bouvier
On 6/9/25 12:38 PM, Rowan Hart wrote: From: novafacing This patch adds a plugin that exercises the virtual and hardware memory read-write API functions added in a previous patch. The plugin takes a target and patch byte sequence, and will overwrite any instruction matching the target byte seque

Re: [PULL 1/1] meson: fix Windows build

2025-06-11 Thread BALATON Zoltan
On Wed, 11 Jun 2025, Stefan Hajnoczi wrote: From: oltolm Sorry, I forgot to cc the maintainers. Do we want comments like this end up in git log? This could have been fixed before a pull. Also the other pull request about uninitialised stack variables had hw/audio/gus twice which was pointed

[PULL 24/31] hw/ppc/pnv_occ: skip automatic zero-init of large struct

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'occ_model_tick' method has a 12k struct used for copying data between guest and host. Skip the automatic zero-init of this struct to eliminate the performance overhead in the I/O hot path. The 'dynamic_data' buffer will be fully initialized when reading data from th

Re: [PATCH v11 7/8] plugins: Add hypercalls plugin and test

2025-06-11 Thread Pierrick Bouvier
On 6/9/25 12:38 PM, Rowan Hart wrote: From: novafacing This patch adds a plugin that implements a simple form of hypercalls from guest code to the plugin by using the register read API. It accepts only one hypercall, which writes a magic value to guest memory. Signed-off-by: Rowan Hart ---

[PULL 14/31] hw/char/sclpconsole-lm: skip automatic zero-init of large array

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'process_mdb' method has a 4k byte array used for copying data between the guest and the chardev backend. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'buffer' array will be selectively initialized when dat

Re: [PULL 1/1] meson: fix Windows build

2025-06-11 Thread Stefan Hajnoczi
On Wed, Jun 11, 2025 at 3:25 PM BALATON Zoltan wrote: > > On Wed, 11 Jun 2025, Stefan Hajnoczi wrote: > > From: oltolm > > > > Sorry, I forgot to cc the maintainers. > > Do we want comments like this end up in git log? This could have been > fixed before a pull. Also the other pull request about

Re: [PULL 0/2] Seabios 1.17.0 20250611 patches

2025-06-11 Thread Stefan Hajnoczi
s://gitlab.com/stsquad/qemu into staging (2025-06-07 15:08:55 -0400) > > > > are available in the Git repository at: > > > >https://gitlab.com/kraxel/qemu.git > > tags/seabios-1.17.0-20250611-pull-request > > > > for you to fetch changes up to cba36cf3881e90

Re: [PULL 00/24] Misc HW patches for 2025-06-10

2025-06-11 Thread Stefan Hajnoczi
Applied, thanks. Please update the changelog at https://wiki.qemu.org/ChangeLog/10.1 for any user-visible changes. signature.asc Description: PGP signature

[PULL 09/31] hw/audio/es1370: skip automatic zero-init of large array

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'es1370_transfer_audio' method has a 4k byte array used for copying data between the audio backend and device. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'tmpbuf' array will be fully initialized when read

Re: [PULL 00/10] Misc patches (functional tests, travis.yml, MAINTAINERS, ...)

2025-06-11 Thread Stefan Hajnoczi
Applied, thanks. Please update the changelog at https://wiki.qemu.org/ChangeLog/10.1 for any user-visible changes. signature.asc Description: PGP signature

[PULL 21/31] hw/net/virtio-net: skip automatic zero-init of large arrays

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'virtio_net_receive_rcu' method has three arrays with VIRTQUEUE_MAX_SIZE elements, which are apprixmately 32k in size used for copying data between guest and host. Skip the automatic zero-init of these arrays to eliminate the performance overhead in the I/O hot path.

[PULL 02/31] hw/virtio/virtio: avoid cost of -ftrivial-auto-var-init in hot path

2025-06-11 Thread Stefan Hajnoczi
Since commit 7ff9ff039380 ("meson: mitigate against use of uninitialize stack for exploits") the -ftrivial-auto-var-init=zero compiler option is used to zero local variables. While this reduces security risks associated with uninitialized stack data, it introduced a measurable bottleneck in the vir

Re: [PATCH v11 3/8] plugins: Add enforcement of QEMU_PLUGIN_CB flags in register R/W callbacks

2025-06-11 Thread Pierrick Bouvier
On 6/9/25 12:38 PM, Rowan Hart wrote: This patch adds functionality to enforce the requested QEMU_PLUGIN_CB_ flags level passed when registering a callback function using the plugins API. Each time a callback is about to be invoked, a thread-local variable will be updated with the level that call

[PULL 15/31] hw/dma/xlnx_csu_dma: skip automatic zero-init of large array

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'xlnx_csu_dma_src_notify' method has a 4k byte array used for copying DMA data. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'buf' array will be fully initialized when data is copied. Signed-off-by: Daniel

[PULL 07/31] hw/audio/ac97: skip automatic zero-init of large arrays

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'read_audio' & 'write_audio' methods have a 4k byte array used for copying data between the audio backend and device. Skip the automatic zero-init of these arrays to eliminate the performance overhead in the I/O hot path. The 'tmpbuf' array will be fully initialized

[PULL 23/31] hw/nvme/ctrl: skip automatic zero-init of large arrays

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'nvme_map_sgl' method has a 256 element array used for copying data from the device. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'segment' array will be fully initialized when reading data from the device.

[PULL 0/1] Tracing patches

2025-06-11 Thread Stefan Hajnoczi
The following changes since commit bc98ffdc7577e55ab8373c579c28fe24d600c40f: Merge tag 'pull-10.1-maintainer-may-2025-070625-1' of https://gitlab.com/stsquad/qemu into staging (2025-06-07 15:08:55 -0400) are available in the Git repository at: https://gitlab.com/stefanha/qemu.git tags/traci

[PULL 05/31] chardev/char-pty: skip automatic zero-init of large array

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'pty_chr_read' method has a 4k byte array used for copying data between the PTY and device. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'buf' array will be fully initialized when reading data off the PTY.

[PULL 16/31] hw/display/vmware_vga: skip automatic zero-init of large struct

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'vmsvga_fifo_run' method has a struct which is a little over 20k in size, used for holding image data for cursor changes. Skip the automatic zero-init of this struct to eliminate the performance overhead in the I/O hot path. The cursor variable will be fully initiali

[PULL 29/31] hw/ufs/lu: skip automatic zero-init of large array

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'ufs_emulate_scsi_cmd' method has a 4k byte array used for copying data from the device. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'outbuf' array will be fully initialized when data is copied from the gu

[PULL 04/31] chardev/char-fd: skip automatic zero-init of large array

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'fd_chr_read' method has a 4k byte array used for copying data between the socket and device. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'buf' array will be fully initialized when reading data off the net

[PULL 06/31] chardev/char-socket: skip automatic zero-init of large array

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'tcp_chr_read' method has a 4k byte array used for copying data between the socket and device. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'buf' array will be fully initialized when reading data off the ne

[PULL 20/31] hw/net/tulip: skip automatic zero-init of large array

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'tulip_setup_frame' method has a 4k byte array used for copynig DMA data from the device. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'buf' array will be fully initialized when reading data from the device

[PULL 30/31] net/socket: skip automatic zero-init of large array

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'net_socket_send' method has a 68k byte array used for copying data between guest and host. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'buf1' array will be fully initialized when reading data off the netw

Re: [PATCH v11 8/8] plugins: Update plugin version and add notes

2025-06-11 Thread Pierrick Bouvier
On 6/9/25 12:38 PM, Rowan Hart wrote: From: novafacing This patch updates the plugin version to gate new APIs and adds notes describing what has been added. Signed-off-by: Rowan Hart --- include/qemu/qemu-plugin.h | 9 - 1 file changed, 8 insertions(+), 1 deletion(-) Reviewed-by:

[PULL 00/31] Block patches

2025-06-11 Thread Stefan Hajnoczi
The following changes since commit bc98ffdc7577e55ab8373c579c28fe24d600c40f: Merge tag 'pull-10.1-maintainer-may-2025-070625-1' of https://gitlab.com/stsquad/qemu into staging (2025-06-07 15:08:55 -0400) are available in the Git repository at: https://gitlab.com/stefanha/qemu.git tags/block

Re: [PATCH 1/2] qemu/timer: introduce time dilation factor

2025-06-11 Thread Pierrick Bouvier
On 6/11/25 12:22 AM, Paolo Bonzini wrote: Il mar 10 giu 2025, 23:28 Pierrick Bouvier > ha scritto: This factor is applied to time spent since we read clock for the first time. It impacts value returned by get_clock() and get_clock_realtime(). Soun

[PULL 22/31] hw/net/xgamc: skip automatic zero-init of large array

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'xgmac_enet_send' method has a 8k byte array used for copying data between guest and host. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'frame' buffer will be fully initialized when reading guest memory to

[PULL 01/31] include/qemu/compiler: add QEMU_UNINITIALIZED attribute macro

2025-06-11 Thread Stefan Hajnoczi
The QEMU_UNINITIALIZED macro is to be used to skip the default compiler variable initialization done by -ftrivial-auto-var-init=zero. Use this in cases where there a method in the device I/O path (or other important hot paths), that has large variables on the stack. A rule of thumb is that "large"

[PULL 18/31] hw/misc/aspeed_hace: skip automatic zero-init of large array

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'do_hash_operation' method has a 256 element iovec array used for holding pointers to data that is to be hashed. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'iovec' array will be selectively initialized ba

Re: [PATCH 00/31] Skip automatic zero-init of large arrays / structs in I/O paths

2025-06-11 Thread Stefan Hajnoczi
On Tue, Jun 10, 2025 at 01:36:38PM +0100, Daniel P. Berrangé wrote: > This series is an extension of Stefan's proposal: > > https://lists.nongnu.org/archive/html/qemu-devel/2025-06/msg00736.html > > It used '-Wframe-larger-than=4096' to identify all code locations > with more than 4k on the sta

[PULL 19/31] hw/net/rtl8139: skip automatic zero-init of large array

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'rtl8139_transmit_one' method has a 8k byte array used for copying data between guest and host. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'txbuffer' will be fully initialized when reading PCI DMA buffers

[PULL 08/31] hw/audio/cs4231a: skip automatic zero-init of large arrays

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'cs_write_audio' method has a pair of byte arrays, one 4k in size and one 8k, which are used in converting audio samples. Skip the automatic zero-init of these arrays to eliminate the performance overhead in the I/O hot path. The 'tmpbuf' array will be fully initiali

Re: [PULL 0/2] Seabios 1.17.0 20250611 patches

2025-06-11 Thread Stefan Hajnoczi
Merge tag 'pull-10.1-maintainer-may-2025-070625-1' of > > https://gitlab.com/stsquad/qemu into staging (2025-06-07 15:08:55 -0400) > > > > are available in the Git repository at: > > > > https://gitlab.com/kraxel/qemu.git > > tags/seabios-1.17.0-20

[PULL 10/31] hw/audio/gus: skip automatic zero-init of large array

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'GUS_read_DMA' method has a 4k byte array used for copying data between the audio backend and device. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'tmpbuf' array will be fully initialized when reading data

Re: [PULL 0/7] loongarch-to-apply queue

2025-06-11 Thread Stefan Hajnoczi
Applied, thanks. Please update the changelog at https://wiki.qemu.org/ChangeLog/10.1 for any user-visible changes. signature.asc Description: PGP signature

[PULL 31/31] net/stream: skip automatic zero-init of large array

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'net_stream_send' method has a 68k byte array used for copying data between guest and host. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'buf1' array will be fully initialized when reading data off the netw

Re: [PATCH 0/4] Docs: bump sphinx version to 6.2.1

2025-06-11 Thread John Snow
On Fri, Jun 6, 2025 at 4:50 PM John Snow wrote: > This is a re-send of Akihiko Odaki's series, rebased and altered to cope > with the new QAPI static analysis tests now running on GitLab CI. > > Changes in this "v1": > > - Update python static analysis testing configuration to work with the >

[PULL 26/31] hw/usb/hcd-ohci: skip automatic zero-init of large array

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'ohci_service_iso_td' method has a 8k byte array used for copying data between guest and host. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'buf' array will be fully initialized when reading data from guest

[PULL 12/31] hw/audio/sb16: skip automatic zero-init of large array

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'write_audio' method has a 4k byte array used for copying data between the audio backend and device. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'tmpbuf' array will be fully initialized when reading data f

[PULL 27/31] hw/scsi/lsi53c895a: skip automatic zero-init of large array

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'lsi_memcpy' method has a 4k byte array used for copying data to/from the device. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'buf' array will be fully initialized when data is copied. Signed-off-by: Dani

Re: [PULL 00/27] vfio queue

2025-06-11 Thread Stefan Hajnoczi
Applied, thanks. Please update the changelog at https://wiki.qemu.org/ChangeLog/10.1 for any user-visible changes. signature.asc Description: PGP signature

Re: [PULL 0/2] Seabios 1.17.0 20250611 patches

2025-06-11 Thread Thomas Huth
ository at: https://gitlab.com/kraxel/qemu.git tags/seabios-1.17.0-20250611-pull-request for you to fetch changes up to cba36cf3881e907553ba2de38abd5edf7f952de1: seabios: update binaries to 1.17.0 (2025-06-11 09:45:00 +0200) seabi

[PULL 17/31] hw/hyperv/syndbg: skip automatic zero-init of large array

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'handle_recv_msg' method has a 4k byte array used for copying data between the network socket and guest memory. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'data_buf' array will be fully initialized when d

[PULL 25/31] hw/ppc/spapr_tpm_proxy: skip automatic zero-init of large arrays

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'tpm_execute' method has a pair of 4k arrays used for copying data between guest and host. Skip the automatic zero-init of these arrays to eliminate the performance overhead in the I/O hot path. The two arrays will be fully initialized when reading data from guest me

[PULL 11/31] hw/audio/gus: skip automatic zero-init of large array

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'mv88w8618_audio_callback' method has a 4k byte array used for copying data between the audio backend and device. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'buf' array will be fully initialized when read

Re: [PULL 0/2] Seabios 1.17.0 20250611 patches

2025-06-11 Thread Stefan Hajnoczi
Applied, thanks. Please update the changelog at https://wiki.qemu.org/ChangeLog/10.1 for any user-visible changes. signature.asc Description: PGP signature

Re: [PULL 0/2] Seabios 1.17.0 20250611 patches

2025-06-11 Thread Daniel P . Berrangé
ory at: > > https://gitlab.com/kraxel/qemu.git tags/seabios-1.17.0-20250611-pull-request > > for you to fetch changes up to cba36cf3881e907553ba2de38abd5edf7f952de1: > > seabios: update binaries to 1.17.0 (2025-06-11 09:45:00 +0200) > >

[PULL 28/31] hw/scsi/megasas: skip automatic zero-init of large arrays

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'megasas_dcmd_pd_get_list' and 'megasas_dcmd_get_properties' methods have 4k structs used for copying data from the device. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'info' structs are manually initializ

[PULL 03/31] block: skip automatic zero-init of large array in ioq_submit

2025-06-11 Thread Stefan Hajnoczi
From: Daniel P. Berrangé The 'ioq_submit' method has a struct array that is 8k in size. Skip the automatic zero-init of this array to eliminate the performance overhead in the I/O hot path. The 'iocbs' array will selectively initialized when processing the I/O data. Signed-off-by: Daniel P. Ber

[PULL 1/1] meson: fix Windows build

2025-06-11 Thread Stefan Hajnoczi
From: oltolm Sorry, I forgot to cc the maintainers. The build failed when run on Windows. I replaced calls to Unix programs like ´cat´, ´sed´ and ´true´ with calls to ´python´. I wrapped calls to ´os.path.relpath´ in try-except because it can fail when the two paths are on different drives. I ma

[PATCH v13 7/7] Update the ACPI tables based on new aml-build.c

2025-06-11 Thread Alireza Sanaee via
The disassembled differences between actual and expected PPTT based on the following cache topology representation: - l1d and l1i shared at cluster level - l2 shared at cluster level - l3 shared at cluster level /* * Intel ACPI Component Architecture * AML/ASL+ Disassembler version 20230628 (64

Re: [PATCH] target/i386: fix TB exit logic in gen_movl_seg() when writing to SS

2025-06-11 Thread Peter Maydell
On Wed, 11 Jun 2025 at 14:05, Mark Cave-Ayland wrote: > > Before commit e54ef98c8a ("target/i386: do not trigger IRQ shadow for LSS"), > any > write to SS in gen_movl_seg() would cause a TB exit. The changes introduced by > this commit were intended to restrict the DISAS_EOB_INHIBIT_IRQ exit to t

[PATCH v13 6/7] tests/qtest/bios-table-test: testing new ARM ACPI PPTT topology

2025-06-11 Thread Alireza Sanaee via
Test new PPTT topolopy with cache representation. Reviewed-by: Jonathan Cameron Reviewed-by: Zhao Liu Signed-off-by: Alireza Sanaee --- tests/qtest/bios-tables-test.c | 4 1 file changed, 4 insertions(+) diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c index 0

[PATCH v13 4/7] bios-tables-test: prepare to change ARM ACPI virt PPTT

2025-06-11 Thread Alireza Sanaee via
Prepare to update `build_pptt` function to add cache description functionalities, thus add binaries in this patch. Reviewed-by: Zhao Liu Signed-off-by: Alireza Sanaee --- tests/qtest/bios-tables-test-allowed-diff.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tests/qtest/bios-tables-t

[PATCH v13 5/7] hw/acpi: add cache hierarchy to pptt table

2025-06-11 Thread Alireza Sanaee via
Add cache topology to PPTT table. With this patch, both ACPI PPTT table and device tree will represent the same cache topology given users input. Co-developed-by: Jonathan Cameron Signed-off-by: Alireza Sanaee --- hw/acpi/aml-build.c| 229 +++-- hw/arm/vi

[PATCH v13 1/7] target/arm/tcg: increase cache level for cpu=max

2025-06-11 Thread Alireza Sanaee via
This patch addresses cache description in the `aarch64_max_tcg_initfn` function for cpu=max. It introduces three layers of caches and modifies the cache description registers accordingly. Reviewed-by: Jonathan Cameron Signed-off-by: Alireza Sanaee --- target/arm/tcg/cpu64.c | 13 +

[PATCH v13 3/7] hw/arm/virt: add cache hierarchy to device tree

2025-06-11 Thread Alireza Sanaee via
Specify which layer (core/cluster/socket) caches found at in the CPU topology. Updating cache topology to device tree (spec v0.4). Example: Here, 2 sockets (packages), and 2 clusters, 4 cores and 2 threads created, in aggregate 2*2*4*2 logical cores. In the smp-cache object, cores will have l1d an

[PATCH v13 0/7] Specifying cache topology on ARM

2025-06-11 Thread Alireza Sanaee via
Specifying the cache layout in virtual machines is useful for applications and operating systems to fetch accurate information about the cache structure and make appropriate adjustments. Enforcing correct sharing information can lead to better optimizations. Patches that allow for an interface to e

[PATCH v13 2/7] hw/core/machine: topology functions capabilities added

2025-06-11 Thread Alireza Sanaee via
Add two functions one of which finds the lowest level cache defined in the cache description input, and the other checks if caches are defined at a particular level. Signed-off-by: Alireza Sanaee --- hw/core/machine-smp.c | 52 +++ include/hw/boards.h |

[PULL 15/27] vfio/container: restore DMA vaddr

2025-06-11 Thread Cédric Le Goater
From: Steve Sistare In new QEMU, do not register the memory listener at device creation time. Register it later, in the container post_load handler, after all vmstate that may affect regions and mapping boundaries has been loaded. The post_load registration will cause the listener to invoke its

[PULL 18/27] pci: export msix_is_pending

2025-06-11 Thread Cédric Le Goater
From: Steve Sistare Export msix_is_pending for use by cpr. No functional change. Signed-off-by: Steve Sistare Acked-by: Michael S. Tsirkin Link: https://lore.kernel.org/qemu-devel/1749569991-25171-10-git-send-email-steven.sist...@oracle.com Signed-off-by: Cédric Le Goater --- include/hw/pc

[PULL 12/27] vfio/container: register container for cpr

2025-06-11 Thread Cédric Le Goater
From: Steve Sistare Register a legacy container for cpr-transfer, replacing the generic CPR register call with a more specific legacy container register call. Add a blocker if the kernel does not support VFIO_UPDATE_VADDR or VFIO_UNMAP_ALL. This is mostly boiler plate. The fields to to saved a

[PULL 27/27] vfio: improve VFIODeviceIOOps docs

2025-06-11 Thread Cédric Le Goater
From: John Levon Explicitly describe every parameter rather than summarizing. Signed-off-by: John Levon Reviewed-by: Cédric Le Goater Link: https://lore.kernel.org/qemu-devel/20250611104753.1199796-1-john.le...@nutanix.com Signed-off-by: Cédric Le Goater --- include/hw/vfio/vfio-device.h |

[PULL 07/27] vfio: export PCI helpers needed for vfio-user

2025-06-11 Thread Cédric Le Goater
From: John Levon The vfio-user code will need to re-use various parts of the vfio PCI code. Export them in hw/vfio/pci.h, and rename them to the vfio_pci_* namespace. Signed-off-by: John Levon Reviewed-by: Mark Cave-Ayland Reviewed-by: Cédric Le Goater Link: https://lore.kernel.org/qemu-deve

[PULL 19/27] pci: skip reset during cpr

2025-06-11 Thread Cédric Le Goater
From: Steve Sistare Do not reset a vfio-pci device during CPR. Signed-off-by: Steve Sistare Acked-by: Michael S. Tsirkin Link: https://lore.kernel.org/qemu-devel/1749576403-25355-1-git-send-email-steven.sist...@oracle.com Signed-off-by: Cédric Le Goater --- include/hw/pci/pci.h | 2 ++ hw/p

  1   2   3   >