Re: [PATCH v2] target/i386/host-cpu: Use iommu phys_bits with VFIO assigned devices on Intel h/w

2024-01-25 Thread Eric Auger
Hi Vivek, On 1/18/24 20:20, Vivek Kasireddy wrote: > Recent updates in OVMF and Seabios have resulted in MMIO regions > being placed at the upper end of the physical address space. As a > result, when a Host device is assigned to the Guest via VFIO, the > following mapping failures occur when VFIO

Re: [PATCH v3 0/5] hw/arm/aspeed: Check for CPU types in machine_run_board_init()

2024-01-25 Thread Cédric Le Goater
On 1/25/24 06:55, Philippe Mathieu-Daudé wrote: Series fully reviewed. There is not much in the aspeed queue apart from [1]. I will consider sending a PR after a review (Reviewers please ?). Anyhow, if you need this series soon, feel free to take it. Thanks, C. [1] https://lore.kernel.org/q

Re: [PATCH] physmem: replace function name with __func__ in ram_block_discard_range()

2024-01-25 Thread David Hildenbrand
On 25.01.24 06:06, Philippe Mathieu-Daudé wrote: Hi, On 25/1/24 03:33, Xiaoyao Li wrote: Use __func__ to avoid hard-coded function name. Signed-off-by: Xiaoyao Li Reviewed-by: David Hildenbrand --- system/physmem.c | 38 +- 1 file changed, 17 insertio

Re: [PATCH v3 01/21] hw/riscv: Use misa_mxl instead of misa_mxl_max

2024-01-25 Thread Akihiko Odaki
On 2024/01/24 17:16, Andrew Jones wrote: On Wed, Jan 24, 2024 at 12:08:33PM +0900, Akihiko Odaki wrote: On 2024/01/23 17:20, Andrew Jones wrote: On Mon, Jan 22, 2024 at 02:55:50PM +, Alex Bennée wrote: From: Akihiko Odaki The effective MXL value matters when booting. I'd prefer this co

[PULL 0/1] Net patches

2024-01-25 Thread Jason Wang
The following changes since commit 4a4efae44f19528589204581e9e2fab69c5d39aa: Merge tag 'pull-hex-20240121' of https://github.com/quic/qemu into staging (2024-01-23 13:40:45 +) are available in the Git repository at: https://github.com/jasowang/qemu.git net-pull-request for you to fetch

[PULL 1/1] virtio-net: correctly copy vnet header when flushing TX

2024-01-25 Thread Jason Wang
When HASH_REPORT is negotiated, the guest_hdr_len might be larger than the size of the mergeable rx buffer header. Using virtio_net_hdr_mrg_rxbuf during the header swap might lead a stack overflow in this case. Fixing this by using virtio_net_hdr_v1_hash instead. Reported-by: Xiao Lei Cc: Yuri Be

Re: qemu riscv, thead c906, Linux boot regression

2024-01-25 Thread Björn Töpel
Daniel Henrique Barboza writes: > On 1/24/24 16:26, Björn Töpel wrote: >> Daniel Henrique Barboza writes: >> >>> On 1/24/24 09:49, Björn Töpel wrote: Hi! I bumped the RISC-V Linux kernel CI to use qemu 8.2.0, and realized that thead c906 didn't boot anymore. Bisection points

Re: [PATCH 00/88] esp: rework ESP emulation to use a SCSI phase-based state machine

2024-01-25 Thread Thomas Huth
On 12/01/2024 13.52, Mark Cave-Ayland wrote: The ESP SCSI chip fundamentally consists of a FIFO for transferring data to/from the SCSI bus along with a command sequencer which automates various processes such as selection, message/command transfer and data transfer. What makes this chip particul

Re: [PULL 11/33] scsi: only access SCSIDevice->requests from one thread

2024-01-25 Thread Hanna Czenczek
On 24.01.24 22:53, Stefan Hajnoczi wrote: On Wed, Jan 24, 2024 at 01:12:47PM +0100, Hanna Czenczek wrote: On 23.01.24 18:10, Kevin Wolf wrote: Am 23.01.2024 um 17:40 hat Hanna Czenczek geschrieben: On 21.12.23 22:23, Kevin Wolf wrote: From: Stefan Hajnoczi Stop depending on the AioContext lo

Re: qemu riscv, thead c906, Linux boot regression

2024-01-25 Thread LIU Zhiwei
On 2024/1/24 20:49, Björn Töpel wrote: Hi! I bumped the RISC-V Linux kernel CI to use qemu 8.2.0, and realized that thead c906 didn't boot anymore. Bisection points to commit d6a427e2c0b2 ("target/riscv/cpu.c: restrict 'marchid' value") Reverting that commit, or the hack below solves the boot

Re: [PATCH v2 2/8] tests/avocado: Mark x86-64 boot_linux.py TCG tests as long runtime

2024-01-25 Thread Cédric Le Goater
On 1/17/24 15:12, Nicholas Piggin wrote: Re-testing gitlab CI shows the ppc64 and s390x boot_linux tests take 100-150 seconds each. The x86-64 TCG tests take a similar ~100s each, and are the longest-running avocado tests in gitlab. From avocado-system-centos: boot_linux.py:BootLinuxX8664.te

Re: [PATCH] tests/avocado: improve flaky ppc/pnv boot_linux_console.py test

2024-01-25 Thread Cédric Le Goater
On 1/24/24 07:01, Nicholas Piggin wrote: The expected MTD partition detection output does not always appear on the console, despite the test reaching the boot loader and the string appearing in dmesg. Possibly due to an init script that quietens the console output. Using an earlier log message im

Re: [PATCH v2 5/8] tests/avocado: Add ppc pseries and powernv hash MMU tests

2024-01-25 Thread Cédric Le Goater
On 1/17/24 15:12, Nicholas Piggin wrote: POWER CPUs support hash and radix MMU modes. Linux supports running in either mode, but defaults to radix. To keep up testing of QEMU's hash MMU implementation, add some Linux hash boot tests. Signed-off-by: Nicholas Piggin Reviewed-by: Cédric Le Goat

Re: [PATCH v2 6/8] tests/avocado: Add pseries KVM boot_linux test

2024-01-25 Thread Cédric Le Goater
On 1/17/24 15:12, Nicholas Piggin wrote: ppc has no avocado tests for the KVM backend. Add a KVM boot_linux.py test for pseries. Signed-off-by: Nicholas Piggin Reviewed-by: Cédric Le Goater Thanks, C. --- tests/avocado/boot_linux.py | 8 1 file changed, 8 insertions(+) dif

Re: [PATCH 2/2] virtio: Keep notifications disabled during drain

2024-01-25 Thread Fiona Ebner
Am 24.01.24 um 18:38 schrieb Hanna Czenczek: > During drain, we do not care about virtqueue notifications, which is why > we remove the handlers on it. When removing those handlers, whether vq > notifications are enabled or not depends on whether we were in polling > mode or not; if not, they are

Re: [PATCH 1/2] virtio-scsi: Attach event vq notifier with no_poll

2024-01-25 Thread Fiona Ebner
Am 24.01.24 um 18:38 schrieb Hanna Czenczek: > As of commit 38738f7dbbda90fbc161757b7f4be35b52205552 ("virtio-scsi: > don't waste CPU polling the event virtqueue"), we only attach an io_read > notifier for the virtio-scsi event virtqueue instead, and no polling > notifiers. During operation, the e

Re: [PATCH 0/2] i386/cpu: Two minor fixes for x86_cpu_enable_xsave_components()

2024-01-25 Thread Paolo Bonzini
Queued, thanks. Paolo

Re: [PATCH] target/i386: Add support of KVM_FEATURE_ASYNC_PF_VMEXIT for guest

2024-01-25 Thread Paolo Bonzini
Queued, thanks. Paolo

Re: [PATCH] physmem: replace function name with __func__ in ram_block_discard_range()

2024-01-25 Thread Paolo Bonzini
Queued, thanks. Paolo

Re: [PATCH] i386/pc: Drop pc_machine_kvm_type()

2024-01-25 Thread Paolo Bonzini
Queued, thanks. Paolo

Re: [PATCH 1/6] target/ppc: Fix 440 tlbwe TLB invalidation gaps

2024-01-25 Thread Cédric Le Goater
On 1/17/24 16:12, Nicholas Piggin wrote: The 440 software TLB write entry misses several cases that must flush the TCG TLB: - If the new size is smaller than the existing size, the EA no longer covered should be flushed. This looks like an inverted inequality test. - If the TLB PID changes. -

Re: [PATCH 2/6] target/ppc: Factor out 4xx ppcemb_tlb_t flushing

2024-01-25 Thread Cédric Le Goater
On 1/17/24 16:12, Nicholas Piggin wrote: Flushing the TCG TLB pages that cache a software TLB is a common operation, factor it into its own function. Signed-off-by: Nicholas Piggin Acked-by: Cédric Le Goater Thanks, C. --- target/ppc/mmu_helper.c | 24 +--- 1 fil

Re: [PATCH 3/6] target/ppc: 4xx don't flush TLB for a newly written software TLB entry

2024-01-25 Thread Cédric Le Goater
On 1/17/24 16:12, Nicholas Piggin wrote: BookE software TLB is implemented by flushing old translations from the relevant TCG TLB whenever software TLB entries change. This means a new software TLB entry should not have any corresponding cached TCG TLB translations, so there is nothing to flush.

Re: [PATCH 5/6] target/ppc: 440 optimise tlbwe TLB flushing

2024-01-25 Thread Cédric Le Goater
On 1/17/24 16:12, Nicholas Piggin wrote: Have 440 tlbwe flush only the range corresponding to the addresses covered by the software TLB entry being modified rather than the entire TLB. This matches what 4xx does. Signed-off-by: Nicholas Piggin Acked-by: Cédric Le Goater Thanks, C. ---

Re: [PATCH 4/6] target/ppc: 4xx optimise tlbwe_lo TLB flushing

2024-01-25 Thread Cédric Le Goater
On 1/17/24 16:12, Nicholas Piggin wrote: Rather than tlbwe_lo always flushing all TCG TLBs, have it flush just those corresponding to the old software TLB, and only if it was valid. Signed-off-by: Nicholas Piggin Acked-by: Cédric Le Goater Thanks, C. --- target/ppc/mmu_helper.c | 10

Re: [PATCH 6/6] target/ppc: optimise ppcemb_tlb_t flushing

2024-01-25 Thread Cédric Le Goater
On 1/17/24 16:12, Nicholas Piggin wrote: Filter TLB flushing by PID and mmuidx. Zoltan reports that, together with the previous TLB flush changes, performance of a sam460ex machine running lame to convert a wav to mp3 is improved nearly 10%: CPU timeTLB partial flushes T

Re: Do we still need pre-meson compatibility hacks?

2024-01-25 Thread Peter Maydell
On Thu, 25 Jan 2024 at 07:54, Paolo Bonzini wrote: > > Right now configure contains a couple hacks to preserve some of the semantics > of the pre-meson build system: > > 1) emulation of ./configure by creating a build directory and a forwarding > GNUmakefile (requested by Kevin) > > 2) creation

Re: Do we still need pre-meson compatibility hacks?

2024-01-25 Thread Thomas Huth
On 25/01/2024 12.04, Peter Maydell wrote: On Thu, 25 Jan 2024 at 07:54, Paolo Bonzini wrote: Right now configure contains a couple hacks to preserve some of the semantics of the pre-meson build system: 1) emulation of ./configure by creating a build directory and a forwarding GNUmakefile (r

Re: Re: [PATCH v3 01/21] hw/riscv: Use misa_mxl instead of misa_mxl_max

2024-01-25 Thread Andrew Jones
On Thu, Jan 25, 2024 at 05:23:20PM +0900, Akihiko Odaki wrote: > On 2024/01/24 17:16, Andrew Jones wrote: > > On Wed, Jan 24, 2024 at 12:08:33PM +0900, Akihiko Odaki wrote: > > > On 2024/01/23 17:20, Andrew Jones wrote: > > > > On Mon, Jan 22, 2024 at 02:55:50PM +, Alex Bennée wrote: > > > > >

[PATCH v8 3/4] python/qemu/machine: add method to retrieve QEMUMachine::binary field

2024-01-25 Thread Maksim Davydov
Add a supportive property to access the path to the QEMU binary Signed-off-by: Maksim Davydov Reviewed-by: John Snow Reviewed-by: Philippe Mathieu-Daudé --- python/qemu/machine/machine.py | 5 + 1 file changed, 5 insertions(+) diff --git a/python/qemu/machine/machine.py b/python/qemu/mach

[PATCH v8 0/4] compare machine type compat_props

2024-01-25 Thread Maksim Davydov
This script can be used to choose the best machine type in the appropriate cases. Also we have to check compat_props of the old MT after changes to be sure that they haven't broken old the MT. For example, pc_compat_3_1 of pc-q35-3.1 has Icelake-Client which was removed. v8 -> v7: * rebase * fix e

[PATCH v8 2/4] qmp: add dump machine type compatibility properties

2024-01-25 Thread Maksim Davydov
To control that creating new machine type doesn't affect the previous types (their compat_props) and to check complex compat_props inheritance we need qmp command to print machine type compatibility properties. This patch adds the ability to get list of all the compat_props of the corresponding sup

[PATCH v8 1/4] qom: qom-list-properties: add default value

2024-01-25 Thread Maksim Davydov
qmp_qom_list_properties can print default values if they are available as qmp_device_list_properties does, because both of them use the ObjectPropertyInfo structure with default_value field. This can be useful when working with "not device" types (e.g. memory-backend). Signed-off-by: Maksim Davydo

[PATCH v8 4/4] scripts: add script to compare compatibility properties

2024-01-25 Thread Maksim Davydov
This script runs QEMU to obtain compat_props of machines and default values of different types of drivers to produce comparison table. This table can be used to compare machine types to choose the most suitable machine or compare binaries to be sure that migration to the newer version will save all

Re: [PATCH] ppc/pnv: Improve pervasive topology calculation for big-core

2024-01-25 Thread Cédric Le Goater
Hello Caleb, On 1/23/24 20:50, Caleb Schlossin wrote: Big (SMT8) cores have a complicated function to map the core, thread ID to pervasive topology (PIR). Fix this for power8, power9, and power10. Signed-off-by: Caleb Schlossin Thanks for these changes. Looks OK. Support for fused core will

[PATCH v2 1/2] target/s390x: Emulate CVDG

2024-01-25 Thread Ilya Leoshkevich
CVDG is the same as CVD, except that it converts 64 bits into 128, rather than 32 into 64. Create a new helper, which uses Int128 wrappers. Reported-by: Ido Plat Signed-off-by: Ilya Leoshkevich --- target/s390x/helper.h| 1 + target/s390x/tcg/insn-data.h.inc | 1 + target/s390x/tc

Re: Do we still need pre-meson compatibility hacks?

2024-01-25 Thread Kevin Wolf
Am 25.01.2024 um 08:54 hat Paolo Bonzini geschrieben: > Right now configure contains a couple hacks to preserve some of the > semantics of the pre-meson build system: > > 1) emulation of ./configure by creating a build directory and a forwarding > GNUmakefile (requested by Kevin) I occasionally s

[PATCH v2 0/2] target/s390x: Emulate CVDG

2024-01-25 Thread Ilya Leoshkevich
v1: https://lists.gnu.org/archive/html/qemu-devel/2024-01/msg02865.html v1 -> v2: Fix !CONFIG_INT128 builds (Richard). Hi, Ido reported that we are missing the CVDG emulation (which is very similar to the existing CVD emulation). This series adds it along with a test. Best regards, Ilya Ilya Le

[PATCH v2 2/2] tests/tcg/s390x: Test CONVERT TO DECIMAL

2024-01-25 Thread Ilya Leoshkevich
Check the CVD's and CVDG's corner cases. Signed-off-by: Ilya Leoshkevich --- tests/tcg/s390x/Makefile.target | 1 + tests/tcg/s390x/cvd.c | 42 + 2 files changed, 43 insertions(+) create mode 100644 tests/tcg/s390x/cvd.c diff --git a/tests/tcg/s390x/M

Re: [PULL v2 00/14] Block layer patches

2024-01-25 Thread Peter Maydell
On Mon, 22 Jan 2024 at 11:22, Kevin Wolf wrote: > > The following changes since commit 3f2a357b95845ea0bf7463eff6661e43b97d1afc: > > Merge tag 'hw-cpus-20240119' of https://github.com/philmd/qemu into staging > (2024-01-19 11:39:38 +) > > are available in the Git repository at: > > https:

Re: [PATCH v14 1/9] hw/misc: Add Nuvoton's PCI Mailbox Module

2024-01-25 Thread Peter Maydell
On Mon, 22 Jan 2024 at 17:37, Nabih Estefan wrote: > > From: Hao Wu > > The PCI Mailbox Module is a high-bandwidth communcation module > between a Nuvoton BMC and CPU. It features 16KB RAM that are both > accessible by the BMC and core CPU. and supports interrupt for > both sides. > > This patch

Re: [PATCH v2 3/4] qapi: blockdev-backup: add discard-source parameter

2024-01-25 Thread Fiona Ebner
Am 24.01.24 um 16:03 schrieb Fiona Ebner: > Am 17.01.24 um 17:07 schrieb Vladimir Sementsov-Ogievskiy: >> Add a parameter that enables discard-after-copy. That is mostly useful >> in "push backup with fleecing" scheme, when source is snapshot-access >> format driver node, based on copy-before-write

Re: [PATCH 0/2] target/s390x: Emulate CVDG

2024-01-25 Thread Ilya Leoshkevich
On Thu, 2024-01-18 at 18:28 +0100, Thomas Huth wrote: > On 15/01/2024 21.21, Ilya Leoshkevich wrote: > > Hi, > > > > Ido reported that we are missing the CVDG emulation (which is very > > similar to the existing CVD emulation). This series adds it along > > with > > a test. > > Just FYI, your pat

Re: [PATCH v2] docs/system/arm/virt.rst: Add note on CPU features off by default

2024-01-25 Thread Peter Maydell
On Mon, 22 Jan 2024 at 21:12, Gustavo Romero wrote: > > Add a note on CPU features that are off by default in `virt` machines. > Some CPU features will remain off even if a CPU-capable CPU (e.g., > `-cpu max`) is selected because they require support in both the CPU > itself and in the wider syste

Re: [PATCH 0/2] target/s390x: Emulate CVDG

2024-01-25 Thread Thomas Huth
On 25/01/2024 13.47, Ilya Leoshkevich wrote: On Thu, 2024-01-18 at 18:28 +0100, Thomas Huth wrote: On 15/01/2024 21.21, Ilya Leoshkevich wrote: Hi, Ido reported that we are missing the CVDG emulation (which is very similar to the existing CVD emulation). This series adds it along with a test.

Re: Do we still need pre-meson compatibility hacks?

2024-01-25 Thread Michael Tokarev
25.01.2024 14:04, Peter Maydell : On Thu, 25 Jan 2024 at 07:54, Paolo Bonzini wrote: Right now configure contains a couple hacks to preserve some of the semantics of the pre-meson build system: 1) emulation of ./configure by creating a build directory and a forwarding GNUmakefile (requested

[PATCH v8 4/5] qmp: Added new command to retrieve eBPF blob.

2024-01-25 Thread Andrew Melnychenko
Now, the binary objects may be retrieved by id. It would require for future qmp commands that may require specific eBPF blob. Added command "request-ebpf". This command returns eBPF program encoded base64. The program taken from the skeleton and essentially is an ELF object that can be loaded in t

[PATCH v8 3/5] virtio-net: Added property to load eBPF RSS with fds.

2024-01-25 Thread Andrew Melnychenko
eBPF RSS program and maps may now be passed during initialization. Initially was implemented for libvirt to launch qemu without permissions, and initialized eBPF program through the helper. Signed-off-by: Andrew Melnychenko --- hw/net/virtio-net.c| 63 ++--

[PATCH v8 5/5] ebpf: Updated eBPF program and skeleton.

2024-01-25 Thread Andrew Melnychenko
Updated section name, so libbpf should init/gues proper program type without specifications during open/load. Also, added map_flags with explicitly declared BPF_F_MMAPABLE. Added check for BPF_F_MMAPABLE flag to meson script and requirements to libbpf version. Also changed fragmentation flag check

[PATCH v8 1/5] ebpf: Added eBPF map update through mmap.

2024-01-25 Thread Andrew Melnychenko
Changed eBPF map updates through mmaped array. Mmaped arrays provide direct access to map data. It should omit using bpf_map_update_elem() call, which may require capabilities that are not present. Signed-off-by: Andrew Melnychenko --- ebpf/ebpf_rss.c | 120 ++

[PATCH v8 0/5] eBPF RSS through QMP support.

2024-01-25 Thread Andrew Melnychenko
This series of patches provides the ability to retrieve eBPF program through qmp, so management application may load bpf blob with proper capabilities. Now, virtio-net devices can accept eBPF programs and maps through properties as external file descriptors. Access to the eBPF map is direct throug

[PATCH v8 2/5] ebpf: Added eBPF initialization by fds.

2024-01-25 Thread Andrew Melnychenko
It allows using file descriptors of eBPF provided outside of QEMU. QEMU may be run without capabilities for eBPF and run RSS program provided by management tool(g.e. libvirt). Signed-off-by: Andrew Melnychenko --- ebpf/ebpf_rss-stub.c | 9 +++-- ebpf/ebpf_rss.c | 27 +++

Re: [PULL 11/33] scsi: only access SCSIDevice->requests from one thread

2024-01-25 Thread Stefan Hajnoczi
On Thu, Jan 25, 2024 at 10:06:51AM +0100, Hanna Czenczek wrote: > On 24.01.24 22:53, Stefan Hajnoczi wrote: > > On Wed, Jan 24, 2024 at 01:12:47PM +0100, Hanna Czenczek wrote: > > > On 23.01.24 18:10, Kevin Wolf wrote: > > > > Am 23.01.2024 um 17:40 hat Hanna Czenczek geschrieben: > > > > > On 21.1

[PATCH] target/arm: Add ID_AA64ZFR0_EL1.B16B16 to the exposed-to-userspace set

2024-01-25 Thread Peter Maydell
In kernel commit 5d5b4e8c2d9ec ("arm64/sve: Report FEAT_SVE_B16B16 to userspace") Linux added ID_AA64ZFR0_el1.B16B16 to the set of ID register fields which it exposes to userspace. Update our exported_bits mask to include this. (This doesn't yet change any behaviour for us, because we don't yet h

[PATCH] iotests/264: Use iotests.sock_dir for socket creation

2024-01-25 Thread Andrey Drobyshev
If socket path is too long (longer than 108 bytes), socket can't be opened. This might lead to failure when test dir path is long enough. Make sure socket is created in iotests.sock_dir to avoid such a case. This commit basically aligns iotests/264 with the rest of iotests. Signed-off-by: Andrey

Re: [PATCH] iotests/277: Use iotests.sock_dir for socket creation

2024-01-25 Thread Andrey Drobyshev
On 1/24/24 19:59, Denis V. Lunev wrote: > On 1/24/24 18:43, Eric Blake wrote: >> On Wed, Jan 24, 2024 at 06:22:57PM +0200, Andrey Drobyshev wrote: >>> If socket path is too long (longer than 108 bytes), socket can't be >>> opened.  This might lead to failure when test dir path is long enough. >>> M

Re: Do we still need pre-meson compatibility hacks?

2024-01-25 Thread Paolo Bonzini
On Thu, Jan 25, 2024 at 2:02 PM Michael Tokarev wrote: > Heh. I still use `make qemu-system-arm` (or `ninja qemu-system-arm`), but > only > because I haven't followed closely what's the "right" target to use. I don't > care much which target it is exactly, but guess this is some info which need

Re: Do we still need pre-meson compatibility hacks?

2024-01-25 Thread Daniel P . Berrangé
On Thu, Jan 25, 2024 at 08:54:09AM +0100, Paolo Bonzini wrote: > Right now configure contains a couple hacks to preserve some of the > semantics of the pre-meson build system: > > 1) emulation of ./configure by creating a build directory and a forwarding > GNUmakefile (requested by Kevin) > > 2)

[PATCH] vfio/pci: Clear MSI-X IRQ index always

2024-01-25 Thread Cédric Le Goater
When doing device assignment of a physical device, MSI-X can be enabled with no vectors enabled and this sets the IRQ index to VFIO_PCI_MSIX_IRQ_INDEX. However, when MSI-X is disabled, the IRQ index is left untouched if no vectors are in use. Then, when INTx is enabled, the IRQ index value is consi

Re: Do we still need pre-meson compatibility hacks?

2024-01-25 Thread Paolo Bonzini
On Thu, Jan 25, 2024 at 3:35 PM Daniel P. Berrangé wrote: > The latter feels redundant, but the former feels worthwhile as long as we > keep a wrapper cnofigure script around. > > It seems like we're not far off being able to do a build with the normal > sequence of > > meson setup build > mes

Re: [PULL v2 0/8] tcg pach queue

2024-01-25 Thread Peter Maydell
On Tue, 23 Jan 2024 at 10:24, Richard Henderson wrote: > > v2: Dropped s390x test case, which gets mis-compiled with > some cross-compiler. Add tcg/arm fix. > > > r~ > > > The following changes since commit 09be34717190c1620f0c6e5c8765b8da354aeb4b: > > Merge tag 'pull-request-2024-01-19' of htt

Re: [PULL 0/7] Test timeout fixes and URI code clean up

2024-01-25 Thread Peter Maydell
On Wed, 24 Jan 2024 at 10:42, Thomas Huth wrote: > > Hi Peter! > > The following changes since commit 09be34717190c1620f0c6e5c8765b8da354aeb4b: > > Merge tag 'pull-request-2024-01-19' of https://gitlab.com/thuth/qemu into > staging (2024-01-20 17:22:16 +) > > are available in the Git repos

Re: [PULL 0/2] Block patches

2024-01-25 Thread Peter Maydell
On Mon, 22 Jan 2024 at 16:01, Stefan Hajnoczi wrote: > > The following changes since commit 09be34717190c1620f0c6e5c8765b8da354aeb4b: > > Merge tag 'pull-request-2024-01-19' of https://gitlab.com/thuth/qemu into > staging (2024-01-20 17:22:16 +) > > are available in the Git repository at: >

[PATCH] iotests/iothreads-stream: Use the right TimeoutError

2024-01-25 Thread Kevin Wolf
Since Python 3.11 asyncio.TimeoutError is an alias for TimeoutError, but in older versions it's not. We really have to catch asyncio.TimeoutError here, otherwise a slow test run will fail (as has happened multiple times on CI recently). Signed-off-by: Kevin Wolf --- tests/qemu-iotests/tests/ioth

[PATCH v4] hw/char/imx_serial: Implement receive FIFO and ageing timer for imx serial.

2024-01-25 Thread Rayhan Faizel
This patch implements a 32 half word FIFO as per imx serial device specifications. If a non empty FIFO is below the trigger level, an ageing timer will tick for a duration of 8 characters. On expiry, AGTIM will be set triggering an interrupt. AGTIM timer resets when there is activity in the receive

Re: [PULL 0/2] Block patches

2024-01-25 Thread Michael Tokarev
22.01.2024 19:01, Stefan Hajnoczi : Akihiko Odaki (1): coroutine-ucontext: Save fake stack for pooled coroutine Fiona Ebner (1): block/io: clear BDRV_BLOCK_RECURSE flag after recursing in bdrv_co_block_status These too also look like -stable matherial, both of the changes. Please l

[PATCH v2 1/4] replay: allow runstate shutdown->running when replaying trace

2024-01-25 Thread Nicholas Piggin
When replaying a trace, it is possible to go from shutdown to running with a reverse-debugging step. This can be useful if the problem being debugged triggers a reset or shutdown. Signed-off-by: Nicholas Piggin --- include/sysemu/runstate.h | 1 + replay/replay.c | 2 ++ system/runst

[PATCH v2 0/4] replay: minor fixes and tests

2024-01-25 Thread Nicholas Piggin
replay-dump.py script still chokes quite easily on a trace of Linux boot, so I revived some patches from last year that fix the script and add some test cases for it. The runstate patch doesn't have a test case (yet), but you can hit the problem by replaying to the machine shutdown and then rever

[PATCH v2 3/4] scripts/replay-dump.py: rejig decoders in event number order

2024-01-25 Thread Nicholas Piggin
Sort decoder functions to be ascending in order of event number, same as the decoder tables. Signed-off-by: Nicholas Piggin --- scripts/replay-dump.py | 56 +- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/scripts/replay-dump.py b/scripts

[PATCH v2 2/4] scripts/replay-dump.py: Update to current rr record format

2024-01-25 Thread Nicholas Piggin
The v12 format support for replay-dump has a few issues still. This fixes async decoding; adds event, shutdown, and end decoding; fixes audio in / out events, fixes checkpoint checking of following async events. Signed-off-by: Nicholas Piggin --- scripts/replay-dump.py | 132

[PATCH v2 4/4] tests/avocado: excercise scripts/replay-dump.py in replay tests

2024-01-25 Thread Nicholas Piggin
This runs replay-dump.py after recording a trace, and fails the test if the script fails. replay-dump.py is modified to exit with non-zero if an error is encountered while parsing, to support this. Signed-off-by: Nicholas Piggin --- scripts/replay-dump.py | 6 -- tests/avocado/repl

[PATCH] vmbus: Print a warning when enabled without the recommended set of features

2024-01-25 Thread Maciej S. Szmigiero
From: "Maciej S. Szmigiero" Some Windows versions crash at boot or fail to enable the VMBus device if they don't see the expected set of Hyper-V features (enlightenments). Since this provides poor user experience let's warn user if the VMBus device is enabled without the recommended set of Hyper

[PATCH 09/17] migration/multifd: Use the new TLS upgrade API for multifd channels

2024-01-25 Thread Avihai Horon
Use the new TLS upgrade API for multifd channels and remove the old TLS code. Note that p->c is now set only after a successful TLS connection, so need to call object_unref() on QIOChannelTLS in case of error in multifd_tls_outgoing_handshake() (previously it was done in multifd_save_cleanup()).

[PATCH 08/17] migration: Use the new TLS upgrade API for main channel

2024-01-25 Thread Avihai Horon
Use the new TLS upgrade API for main migration channel and remove the old TLS code. Signed-off-by: Avihai Horon --- migration/tls.h| 3 --- migration/channel.c| 24 +--- migration/tls.c| 36 migration/trace-events | 3

[PATCH 16/17] migration/multifd: Use the new migration channel connect API for multifd

2024-01-25 Thread Avihai Horon
Use the new migration channel connect API for multifd and remove old channel connect code. Signed-off-by: Avihai Horon --- migration/multifd.c| 89 ++ migration/trace-events | 3 -- 2 files changed, 21 insertions(+), 71 deletions(-) diff --git a/migr

[PATCH 06/17] migration/tls: Rename main migration channel TLS functions

2024-01-25 Thread Avihai Horon
Rename functions related to main migration channel TLS upgrade. This is done in preparation for the next patch which will add a new TLS upgrade API for migration channels with the same name. No functional changes intended. Signed-off-by: Avihai Horon --- migration/tls.h| 6 ++ migra

[PATCH 01/17] migration: Fix logic of channels and transport compatibility check

2024-01-25 Thread Avihai Horon
The commit in the fixes line mistakenly modified the channels and transport compatibility check logic so it now checks multi-channel support only for socket transport type. Thus, running multifd migration using a transport other than socket that is incompatible with multi-channels (such as "exec")

[PATCH 05/17] migration/multifd: Wait for multifd channels creation before proceeding

2024-01-25 Thread Avihai Horon
Currently, multifd channels are created asynchronously without waiting for their creation -- migration simply proceeds and may wait in multifd_send_sync_main(), which is called by ram_save_setup(). This hides in it some race conditions which can cause an unexpected behavior if some channels creatio

[PATCH 11/17] migration/tls: Make migration_tls_client_create() static

2024-01-25 Thread Avihai Horon
migration_tls_client_create() is not used externally by anyone. Make it static. Signed-off-by: Avihai Horon --- migration/tls.h | 4 migration/tls.c | 2 +- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/migration/tls.h b/migration/tls.h index a6babbfa14..87a79b4102 100644 --

[PATCH 15/17] migration: Add new migration channel connect API

2024-01-25 Thread Avihai Horon
Add a new API to connect additional migration channels other than the main migration channel. This API removes the burden of handling the transport type and TLS upgrade logic, and thus simplifies migration channel connection. It will be used in the next patches to connect multifd and postcopy pree

[PATCH 04/17] migration/multifd: Set p->running = true in the right place

2024-01-25 Thread Avihai Horon
The commit in the fixes line moved multifd thread creation to a different location, but forgot to move the p->running = true assignment as well. Thus, p->running is set to true before multifd thread is actually created. p->running is used in multifd_save_cleanup() to decide whether to join the mul

[PATCH 03/17] migration: Rename default_channel to main_channel

2024-01-25 Thread Avihai Horon
migration_ioc_process_incoming() uses the term "default_channel" to describe the main migration channel. Rename it to the more commonly used and informative term "main_channel". Signed-off-by: Avihai Horon --- migration/migration.c | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-)

[PATCH 02/17] migration: Move local_err check in migration_ioc_process_incoming()

2024-01-25 Thread Avihai Horon
local_err in migration_ioc_process_incoming() is used only in the multifd if branch. Move the local_err check under the multifd branch, where it is actually used. Signed-off-by: Avihai Horon --- migration/migration.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/mig

[PATCH 14/17] migration: Rename migration_channel_connect()

2024-01-25 Thread Avihai Horon
The following patches will add a new API to create migration channels with the same name, so rename migration_channel_connect() to migration_channel_connect_main(). No functional changes intended. Signed-off-by: Avihai Horon --- migration/channel.h | 6 ++ migration/channel.c | 10 -

[PATCH 07/17] migration/tls: Add new migration channel TLS upgrade API

2024-01-25 Thread Avihai Horon
Main migration channel, multifd channels and postcopy preempt channel use the QIOChannelTLS API to upgrade their channels to TLS when needed. Each of them has its own code to create a QIOChannelTLS and to perform the TLS handshake. Some of this code is duplicate and can be avoided. Add a new API

[PATCH 17/17] migration/postcopy: Use the new migration channel connect API for postcopy preempt

2024-01-25 Thread Avihai Horon
Use the new migration channel connect API for postcopy preempt and remove old channel connect code. Signed-off-by: Avihai Horon --- migration/postcopy-ram.h | 2 +- migration/postcopy-ram.c | 105 +++ 2 files changed, 42 insertions(+), 65 deletions(-) diff

[PATCH 13/17] migration: Store MigrationAddress in MigrationState

2024-01-25 Thread Avihai Horon
This will be used in the new migration channel creation API in the following patches. Signed-off-by: Avihai Horon --- migration/migration.h | 3 +++ migration/migration.c | 6 ++ 2 files changed, 9 insertions(+) diff --git a/migration/migration.h b/migration/migration.h index 17972dac34..dc

[PATCH 12/17] migration/multifd: Consolidate TLS/non-TLS multifd channel error flow

2024-01-25 Thread Avihai Horon
The error flows of TLS and non-TLS multifd channel creation are similar yet they don't share code. Consolidate the flows by using multifd_new_send_channel_cleanup() also in TLS error flow. Signed-off-by: Avihai Horon --- migration/multifd.c | 15 --- 1 file changed, 4 insertions(+),

[PATCH 10/17] migration/postcopy: Use the new TLS upgrade API for preempt channel

2024-01-25 Thread Avihai Horon
Use the new TLS upgrade API for postcopy preempt channel and remove old TLS code. Signed-off-by: Avihai Horon --- migration/postcopy-ram.c | 20 +++- migration/trace-events | 1 - 2 files changed, 7 insertions(+), 14 deletions(-) diff --git a/migration/postcopy-ram.c b/migrat

RE: hexagon: modeling a shared lock state

2024-01-25 Thread Brian Cain
> -Original Message- > From: Richard Henderson > Sent: Wednesday, January 24, 2024 6:22 PM > To: Brian Cain ; Philippe Mathieu-Daudé > > Cc: qemu-devel@nongnu.org; Sid Manning ; Marco > Liebel ; Matheus Bernardino > > Subject: Re: hexagon: modeling a shared lock state > > WARNING: Thi

[PATCH 00/17] migration: Add new migration channel connect and TLS upgrade APIs

2024-01-25 Thread Avihai Horon
Hello, Today there are several types of migration channels that can be used during migration: main migration channel, multifd channels and postcopy preempt channel. Each channel type has its own code to connect and to TLS upgrade itself when needed. There is no unified API for these tasks and it m

[PATCH 00/10] Clean up includes

2024-01-25 Thread Peter Maydell
This series makes a bunch of automated edits with the clean-includes script. The script performs three related cleanups: * Ensure .c files include qemu/osdep.h first. * Including it in a .h is redundant, since the .c already includes it. Drop such inclusions. * Likewise, including headers

[PATCH 04/10] aspeed: Clean up includes

2024-01-25 Thread Peter Maydell
This commit was created with scripts/clean-includes. All .c should include qemu/osdep.h first. The script performs three related cleanups: * Ensure .c files include qemu/osdep.h first. * Including it in a .h is redundant, since the .c already includes it. Drop such inclusions. * Likewise, in

Re: [PATCH] iotests: don't run tests requiring cached writes in '-nocache' mode

2024-01-25 Thread Andrey Drobyshev
On 1/11/24 14:53, Andrey Drobyshev wrote: > On 12/11/23 15:32, Andrey Drobyshev wrote: >> There're tests whose logic implies running without O_DIRECT set, >> otherwise they fail when running iotests in '-nocache' mode. For these >> tests let's add _require_no_o_direct() helper which can be put in

[PATCH 02/10] hyperv: Clean up includes

2024-01-25 Thread Peter Maydell
This commit was created with scripts/clean-includes: ./scripts/clean-includes --git hyperv hw/hyperv/*.[ch] All .c should include qemu/osdep.h first. The script performs three related cleanups: * Ensure .c files include qemu/osdep.h first. * Including it in a .h is redundant, since the .c alre

[PATCH 07/10] include: Clean up includes

2024-01-25 Thread Peter Maydell
This commit was created with scripts/clean-includes: ./scripts/clean-includes --git include include/*/*.h include/*/*/*.h All .c should include qemu/osdep.h first. The script performs three related cleanups: * Ensure .c files include qemu/osdep.h first. * Including it in a .h is redundant, sinc

[PATCH 09/10] riscv: Clean up includes

2024-01-25 Thread Peter Maydell
This commit was created with scripts/clean-includes: ./scripts/clean-includes --git riscv target/riscv/*.[ch] All .c should include qemu/osdep.h first. The script performs three related cleanups: * Ensure .c files include qemu/osdep.h first. * Including it in a .h is redundant, since the .c al

[PATCH 10/10] misc: Clean up includes

2024-01-25 Thread Peter Maydell
This commit was created with scripts/clean-includes: ./scripts/clean-includes --git misc net/af-xdp.c plugins/*.c audio/pwaudio.c util/userfaultfd.c All .c should include qemu/osdep.h first. The script performs three related cleanups: * Ensure .c files include qemu/osdep.h first. * Including i

[PATCH 05/10] acpi: Clean up includes

2024-01-25 Thread Peter Maydell
This commit was created with scripts/clean-includes: ./scripts/clean-includes --git acpi include/hw/*/*acpi.h hw/*/*acpi.c All .c should include qemu/osdep.h first. The script performs three related cleanups: * Ensure .c files include qemu/osdep.h first. * Including it in a .h is redundant, sin

[PATCH 03/10] disas/riscv: Clean up includes

2024-01-25 Thread Peter Maydell
This commit was created with scripts/clean-includes: ./scripts/clean-includes --git disas/riscv disas/riscv*[ch] All .c should include qemu/osdep.h first. The script performs three related cleanups: * Ensure .c files include qemu/osdep.h first. * Including it in a .h is redundant, since the .c

  1   2   3   >