Branch: refs/heads/master
Home: https://github.com/qemu/qemu
Commit: 56d89db2cfd82c53439778fbf39294bf35194dba
https://github.com/qemu/qemu/commit/56d89db2cfd82c53439778fbf39294bf35194dba
Author: Paolo Bonzini <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M accel/kvm/kvm-all.c
M qapi/run-state.json
M system/runstate.c
M target/i386/cpu-system.c
Log Message:
-----------
target/i386: convert SEV-ES termination requests to guest panic events
This produces a good error message instead of:
KVM: unknown exit reason 24
EAX=00000000 EBX=00000000 ECX=00000000 EDX=00a00f11
ESI=00000000 EDI=00000000 EBP=00000000 ESP=00000000
EIP=0000b004 EFL=00000002 [-------] CPL=0 II=0 A20=1 SMM=0 HLT=1
ES =0000 00000000 0000ffff 00009300
CS =f000 00800000 0000ffff 00009b00
SS =0000 00000000 0000ffff 00009300
DS =0000 00000000 0000ffff 00009300
FS =0000 00000000 0000ffff 00009300
GS =0000 00000000 0000ffff 00009300
LDT=0000 00000000 0000ffff 00008200
TR =0000 00000000 0000ffff 00008b00
GDT= 00000000 0000ffff
IDT= 00000000 0000ffff
CR0=60000010 CR2=00000000 CR3=00000000 CR4=00000000
DR0=0000000000000000 DR1=0000000000000000 DR2=0000000000000000
DR3=0000000000000000
DR6=00000000ffff0ff0 DR7=0000000000000400
EFER=0000000000000000
Code=00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 <00> 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Reported-by: Jin Liu <[email protected]>
Cc: Michael Roth <[email protected]>
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 52d8e35bd1d2d248cd1bf5485c7311631d2376a2
https://github.com/qemu/qemu/commit/52d8e35bd1d2d248cd1bf5485c7311631d2376a2
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/i386/pc_piix.c
M hw/i386/pc_q35.c
Log Message:
-----------
hw/i386/pc: Remove deprecated pc-q35-2.6 and pc-i440fx-2.6 machines
These machines has been supported for a period of more than 6 years.
According to our versioned machine support policy (see commit
ce80c4fa6ff "docs: document special exception for machine type
deprecation & removal") they can now be removed.
Reviewed-by: Mark Cave-Ayland <[email protected]>
Reviewed-by: Thomas Huth <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Reviewed-by: Igor Mammedov <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 0a07b71f20d12152ea29be636d350412ef3550a2
https://github.com/qemu/qemu/commit/0a07b71f20d12152ea29be636d350412ef3550a2
Author: Igor Mammedov <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M tests/qtest/bios-tables-test-allowed-diff.h
Log Message:
-----------
tests/acpi: Allow DSDT table change for x86 machines
Before dropping legacy CPU hotplug code, mark and allow the affected
ACPI tables, to avoid breaking ACPI table testing.
Signed-off-by: Igor Mammedov <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 7aa563630b6b0d01489d0e0c0f5e3ed0d7e739e7
https://github.com/qemu/qemu/commit/7aa563630b6b0d01489d0e0c0f5e3ed0d7e739e7
Author: Zhao Liu <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/acpi/cpu.c
M hw/acpi/ich9.c
M hw/acpi/piix4.c
M hw/i386/acpi-build.c
M hw/loongarch/virt-acpi-build.c
M include/hw/acpi/cpu.h
Log Message:
-----------
pc: Start with modern CPU hotplug interface by default
For compatibility reasons PC/Q35 will start with legacy CPU hotplug
interface by default but with new CPU hotplug AML code since 2.7
machine type (in commit 679dd1a957df ("pc: use new CPU hotplug interface
since 2.7 machine type")). In that way, legacy firmware that doesn't use
QEMU generated ACPI tables was able to continue using legacy CPU hotplug
interface.
While later machine types, with firmware supporting QEMU provided ACPI
tables, generate new CPU hotplug AML, which will switch to new CPU
hotplug interface when guest OS executes its _INI method on ACPI tables
loading.
Since 2.6 machine type is now gone, and consider that the legacy BIOS
(based on QEMU ACPI prior to v2.7) should be no longer in use, previous
compatibility requirements are no longer necessary. So initialize
'modern' hotplug directly from the very beginning for PC/Q35 machines
with cpu_hotplug_hw_init(), and drop _INIT method.
Additionally, remove the checks and settings around cpu_hotplug_legacy
in cpuhp VMState (for piix4 & ich9), to eliminate the risk of
segmentation faults, as gpe_cpu no longer has the opportunity to be
initialized. This is safe because all hotplug now start with the modern
way, and it's impossible to switch to legacy way at runtime (even the
"cpu-hotplug-legacy" properties does not allow it either).
Signed-off-by: Igor Mammedov <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Acked-by: Igor Mammedov <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 67d6012d85e256470de654f0d19e5c9a61e0c670
https://github.com/qemu/qemu/commit/67d6012d85e256470de654f0d19e5c9a61e0c670
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/acpi/ich9.c
M hw/acpi/piix4.c
M hw/i386/acpi-build.c
M include/hw/acpi/ich9.h
M include/hw/acpi/piix4.h
M include/hw/i386/pc.h
Log Message:
-----------
hw/i386/pc: Remove PCMachineClass::legacy_cpu_hotplug field
Now all PC & Q35 machiens are using modern hotplug from the beginning,
and all legacy_cpu_hotplug flags keep false during runtime.
So it's safe to remove legacy_cpu_hotplug flags and related properties,
with unused gpe_cpu field.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Igor Mammedov <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Acked-by: Igor Mammedov <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 067ab16cf7e94b5ca99b937d9bcf7d115a91b680
https://github.com/qemu/qemu/commit/067ab16cf7e94b5ca99b937d9bcf7d115a91b680
Author: Zhao Liu <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/acpi/acpi-cpu-hotplug-stub.c
R hw/acpi/cpu_hotplug.c
M hw/acpi/generic_event_device.c
M hw/acpi/ich9.c
M hw/acpi/meson.build
M hw/acpi/piix4.c
M hw/i386/acpi-build.c
M hw/i386/pc.c
M hw/i386/x86-common.c
M include/hw/acpi/ich9.h
M include/hw/acpi/piix4.h
Log Message:
-----------
acpi: Remove legacy cpu hotplug utilities
The cpu_hotplug.h and cpu_hotplug.c contain legacy cpu hotplug
utilities. Now there's no use case of legacy cpu hotplug, so it's safe
to drop legacy cpu hotplug support totally.
Signed-off-by: Igor Mammedov <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Acked-by: Igor Mammedov <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: cd531feb36c84d5f596445eb0cd2a25296d6de1a
https://github.com/qemu/qemu/commit/cd531feb36c84d5f596445eb0cd2a25296d6de1a
Author: Zhao Liu <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M docs/specs/acpi_cpu_hotplug.rst
Log Message:
-----------
docs/specs/acpi_cpu_hotplug: Remove legacy cpu hotplug descriptions
Legacy cpu hotplug has been removed totally and machines start with
modern cpu hotplug interface directly.
Therefore, update the documentation to describe current QEMU cpu hotplug
logic.
Reviewed-by: Igor Mammedov <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 9b65a1dbc184a38c38b6d412dcda918fdc210741
https://github.com/qemu/qemu/commit/9b65a1dbc184a38c38b6d412dcda918fdc210741
Author: Zhao Liu <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M tests/data/acpi/x86/pc/DSDT
M tests/data/acpi/x86/pc/DSDT.acpierst
M tests/data/acpi/x86/pc/DSDT.acpihmat
M tests/data/acpi/x86/pc/DSDT.bridge
M tests/data/acpi/x86/pc/DSDT.cphp
M tests/data/acpi/x86/pc/DSDT.dimmpxm
M tests/data/acpi/x86/pc/DSDT.hpbridge
M tests/data/acpi/x86/pc/DSDT.hpbrroot
M tests/data/acpi/x86/pc/DSDT.ipmikcs
M tests/data/acpi/x86/pc/DSDT.memhp
M tests/data/acpi/x86/pc/DSDT.nohpet
M tests/data/acpi/x86/pc/DSDT.numamem
M tests/data/acpi/x86/pc/DSDT.roothp
M tests/data/acpi/x86/q35/DSDT
M tests/data/acpi/x86/q35/DSDT.acpierst
M tests/data/acpi/x86/q35/DSDT.acpihmat
M tests/data/acpi/x86/q35/DSDT.acpihmat-generic-x
M tests/data/acpi/x86/q35/DSDT.acpihmat-noinitiator
M tests/data/acpi/x86/q35/DSDT.applesmc
M tests/data/acpi/x86/q35/DSDT.bridge
M tests/data/acpi/x86/q35/DSDT.core-count
M tests/data/acpi/x86/q35/DSDT.core-count2
M tests/data/acpi/x86/q35/DSDT.cphp
M tests/data/acpi/x86/q35/DSDT.cxl
M tests/data/acpi/x86/q35/DSDT.dimmpxm
M tests/data/acpi/x86/q35/DSDT.ipmibt
M tests/data/acpi/x86/q35/DSDT.ipmismbus
M tests/data/acpi/x86/q35/DSDT.ivrs
M tests/data/acpi/x86/q35/DSDT.memhp
M tests/data/acpi/x86/q35/DSDT.mmio64
M tests/data/acpi/x86/q35/DSDT.multi-bridge
M tests/data/acpi/x86/q35/DSDT.noacpihp
M tests/data/acpi/x86/q35/DSDT.nohpet
M tests/data/acpi/x86/q35/DSDT.numamem
M tests/data/acpi/x86/q35/DSDT.pvpanic-isa
M tests/data/acpi/x86/q35/DSDT.thread-count
M tests/data/acpi/x86/q35/DSDT.thread-count2
M tests/data/acpi/x86/q35/DSDT.tis.tpm12
M tests/data/acpi/x86/q35/DSDT.tis.tpm2
M tests/data/acpi/x86/q35/DSDT.type4-count
M tests/data/acpi/x86/q35/DSDT.viot
M tests/data/acpi/x86/q35/DSDT.xapic
M tests/qtest/bios-tables-test-allowed-diff.h
Log Message:
-----------
tests/acpi: Update DSDT tables for pc & q35 machines
Now the legacy cpu hotplug way has gone away, and there's no _INIT
method in DSDT table for modern cpu hotplug support.
Update DSDT tables for pc machine, and_INIT methods are removed from
DSDT tables:
- Method (_INI, 0, Serialized) // _INI: Initialize
- {
- CSEL = Zero
- }
Signed-off-by: Zhao Liu <[email protected]>
Acked-by: Igor Mammedov <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 5e6868c519bd07ba581db4aaa1525ad9d7fc28e3
https://github.com/qemu/qemu/commit/5e6868c519bd07ba581db4aaa1525ad9d7fc28e3
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/hppa/machine.c
M hw/nvram/fw_cfg.c
M include/hw/nvram/fw_cfg.h
Log Message:
-----------
hw/nvram/fw_cfg: Rename fw_cfg_init_mem() with '_nodma' suffix
Rename fw_cfg_init_mem() as fw_cfg_init_mem_nodma()
to distinct with the DMA version (currently named
fw_cfg_init_mem_wide).
Suggested-by: Zhao Liu <[email protected]>
Reviewed-by: Igor Mammedov <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Reviewed-by: Xiaoyao Li <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: c47d27f59278a6b7849fcdb5cb346fe31aa55b04
https://github.com/qemu/qemu/commit/c47d27f59278a6b7849fcdb5cb346fe31aa55b04
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/mips/loongson3_virt.c
Log Message:
-----------
hw/mips/loongson3_virt: Prefer using fw_cfg_init_mem_nodma()
fw_cfg_init_mem_wide() is prefered to initialize fw_cfg
with DMA support. Without DMA, use fw_cfg_init_mem_nodma().
Reviewed-by: Xiaoyao Li <[email protected]>
Reviewed-by: Igor Mammedov <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: b8f5ff7778ff28f37ba028ed657eea88571250cd
https://github.com/qemu/qemu/commit/b8f5ff7778ff28f37ba028ed657eea88571250cd
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/nvram/fw_cfg.c
Log Message:
-----------
hw/nvram/fw_cfg: Factor fw_cfg_init_mem_internal() out
Factor fw_cfg_init_mem_internal() out of fw_cfg_init_mem_wide().
In fw_cfg_init_mem_wide(), assert DMA arguments are provided.
Callers without DMA have to use the fw_cfg_init_mem() helper.
Reviewed-by: Igor Mammedov <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Reviewed-by: Xiaoyao Li <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 99d1b033654940057c7e8daf0dee11da5a889603
https://github.com/qemu/qemu/commit/99d1b033654940057c7e8daf0dee11da5a889603
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/arm/virt.c
M hw/loongarch/fw_cfg.c
M hw/nvram/fw_cfg.c
M hw/riscv/virt.c
M include/hw/nvram/fw_cfg.h
Log Message:
-----------
hw/nvram/fw_cfg: Rename fw_cfg_init_mem_wide() -> fw_cfg_init_mem_dma()
"wide" in fw_cfg_init_mem_wide() means "DMA support".
Rename for clarity.
Suggested-by: Zhao Liu <[email protected]>
Reviewed-by: Xiaoyao Li <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Reviewed-by: Igor Mammedov <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: a5d6b658614d1a12d1ad16a8f09b317da068b3d5
https://github.com/qemu/qemu/commit/a5d6b658614d1a12d1ad16a8f09b317da068b3d5
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/i386/microvm.c
M hw/i386/multiboot.c
M hw/i386/x86-common.c
M hw/i386/x86.c
M include/hw/i386/x86.h
Log Message:
-----------
hw/i386/x86: Remove X86MachineClass::fwcfg_dma_enabled field
The X86MachineClass::fwcfg_dma_enabled boolean was only used
by the pc-q35-2.6 and pc-i440fx-2.6 machines, which got
removed. Remove it and simplify.
'multiboot.bin' isn't used anymore, we'll remove it in the
next commit.
Reviewed-by: Zhao Liu <[email protected]>
Reviewed-by: Igor Mammedov <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: e818b4b10969927019a0a2be5b71aad7a8e0f6a7
https://github.com/qemu/qemu/commit/e818b4b10969927019a0a2be5b71aad7a8e0f6a7
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/i386/pc.c
M pc-bios/meson.build
R pc-bios/multiboot.bin
M pc-bios/optionrom/Makefile
R pc-bios/optionrom/multiboot.S
M pc-bios/optionrom/multiboot_dma.S
M pc-bios/optionrom/optionrom.h
Log Message:
-----------
hw/i386/pc: Remove multiboot.bin
All PC machines now use the multiboot_dma.bin binary,
we can remove the non-DMA version (multiboot.bin).
This doesn't change multiboot_dma binary file.
Suggested-by: Thomas Huth <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Reviewed-by: Igor Mammedov <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 04ddbb137da180e684e8a1c7fafdae7d1426fd4d
https://github.com/qemu/qemu/commit/04ddbb137da180e684e8a1c7fafdae7d1426fd4d
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/i386/fw_cfg.c
M hw/i386/x86-common.c
Log Message:
-----------
hw/i386: Assume fw_cfg DMA is always enabled
Now all calls of x86 machines to fw_cfg_init_io_dma() pass DMA
arguments, so the FWCfgState (FWCfgIoState) created by x86 machines
enables DMA by default.
Although other callers of fw_cfg_init_io_dma() besides x86 also pass
DMA arguments to create DMA-enabled FwCfgIoState, the "dma_enabled"
property of FwCfgIoState cannot yet be removed, because Sun4u and Sun4v
still create DMA-disabled FwCfgIoState (bypass fw_cfg_init_io_dma()) in
sun4uv_init() (hw/sparc64/sun4u.c).
Maybe reusing fw_cfg_init_io_dma() for them would be a better choice, or
adding fw_cfg_init_io_nodma(). However, before that, first simplify the
handling of FwCfgState in x86.
Considering that FwCfgIoState in x86 enables DMA by default, remove the
handling for DMA-disabled cases and replace DMA checks with assertions
to ensure that the default DMA-enabled setting is not broken.
Then 'linuxboot.bin' isn't used anymore, and it will be removed in the
next commit.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Acked-by: Igor Mammedov <[email protected]>
Reviewed-by: Thomas Huth <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 88641f4df388faa78c49c54ed885e530fd0a75dc
https://github.com/qemu/qemu/commit/88641f4df388faa78c49c54ed885e530fd0a75dc
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/i386/pc.c
M pc-bios/meson.build
M pc-bios/optionrom/Makefile
R pc-bios/optionrom/linuxboot.S
Log Message:
-----------
hw/i386: Remove linuxboot.bin
All machines now use the linuxboot_dma.bin binary, so it's safe to
remove the non-DMA version (linuxboot.bin).
Suggested-by: Thomas Huth <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Reviewed-by: Thomas Huth <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 1f7e4333e52488d9b774076257c63d3d0ce60d3c
https://github.com/qemu/qemu/commit/1f7e4333e52488d9b774076257c63d3d0ce60d3c
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/i386/pc.c
M include/hw/i386/pc.h
Log Message:
-----------
hw/i386/pc: Remove pc_compat_2_6[] array
The pc_compat_2_6[] array was only used by the pc-q35-2.6
and pc-i440fx-2.6 machines, which got removed. Remove it.
Reviewed-by: Mark Cave-Ayland <[email protected]>
Reviewed-by: Thomas Huth <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Reviewed-by: Igor Mammedov <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 5b10d689ecb0335a6e425e33e26e64c07b72ab8b
https://github.com/qemu/qemu/commit/5b10d689ecb0335a6e425e33e26e64c07b72ab8b
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/intc/apic_common.c
M include/hw/i386/apic_internal.h
Log Message:
-----------
hw/intc/apic: Remove APICCommonState::legacy_instance_id field
The APICCommonState::legacy_instance_id boolean was only set
in the pc_compat_2_6[] array, via the 'legacy-instance-id=on'
property. We removed all machines using that array, lets remove
that property, simplifying apic_common_realize().
Because instance_id is initialized as initial_apic_id, we can
not register vmstate_apic_common directly via dc->vmsd.
Reviewed-by: Mark Cave-Ayland <[email protected]>
Reviewed-by: Thomas Huth <[email protected]>
Reviewed-by: Igor Mammedov <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 7de77b0f5d75e45e09da7a2f5ab1b1221a899b8e
https://github.com/qemu/qemu/commit/7de77b0f5d75e45e09da7a2f5ab1b1221a899b8e
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/core/machine.c
M include/hw/core/boards.h
Log Message:
-----------
hw/core/machine: Remove hw_compat_2_6[] array
The hw_compat_2_6[] array was only used by the pc-q35-2.6 and
pc-i440fx-2.6 machines, which got removed. Remove it.
Reviewed-by: Mark Cave-Ayland <[email protected]>
Reviewed-by: Thomas Huth <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Reviewed-by: Igor Mammedov <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 5964220631f32e4bf4175c2a77d4d5ed3330c520
https://github.com/qemu/qemu/commit/5964220631f32e4bf4175c2a77d4d5ed3330c520
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/virtio/virtio-mmio.c
M include/hw/virtio/virtio-mmio.h
Log Message:
-----------
hw/virtio/virtio-mmio: Remove VirtIOMMIOProxy::format_transport_address field
The VirtIOMMIOProxy::format_transport_address boolean was only set
in the hw_compat_2_6[] array, via the 'format_transport_address=off'
property. We removed all machines using that array, lets remove
that property, simplifying virtio_mmio_bus_get_dev_path().
Reviewed-by: Mark Cave-Ayland <[email protected]>
Reviewed-by: Thomas Huth <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Reviewed-by: Igor Mammedov <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 6fcfe360dc17872f03a6926cc694ab59e5a67df4
https://github.com/qemu/qemu/commit/6fcfe360dc17872f03a6926cc694ab59e5a67df4
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/i386/pc_piix.c
M hw/i386/pc_q35.c
M tests/qtest/test-x86-cpuid-compat.c
Log Message:
-----------
hw/i386/pc: Remove deprecated pc-q35-2.7 and pc-i440fx-2.7 machines
These machines has been supported for a period of more than 6 years.
According to our versioned machine support policy (see commit
ce80c4fa6ff "docs: document special exception for machine type
deprecation & removal") they can now be removed. Remove the qtest
in test-x86-cpuid-compat.c file.
Reviewed-by: Mark Cave-Ayland <[email protected]>
Reviewed-by: Thomas Huth <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Reviewed-by: Igor Mammedov <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: af704c0e25264ba1cc4edb240aa86dc80ce45f25
https://github.com/qemu/qemu/commit/af704c0e25264ba1cc4edb240aa86dc80ce45f25
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/i386/pc.c
M include/hw/i386/pc.h
Log Message:
-----------
hw/i386/pc: Remove pc_compat_2_7[] array
The pc_compat_2_7[] array was only used by the pc-q35-2.7
and pc-i440fx-2.7 machines, which got removed. Remove it.
Reviewed-by: Mark Cave-Ayland <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Reviewed-by: Thomas Huth <[email protected]>
Reviewed-by: Igor Mammedov <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: d8acb4457238cf4a3466067af64e62265e5bcc00
https://github.com/qemu/qemu/commit/d8acb4457238cf4a3466067af64e62265e5bcc00
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M target/i386/cpu.c
M target/i386/cpu.h
Log Message:
-----------
target/i386/cpu: Remove CPUX86State::full_cpuid_auto_level field
The CPUX86State::full_cpuid_auto_level boolean was only
disabled for the pc-q35-2.7 and pc-i440fx-2.7 machines,
which got removed. Being now always %true, we can remove
it and simplify x86_cpu_expand_features().
Reviewed-by: Zhao Liu <[email protected]>
Reviewed-by: Igor Mammedov <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 7d20a7c6ab83597a69535d7cd3527290d952da43
https://github.com/qemu/qemu/commit/7d20a7c6ab83597a69535d7cd3527290d952da43
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/audio/pcspk.c
Log Message:
-----------
hw/audio/pcspk: Remove PCSpkState::migrate field
The PCSpkState::migrate boolean was only set in the
pc_compat_2_7[] array, via the 'migrate=off' property.
We removed all machines using that array, lets remove
that property, simplifying vmstate_spk[].
Reviewed-by: Mark Cave-Ayland <[email protected]>
Reviewed-by: Thomas Huth <[email protected]>
Reviewed-by: Igor Mammedov <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: d99dcf16688fc89a748f4aa461bb33abe624e36b
https://github.com/qemu/qemu/commit/d99dcf16688fc89a748f4aa461bb33abe624e36b
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/core/machine.c
M include/hw/core/boards.h
Log Message:
-----------
hw/core/machine: Remove hw_compat_2_7[] array
The hw_compat_2_7[] array was only used by the pc-q35-2.7 and
pc-i440fx-2.7 machines, which got removed. Remove it.
Reviewed-by: Mark Cave-Ayland <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Reviewed-by: Igor Mammedov <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 79ecb998a49986570a5d2dd2eeae55a759d9bc31
https://github.com/qemu/qemu/commit/79ecb998a49986570a5d2dd2eeae55a759d9bc31
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/i386/intel_iommu.c
M include/hw/i386/intel_iommu.h
Log Message:
-----------
hw/i386/intel_iommu: Remove IntelIOMMUState::buggy_eim field
The IntelIOMMUState::buggy_eim boolean was only set in
the hw_compat_2_7[] array, via the 'x-buggy-eim=true'
property. We removed all machines using that array, lets
remove that property, simplifying vtd_decide_config().
Reviewed-by: Mark Cave-Ayland <[email protected]>
Reviewed-by: Igor Mammedov <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: da5c0274ea2cff5e4c5be759ee7cafa386e7052c
https://github.com/qemu/qemu/commit/da5c0274ea2cff5e4c5be759ee7cafa386e7052c
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/virtio/virtio-pci.c
M include/hw/virtio/virtio-pci.h
Log Message:
-----------
hw/virtio/virtio-pci: Remove VirtIOPCIProxy::ignore_backend_features field
The VirtIOPCIProxy::ignore_backend_features boolean was only set
in the hw_compat_2_7[] array, via the 'x-ignore-backend-features=on'
property. We removed all machines using that array, lets remove
that property, simplify by only using the default version.
Reviewed-by: Mark Cave-Ayland <[email protected]>
Reviewed-by: Igor Mammedov <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: d0660e5b7fc7e97926232d13d2500a16df32b310
https://github.com/qemu/qemu/commit/d0660e5b7fc7e97926232d13d2500a16df32b310
Author: Philippe Mathieu-Daudé <[email protected]>
Date: 2026-02-07 (Sat, 07 Feb 2026)
Changed paths:
M hw/char/virtio-serial-bus.c
M include/hw/virtio/virtio-serial.h
Log Message:
-----------
hw/char/virtio-serial: Do not expose the 'emergency-write' property
The VIRTIO_CONSOLE_F_EMERG_WRITE feature bit was only set
in the hw_compat_2_7[] array, via the 'emergency-write=off'
property. We removed all machines using that array, lets remove
that property. All instances have this feature bit set and
it can not be disabled. VirtIOSerial::host_features mask is
now unused, remove it.
Reviewed-by: Mark Cave-Ayland <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Reviewed-by: Igor Mammedov <[email protected]>
Signed-off-by: Philippe Mathieu-Daudé <[email protected]>
Signed-off-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 45a62568305cbcaa886da548234eede21587d6ba
https://github.com/qemu/qemu/commit/45a62568305cbcaa886da548234eede21587d6ba
Author: Eric K <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M chardev/char-udp.c
M tests/unit/test-char.c
Log Message:
-----------
char-udp: Fix initial backend open status
This patch removes the `*be_opened = false` override for the UDP chardev
backend. Since UDP is connectionless it never sends a `CHR_EVENT_OPENED`
so it is never marked open. This causes some frontends (e.g. virtio-serial)
to never perform any operations on the socket.
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2993
Signed-off-by: Eric K <[email protected]>
Reviewed-by: Marc-André Lureau <[email protected]>
Message-Id: <[email protected]>
Commit: bd5058cf081bd76143aa39a8a2443f63285a62cf
https://github.com/qemu/qemu/commit/bd5058cf081bd76143aa39a8a2443f63285a62cf
Author: Vladimir Sementsov-Ogievskiy <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M chardev/spice.c
M hw/display/qxl.c
M include/ui/qemu-spice.h
M meson.build
M ui/spice-display.c
Log Message:
-----------
ui/spice: Require spice-server >= 0.15.0
For major distributions we have now:
Debian 13: 0.15.2
Ubuntu 22.04: 0.15.0
RHEL-9/CentOS Stream 9: SPICE is removed
Fedora 42: 0.15.1
OpenSUSE Leap 15.4: 0.15.0
Time to update the dependancy in QEMU and drop almost all
SPICE_SERVER_VERSION checks.
Suggested-by: Marc-André Lureau <[email protected]>
Signed-off-by: Vladimir Sementsov-Ogievskiy <[email protected]>
Reviewed-by: Marc-André Lureau <[email protected]>
Message-Id: <[email protected]>
Commit: 2a545fd85133cc2fe9935333c56f7cf6c158dfd9
https://github.com/qemu/qemu/commit/2a545fd85133cc2fe9935333c56f7cf6c158dfd9
Author: Vladimir Sementsov-Ogievskiy <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M hw/display/qxl.c
M include/ui/qemu-spice.h
M ui/spice-display.c
Log Message:
-----------
ui/spice: drop SPICE_HAS_ATTACHED_WORKER macro
Since previous commit it is always 1. Let's just drop it.
Signed-off-by: Vladimir Sementsov-Ogievskiy <[email protected]>
Reviewed-by: Marc-André Lureau <[email protected]>
Message-Id: <[email protected]>
Commit: 6b4f8e7488423f845cad604549cbf2fba4cfeb52
https://github.com/qemu/qemu/commit/6b4f8e7488423f845cad604549cbf2fba4cfeb52
Author: Vladimir Sementsov-Ogievskiy <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M chardev/baum.c
M chardev/char-console.c
M chardev/char-fe.c
M chardev/char-file.c
M chardev/char-hub.c
M chardev/char-mux.c
M chardev/char-null.c
M chardev/char-parallel.c
M chardev/char-pipe.c
M chardev/char-pty.c
M chardev/char-ringbuf.c
M chardev/char-serial.c
M chardev/char-socket.c
M chardev/char-stdio.c
M chardev/char-udp.c
M chardev/char-win-stdio.c
M chardev/char.c
M chardev/msmouse.c
M chardev/spice.c
M chardev/wctablet.c
M gdbstub/system.c
M include/chardev/char.h
M scripts/codeconverter/codeconverter/test_regexps.py
M ui/console-vc.c
M ui/dbus-chardev.c
M ui/dbus.c
M ui/gtk.c
M ui/spice-app.c
M ui/vdagent.c
Log Message:
-----------
chardev: ChardevClass: consistent naming for handlers
Most handlers have name prefixed with "chr_". That's a good practice
which helps to grep them. Convert the rest: .parse, .open,
get/set_msgfds.
Signed-off-by: Vladimir Sementsov-Ogievskiy <[email protected]>
Reviewed-by: Marc-André Lureau <[email protected]>
Message-Id: <[email protected]>
Commit: 0bc5c851f83dd853942ef6a885664382d0ea3867
https://github.com/qemu/qemu/commit/0bc5c851f83dd853942ef6a885664382d0ea3867
Author: Vladimir Sementsov-Ogievskiy <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M chardev/char-console.c
M chardev/char-file.c
M chardev/char-hub.c
M chardev/char-mux.c
M chardev/char-parallel.c
M chardev/char-pipe.c
M chardev/char-pty.c
M chardev/char-ringbuf.c
M chardev/char-serial.c
M chardev/char-socket.c
M chardev/char-stdio.c
M chardev/char-udp.c
M chardev/char-win-stdio.c
M chardev/msmouse.c
M chardev/spice.c
M gdbstub/system.c
M scripts/codeconverter/codeconverter/test_regexps.py
M ui/gtk.c
Log Message:
-----------
chardev: consistent naming for ChardevClass handlers implementations
Most handlers implementations has name like {unit_name}_{handler_name},
which is usual and well-recognized pattern. Convert the rest (especially
with useless qemu_ prefixes and misleading qmp_ prefixes) to the common
pattern.
Signed-off-by: Vladimir Sementsov-Ogievskiy <[email protected]>
Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Marc-André Lureau <[email protected]>
Message-Id: <[email protected]>
Commit: 0c5d04867a3ab35172d0c2f8f25adad0b7162950
https://github.com/qemu/qemu/commit/0c5d04867a3ab35172d0c2f8f25adad0b7162950
Author: Vladimir Sementsov-Ogievskiy <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M chardev/baum.c
M chardev/char-console.c
M chardev/char-file.c
M chardev/char-hub.c
M chardev/char-mux.c
M chardev/char-null.c
M chardev/char-parallel.c
M chardev/char-pipe.c
M chardev/char-pty.c
M chardev/char-ringbuf.c
M chardev/char-serial.c
M chardev/char-socket.c
M chardev/char-stdio.c
M chardev/char-udp.c
M chardev/char-win-stdio.c
M chardev/char.c
M chardev/msmouse.c
M chardev/spice.c
M chardev/wctablet.c
M gdbstub/system.c
M include/chardev/char.h
M ui/console-vc.c
M ui/dbus-chardev.c
M ui/gtk.c
M ui/spice-app.c
M ui/vdagent.c
Log Message:
-----------
chardev: .chr_open(): drop be_opened parameter
The logic around the parameter is rather tricky. Let's instead
explicitly send CHR_EVENT_OPENED in all backends where needed.
Signed-off-by: Vladimir Sementsov-Ogievskiy <[email protected]>
[ Marc-André - add CHR_EVENT_OPENED in udp_chr_open() ]
Signed-off-by: Marc-André Lureau <[email protected]>
Message-Id: <[email protected]>
Commit: 8c84f31acef5a6e263c9f8ea65a4e6cf935addfe
https://github.com/qemu/qemu/commit/8c84f31acef5a6e263c9f8ea65a4e6cf935addfe
Author: Vladimir Sementsov-Ogievskiy <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M chardev/baum.c
M chardev/char-console.c
M chardev/char-file.c
M chardev/char-hub.c
M chardev/char-mux.c
M chardev/char-null.c
M chardev/char-parallel.c
M chardev/char-pipe.c
M chardev/char-pty.c
M chardev/char-ringbuf.c
M chardev/char-serial.c
M chardev/char-socket.c
M chardev/char-stdio.c
M chardev/char-udp.c
M chardev/char-win-stdio.c
M chardev/msmouse.c
M chardev/spice.c
M chardev/wctablet.c
M gdbstub/system.c
M include/chardev/char.h
M ui/console-vc.c
M ui/dbus-chardev.c
M ui/gtk.c
M ui/spice-app.c
M ui/vdagent.c
Log Message:
-----------
chardev: .chr_open(): add boolean return value
Add boolean return value to follow common recommendations for functions
with errrp in include/qapi/error.h
Signed-off-by: Vladimir Sementsov-Ogievskiy <[email protected]>
Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Marc-André Lureau <[email protected]>
Message-Id: <[email protected]>
Commit: 1116f5176e7a2f501f43d725757fa0181266862f
https://github.com/qemu/qemu/commit/1116f5176e7a2f501f43d725757fa0181266862f
Author: Vladimir Sementsov-Ogievskiy <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M chardev/char-pty.c
Log Message:
-----------
chardev/char-pty: store pty_name into PtyChardev state
We'll use it in following commit.
Note the bonus: stop use blind strcpy().
Signed-off-by: Vladimir Sementsov-Ogievskiy <[email protected]>
Reviewed-by: Marc-André Lureau <[email protected]>
Message-Id: <[email protected]>
Commit: e43eb54dc85bd472713830dad00f1351e6f1ffae
https://github.com/qemu/qemu/commit/e43eb54dc85bd472713830dad00f1351e6f1ffae
Author: Vladimir Sementsov-Ogievskiy <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M chardev/char-pty.c
M chardev/char.c
M hw/char/xen_console.c
M include/chardev/char.h
Log Message:
-----------
chardev: introduce .chr_get_pty_name() handler
Currently we do two wrong things:
1. Abuse s->filename to get pty_name from it
2. Violate layering with help of CHARDEV_IS_PTY()
Let's get rid of both, and introduce correct way to get pty name in
generic code, if available.
Signed-off-by: Vladimir Sementsov-Ogievskiy <[email protected]>
Reviewed-by: Marc-André Lureau <[email protected]>
Message-Id: <[email protected]>
Commit: bc339129b6904c832ea990078efdb6dfbe5fc9db
https://github.com/qemu/qemu/commit/bc339129b6904c832ea990078efdb6dfbe5fc9db
Author: Vladimir Sementsov-Ogievskiy <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M chardev/char-pty.c
M chardev/char-socket.c
M chardev/char.c
M hw/misc/ivshmem-pci.c
M include/chardev/char.h
Log Message:
-----------
chardev: rework filename handling
Instead of checking, did backend set the filename state or not, let's
be stateless: filename is needed rarely, so, let's just have a generic
function (with optional implementation by backends) to get it.
Signed-off-by: Vladimir Sementsov-Ogievskiy <[email protected]>
[ Marc-André - fix leak in ivshmem-pci.c ]
Signed-off-by: Marc-André Lureau <[email protected]>
Message-Id: <[email protected]>
Commit: 518d1458bdb0f83e992057fd1fa39b768c3216ae
https://github.com/qemu/qemu/commit/518d1458bdb0f83e992057fd1fa39b768c3216ae
Author: Vladimir Sementsov-Ogievskiy <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M chardev/char.c
Log Message:
-----------
chardev/char: qemu_char_open(): add return value
Accordingly with recommendations in include/qapi/error.h accompany
errp by boolean return value and get rid of error propagation.
Signed-off-by: Vladimir Sementsov-Ogievskiy <[email protected]>
Reviewed-by: Philippe Mathieu-Daudé <[email protected]>
Reviewed-by: Marc-André Lureau <[email protected]>
Message-Id: <[email protected]>
Commit: fa25379f760c595c26af669a8266258bc0635437
https://github.com/qemu/qemu/commit/fa25379f760c595c26af669a8266258bc0635437
Author: Vladimir Sementsov-Ogievskiy <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M chardev/char.c
Log Message:
-----------
char: qemu_chr_write_log() use qemu_write_full()
logfd is blocking, so we don't need to care about EAGAIN.
Let's simply use qemu_write_full().
Signed-off-by: Vladimir Sementsov-Ogievskiy <[email protected]>
Reviewed-by: Marc-André Lureau <[email protected]>
Message-ID: <[email protected]>
Commit: 2eed5472ec424d217786af97e6212e68e49c5d0b
https://github.com/qemu/qemu/commit/2eed5472ec424d217786af97e6212e68e49c5d0b
Author: Vladimir Sementsov-Ogievskiy <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M include/qemu/error-report.h
M util/error-report.c
Log Message:
-----------
error-report: make real_time_iso8601() public
To be reused in the following commit.
Signed-off-by: Vladimir Sementsov-Ogievskiy <[email protected]>
Reviewed-by: Markus Armbruster <[email protected]>
Reviewed-by: Marc-André Lureau <[email protected]>
Message-ID: <[email protected]>
Commit: b108dcbebc05b65ca2db2d506f2e93204fb2424a
https://github.com/qemu/qemu/commit/b108dcbebc05b65ca2db2d506f2e93204fb2424a
Author: Vladimir Sementsov-Ogievskiy <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M chardev/char.c
M include/chardev/char.h
M qapi/char.json
Log Message:
-----------
chardev: add logtimestamp option
Add an option to inject timestamps into serial log file.
That simplifies debugging a lot, when you can simply compare
QEMU logs with guest console logs.
Signed-off-by: Vladimir Sementsov-Ogievskiy <[email protected]>
Acked-by: Markus Armbruster <[email protected]>
Reviewed-by: Marc-André Lureau <[email protected]>
Message-ID: <[email protected]>
Commit: 98ba0e479771a391137119264156e9661508bbc7
https://github.com/qemu/qemu/commit/98ba0e479771a391137119264156e9661508bbc7
Author: Samuel Thibault <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M chardev/baum.c
Log Message:
-----------
baum: Add copy/paste bindings
Brltty interprets
- TL1 (i.e. Display1) + routing as clip new
- TL2 (i.e. Display2) + routing as clip add
- TR1 (i.e. Display4) + routing as copy line
- TR2 (i.e. Display5) + routing as copy rect
https://github.com/brltty/brltty/blob/master/Tables/Input/bm/routing6.kti
- BAUM_TL1+BAUM_TL2+BAUM_TL3+BAUM_TR1 (i.e.
Display1+Display2+Display3+Display4) as paste
https://github.com/brltty/brltty/blob/master/Tables/Input/bm/d6.kti
Signed-off-by: Samuel Thibault <[email protected]>
[ Marc-André - style fixes ]
Signed-off-by: Marc-André Lureau <[email protected]>
Message-ID: <[email protected]>
Commit: 4f0dd09e61b080c27589fe35b575503783c5a256
https://github.com/qemu/qemu/commit/4f0dd09e61b080c27589fe35b575503783c5a256
Author: Aidan Khoury <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M target/i386/cpu.c
Log Message:
-----------
i386/cpu: Fix incorrect initializer in Diamond Rapids definition
The new Diamond Rapids x86 cpu model definition that was added in 7a6dd8bde1
has an unexpected comma in the `.features[FEAT_VMX_EXIT_CTLS]` subobject
initializer, causing the prior initialization to be overridden. For this
reason `VMX_VM_EXIT_SAVE_DEBUG_CONTROLS | VMX_VM_EXIT_HOST_ADDR_SPACE_SIZE`
is not included.
Fix this by replacing the comma with the missing bitwise OR to properly
combine all the flags into a single bitmask value.
Fixes: 7a6dd8bde159 ("i386/cpu: Add CPU model for Diamond Rapids")
Signed-off-by: Aidan Khoury <[email protected]>
Commit: 383374465155c682ddd6bb4002cdcd09995c9b7f
https://github.com/qemu/qemu/commit/383374465155c682ddd6bb4002cdcd09995c9b7f
Author: Dongli Zhang <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M target/i386/kvm/kvm.c
Log Message:
-----------
target/i386/kvm: set KVM_PMU_CAP_DISABLE if "-pmu" is configured
Although AMD PERFCORE and PerfMonV2 are removed when "-pmu" is configured,
there is no way to fully disable KVM AMD PMU virtualization. Neither
"-cpu host,-pmu" nor "-cpu EPYC" achieves this.
As a result, the following message still appears in the VM dmesg:
[ 0.263615] Performance Events: AMD PMU driver.
However, the expected output should be:
[ 0.596381] Performance Events: PMU not available due to virtualization,
using software events only.
[ 0.600972] NMI watchdog: Perf NMI watchdog permanently disabled
This occurs because AMD does not use any CPUID bit to indicate PMU
availability.
To address this, KVM_CAP_PMU_CAPABILITY is used to set KVM_PMU_CAP_DISABLE
when "-pmu" is configured.
Signed-off-by: Dongli Zhang <[email protected]>
Reviewed-by: Xiaoyao Li <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Reviewed-by: Dapeng Mi <[email protected]>
Reviewed-by: Zide Chen <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 7b5d7096294c2594411dc4cbb527a716e9efbba7
https://github.com/qemu/qemu/commit/7b5d7096294c2594411dc4cbb527a716e9efbba7
Author: Dongli Zhang <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M target/i386/kvm/kvm.c
Log Message:
-----------
target/i386/kvm: extract unrelated code out of kvm_x86_build_cpuid()
The initialization of 'has_architectural_pmu_version',
'num_architectural_pmu_gp_counters', and
'num_architectural_pmu_fixed_counters' is unrelated to the process of
building the CPUID.
Extract them out of kvm_x86_build_cpuid().
In addition, use cpuid_find_entry() instead of cpu_x86_cpuid(), because
CPUID has already been filled at this stage.
Signed-off-by: Dongli Zhang <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Reviewed-by: Dapeng Mi <[email protected]>
Reviewed-by: Zide Chen <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 4e041b2be1a95d26129c5245aae5a814dad4e8d9
https://github.com/qemu/qemu/commit/4e041b2be1a95d26129c5245aae5a814dad4e8d9
Author: Dongli Zhang <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M target/i386/kvm/kvm.c
Log Message:
-----------
target/i386/kvm: rename architectural PMU variables
AMD does not have what is commonly referred to as an architectural PMU.
Therefore, we need to rename the following variables to be applicable for
both Intel and AMD:
- has_architectural_pmu_version
- num_architectural_pmu_gp_counters
- num_architectural_pmu_fixed_counters
For Intel processors, the meaning of pmu_version remains unchanged.
For AMD processors:
pmu_version == 1 corresponds to versions before AMD PerfMonV2.
pmu_version == 2 corresponds to AMD PerfMonV2.
Signed-off-by: Dongli Zhang <[email protected]>
Reviewed-by: Dapeng Mi <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Reviewed-by: Sandipan Das <[email protected]>
Reviewed-by: Zide Chen <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 4c7f05232cd1db5db114d36be2b210d24f1b9ad3
https://github.com/qemu/qemu/commit/4c7f05232cd1db5db114d36be2b210d24f1b9ad3
Author: Dongli Zhang <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M target/i386/cpu.h
M target/i386/kvm/kvm.c
Log Message:
-----------
target/i386/kvm: reset AMD PMU registers during VM reset
QEMU uses the kvm_get_msrs() function to save Intel PMU registers from KVM
and kvm_put_msrs() to restore them to KVM. However, there is no support for
AMD PMU registers. Currently, pmu_version and num_pmu_gp_counters are
initialized based on cpuid(0xa), which does not apply to AMD processors.
For AMD CPUs, prior to PerfMonV2, the number of general-purpose registers
is determined based on the CPU version.
To address this issue, we need to add support for AMD PMU registers.
Without this support, the following problems can arise:
1. If the VM is reset (e.g., via QEMU system_reset or VM kdump/kexec) while
running "perf top", the PMU registers are not disabled properly.
2. Despite x86_cpu_reset() resetting many registers to zero, kvm_put_msrs()
does not handle AMD PMU registers, causing some PMU events to remain
enabled in KVM.
3. The KVM kvm_pmc_speculative_in_use() function consistently returns true,
preventing the reclamation of these events. Consequently, the
kvm_pmc->perf_event remains active.
4. After a reboot, the VM kernel may report the following error:
[ 0.092011] Performance Events: Fam17h+ core perfctr, Broken BIOS detected,
complain to your hardware vendor.
[ 0.092023] [Firmware Bug]: the BIOS has corrupted hw-PMU resources (MSR
c0010200 is 530076)
5. In the worst case, the active kvm_pmc->perf_event may inject unknown
NMIs randomly into the VM kernel:
[...] Uhhuh. NMI received for unknown reason 30 on CPU 0.
To resolve these issues, we propose resetting AMD PMU registers during the
VM reset process.
Signed-off-by: Dongli Zhang <[email protected]>
Reviewed-by: Dapeng Mi <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: e587632c228e1348b64562aa76b99792e6658ad8
https://github.com/qemu/qemu/commit/e587632c228e1348b64562aa76b99792e6658ad8
Author: Dongli Zhang <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M target/i386/cpu.h
M target/i386/kvm/kvm.c
Log Message:
-----------
target/i386/kvm: support perfmon-v2 for reset
Since perfmon-v2, the AMD PMU supports additional registers. This update
includes get/put functionality for these extra registers.
Similar to the implementation in KVM:
- MSR_CORE_PERF_GLOBAL_STATUS and MSR_AMD64_PERF_CNTR_GLOBAL_STATUS both
use env->msr_global_status.
- MSR_CORE_PERF_GLOBAL_CTRL and MSR_AMD64_PERF_CNTR_GLOBAL_CTL both use
env->msr_global_ctrl.
- MSR_CORE_PERF_GLOBAL_OVF_CTRL and MSR_AMD64_PERF_CNTR_GLOBAL_STATUS_CLR
both use env->msr_global_ovf_ctrl.
No changes are needed for vmstate_msr_architectural_pmu or
pmu_enable_needed().
Signed-off-by: Dongli Zhang <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Reviewed-by: Sandipan Das <[email protected]>
Reviewed-by: Zide Chen <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 50bad63097e4969356274a7d34807190159903e2
https://github.com/qemu/qemu/commit/50bad63097e4969356274a7d34807190159903e2
Author: Chandan Somani <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M block/accounting.c
M hw/core/qdev-properties.c
M hw/input/stellaris_gamepad.c
M hw/intc/arm_gicv3_common.c
M hw/intc/rx_icu.c
M hw/misc/arm_sysctl.c
M hw/misc/mps2-scc.c
M hw/net/rocker/rocker.c
M hw/nvram/xlnx-efuse.c
M hw/nvram/xlnx-versal-efuse-ctrl.c
M hw/virtio/virtio-iommu-pci.c
Log Message:
-----------
qdev: Free property array on release
Before this patch, users of the property array would free the
array themselves in their cleanup functions. This causes
inconsistencies where some users leak the array and some free them.
This patch makes it so that the property array's release function
frees the property array (instead of just its elements). It fixes any
leaks and requires less code.
DEFINE_PROP_ARRAY leakers that are fixed in this patch:
ebpf-rss_fds in hw/net/virtio-net.c
rnmi_irqvec, rnmi_excpvec in hw/riscv/riscv_hart.c
common.display_modes in hw/display/apple-gfx-mmio.m
common.display_modes in hw/display/apple-gfx-pci.m
Signed-off-by: Chandan Somani <[email protected]>
Reviewed-by: Stefan Hajnoczi <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 396b3fcecf910b8a733f9a8d89f142fffd7c0f1a
https://github.com/qemu/qemu/commit/396b3fcecf910b8a733f9a8d89f142fffd7c0f1a
Author: Marc-André Lureau <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M hw/core/qdev-properties.c
Log Message:
-----------
qdev: make release_string() idempotent
So it can eventually be called multiple times safely.
Signed-off-by: Marc-André Lureau <[email protected]>
Reviewed-by: Stefan Berger <[email protected]>
Link:
https://lore.kernel.org/r/[email protected]
Reviewed-by: Stefan Hajnoczi <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: b4579255d1d6d723abeef4825e4805524451f318
https://github.com/qemu/qemu/commit/b4579255d1d6d723abeef4825e4805524451f318
Author: Marc-André Lureau <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M hw/core/qdev-properties-system.c
Log Message:
-----------
qdev: make release_drive() idempotent
So it can eventually be called multiple times safely.
Signed-off-by: Marc-André Lureau <[email protected]>
Reviewed-by: Stefan Berger <[email protected]>
Link:
https://lore.kernel.org/r/[email protected]
Reviewed-by: Stefan Hajnoczi <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 95d69539a4d29b3533f6f3c6807fa918a835d6e2
https://github.com/qemu/qemu/commit/95d69539a4d29b3533f6f3c6807fa918a835d6e2
Author: Marc-André Lureau <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M backends/tpm/tpm_util.c
Log Message:
-----------
qdev: make release_tpm() idempotent
So it can eventually be called multiple times safely.
Signed-off-by: Marc-André Lureau <[email protected]>
Reviewed-by: Stefan Berger <[email protected]>
Link:
https://lore.kernel.org/r/[email protected]
Reviewed-by: Stefan Hajnoczi <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 69345f948ab6051793c034ecedc97c68ca49649d
https://github.com/qemu/qemu/commit/69345f948ab6051793c034ecedc97c68ca49649d
Author: Marc-André Lureau <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M tests/unit/meson.build
A tests/unit/test-qdev.c
Log Message:
-----------
tests: add /qdev/free-properties test
Add a simple qdev test to check that allocated properties get freed with
the object. This test exhibited array leaks before the fixes.
Signed-off-by: Marc-André Lureau <[email protected]>
Reviewed-by: Stefan Berger <[email protected]>
Link:
https://lore.kernel.org/r/[email protected]
Reviewed-by: Stefan Hajnoczi <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 626e5dc999353d2c4a89febd46301bfec6daa3a7
https://github.com/qemu/qemu/commit/626e5dc999353d2c4a89febd46301bfec6daa3a7
Author: Magnus Kulke <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M accel/mshv/mem.c
M accel/mshv/mshv-all.c
M accel/mshv/trace-events
M include/system/mshv_int.h
M target/i386/mshv/mshv-cpu.c
Log Message:
-----------
accel/mshv: Remove remap overlapping mappings code
This change removes userland code that worked around a restriction
in the mshv driver in the 6.18 kernel: regions from userland
couldn't be mapped to multiple regions in the kernel. We maintained a
shadow mapping table in qemu and used a heuristic to swap in a requested
region in case of UNMAPPED_GPA exits.
However, this heuristic wasn't reliable in all cases, since HyperV
behaviour is not 100% reliable across versions. HyperV itself doesn't
prohibit to map regions at multiple places into the guest, so the
restriction has been removed in the mshv driver.
Hence we can remove the remapping code. Effectively this will mandate a
6.19 kernel, if the workload attempt to map e.g. BIOS to multiple
reagions. I still think it's the right call to remove this logic:
- The workaround only seems to work reliably with a certain revision
of HyperV as a nested hypervisor.
- We expect Direct Virtualization (L1VH) to be the main platform for
the mshv accelerator, which also requires a 6.19 kernel
This reverts commit efc4093358511a58846a409b965213aa1bb9f31a.
Signed-off-by: Magnus Kulke <[email protected]>
Acked-by: Wei Liu (Microsoft) <[email protected]>
Tested-by: Mohamed Mediouni <[email protected]>
Link:
https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 7db36b822316a830ae803e903a12e920e3273b85
https://github.com/qemu/qemu/commit/7db36b822316a830ae803e903a12e920e3273b85
Author: Magnus Kulke <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M target/i386/mshv/mshv-cpu.c
Log Message:
-----------
target/i386/mshv: remove unused optimization of gva=>gpa translation
The removed parameters are remnants of a prior attempt to optimize
gva=>gpa translation. Currently there is only one call site and it's
not using it. So we can remove it as dead code.
Signed-off-by: Magnus Kulke <[email protected]>
Reviewed-by: Wei Liu <[email protected]>
Link:
https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
Commit: 4dd433550d5f9aea937a4399038a93badf3c1db4
https://github.com/qemu/qemu/commit/4dd433550d5f9aea937a4399038a93badf3c1db4
Author: Peter Maydell <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M chardev/baum.c
M chardev/char-console.c
M chardev/char-fe.c
M chardev/char-file.c
M chardev/char-hub.c
M chardev/char-mux.c
M chardev/char-null.c
M chardev/char-parallel.c
M chardev/char-pipe.c
M chardev/char-pty.c
M chardev/char-ringbuf.c
M chardev/char-serial.c
M chardev/char-socket.c
M chardev/char-stdio.c
M chardev/char-udp.c
M chardev/char-win-stdio.c
M chardev/char.c
M chardev/msmouse.c
M chardev/spice.c
M chardev/wctablet.c
M gdbstub/system.c
M hw/char/xen_console.c
M hw/display/qxl.c
M hw/misc/ivshmem-pci.c
M include/chardev/char.h
M include/qemu/error-report.h
M include/ui/qemu-spice.h
M meson.build
M qapi/char.json
M scripts/codeconverter/codeconverter/test_regexps.py
M tests/unit/test-char.c
M ui/console-vc.c
M ui/dbus-chardev.c
M ui/dbus.c
M ui/gtk.c
M ui/spice-app.c
M ui/spice-display.c
M ui/vdagent.c
M util/error-report.c
Log Message:
-----------
Merge tag 'char-pull-request' of https://gitlab.com/marcandre.lureau/qemu
into staging
chardev patches
# -----BEGIN PGP SIGNATURE-----
#
# iQIzBAABCgAdFiEEh6m9kz+HxgbSdvYt2ujhCXWWnOUFAmmO8tUACgkQ2ujhCXWW
# nOW1sg//bqvhuJeHHQoDzNM5qgPTwLoqKYOt5xx2MZkH5oRoG0L6RfjNKqs8DPVc
# rnWFNr6YYHP+AjtYSoOFZZZugQyYDggE6Defkb52ScMNgQF0MSYXfZz6gEllgbzw
# +xvSsS1MztwpfkcUGaV5GL6PatuhkmioX0v083w0AbyHhuCF5zjKPaW6tNb9iwdz
# A3pnPkZSdGQ876R53vRY0OhEDFD7aT/jiVPiN6rzjxaz7CL5nAGy3PQtXWnJptCd
# YPgl5CIKe0NsTBD+h4rq7GtU8z2dNGW+wocXuyBvBDxkfVgjWEi0yJ9C1tY3focG
# cZxuaC8GLpbowdNqBUdJzjOdj7GIn8pG/ASPrjYjA3igFspdr8vRfEiS01KnBNi7
# 9Jzg6A4uHJI25ydPEAGRjbWjPYuElrEoLO2WUG3NWlb2sAoj+WEhQyD6C9+Mp0KY
# 9aDAClzOLylqZLe4vLrMjR9MGHE7nAilvwFTVeD3CBEySmBvDgygzMzuDXq8D5NB
# nsZslPy+WXJAydTvCfB8eS3NGZWUz2MQmHsdLGBheSLnLoAKoC4p9BFx09XgMLAw
# hV0n0/0v9XtOLwvGILy7ejxt0sZXHFI3avy1df8gMSeP2VpX7DXnd745fZJQt3xB
# ppwYRg9MHHuIb1KoVvfck34WHJ6bhSHROEe2I/fdVFhCXg2eyms=
# =CYVg
# -----END PGP SIGNATURE-----
# gpg: Signature made Fri Feb 13 09:45:57 2026 GMT
# gpg: using RSA key 87A9BD933F87C606D276F62DDAE8E10975969CE5
# gpg: Good signature from "Marc-André Lureau <[email protected]>"
[full]
# gpg: aka "Marc-André Lureau <[email protected]>"
[full]
# Primary key fingerprint: 87A9 BD93 3F87 C606 D276 F62D DAE8 E109 7596 9CE5
* tag 'char-pull-request' of https://gitlab.com/marcandre.lureau/qemu:
baum: Add copy/paste bindings
chardev: add logtimestamp option
error-report: make real_time_iso8601() public
char: qemu_chr_write_log() use qemu_write_full()
chardev/char: qemu_char_open(): add return value
chardev: rework filename handling
chardev: introduce .chr_get_pty_name() handler
chardev/char-pty: store pty_name into PtyChardev state
chardev: .chr_open(): add boolean return value
chardev: .chr_open(): drop be_opened parameter
chardev: consistent naming for ChardevClass handlers implementations
chardev: ChardevClass: consistent naming for handlers
ui/spice: drop SPICE_HAS_ATTACHED_WORKER macro
ui/spice: Require spice-server >= 0.15.0
char-udp: Fix initial backend open status
Signed-off-by: Peter Maydell <[email protected]>
Commit: ece408818d27f745ef1b05fb3cc99a1e7a5bf580
https://github.com/qemu/qemu/commit/ece408818d27f745ef1b05fb3cc99a1e7a5bf580
Author: Peter Maydell <[email protected]>
Date: 2026-02-13 (Fri, 13 Feb 2026)
Changed paths:
M accel/kvm/kvm-all.c
M accel/mshv/mem.c
M accel/mshv/mshv-all.c
M accel/mshv/trace-events
M backends/tpm/tpm_util.c
M block/accounting.c
M docs/specs/acpi_cpu_hotplug.rst
M hw/acpi/acpi-cpu-hotplug-stub.c
M hw/acpi/cpu.c
R hw/acpi/cpu_hotplug.c
M hw/acpi/generic_event_device.c
M hw/acpi/ich9.c
M hw/acpi/meson.build
M hw/acpi/piix4.c
M hw/arm/virt.c
M hw/audio/pcspk.c
M hw/char/virtio-serial-bus.c
M hw/core/machine.c
M hw/core/qdev-properties-system.c
M hw/core/qdev-properties.c
M hw/hppa/machine.c
M hw/i386/acpi-build.c
M hw/i386/fw_cfg.c
M hw/i386/intel_iommu.c
M hw/i386/microvm.c
M hw/i386/multiboot.c
M hw/i386/pc.c
M hw/i386/pc_piix.c
M hw/i386/pc_q35.c
M hw/i386/x86-common.c
M hw/i386/x86.c
M hw/input/stellaris_gamepad.c
M hw/intc/apic_common.c
M hw/intc/arm_gicv3_common.c
M hw/intc/rx_icu.c
M hw/loongarch/fw_cfg.c
M hw/loongarch/virt-acpi-build.c
M hw/mips/loongson3_virt.c
M hw/misc/arm_sysctl.c
M hw/misc/mps2-scc.c
M hw/net/rocker/rocker.c
M hw/nvram/fw_cfg.c
M hw/nvram/xlnx-efuse.c
M hw/nvram/xlnx-versal-efuse-ctrl.c
M hw/riscv/virt.c
M hw/virtio/virtio-iommu-pci.c
M hw/virtio/virtio-mmio.c
M hw/virtio/virtio-pci.c
M include/hw/acpi/cpu.h
M include/hw/acpi/ich9.h
M include/hw/acpi/piix4.h
M include/hw/core/boards.h
M include/hw/i386/apic_internal.h
M include/hw/i386/intel_iommu.h
M include/hw/i386/pc.h
M include/hw/i386/x86.h
M include/hw/nvram/fw_cfg.h
M include/hw/virtio/virtio-mmio.h
M include/hw/virtio/virtio-pci.h
M include/hw/virtio/virtio-serial.h
M include/system/mshv_int.h
M pc-bios/meson.build
R pc-bios/multiboot.bin
M pc-bios/optionrom/Makefile
R pc-bios/optionrom/linuxboot.S
R pc-bios/optionrom/multiboot.S
M pc-bios/optionrom/multiboot_dma.S
M pc-bios/optionrom/optionrom.h
M qapi/run-state.json
M system/runstate.c
M target/i386/cpu-system.c
M target/i386/cpu.c
M target/i386/cpu.h
M target/i386/kvm/kvm.c
M target/i386/mshv/mshv-cpu.c
M tests/data/acpi/x86/pc/DSDT
M tests/data/acpi/x86/pc/DSDT.acpierst
M tests/data/acpi/x86/pc/DSDT.acpihmat
M tests/data/acpi/x86/pc/DSDT.bridge
M tests/data/acpi/x86/pc/DSDT.cphp
M tests/data/acpi/x86/pc/DSDT.dimmpxm
M tests/data/acpi/x86/pc/DSDT.hpbridge
M tests/data/acpi/x86/pc/DSDT.hpbrroot
M tests/data/acpi/x86/pc/DSDT.ipmikcs
M tests/data/acpi/x86/pc/DSDT.memhp
M tests/data/acpi/x86/pc/DSDT.nohpet
M tests/data/acpi/x86/pc/DSDT.numamem
M tests/data/acpi/x86/pc/DSDT.roothp
M tests/data/acpi/x86/q35/DSDT
M tests/data/acpi/x86/q35/DSDT.acpierst
M tests/data/acpi/x86/q35/DSDT.acpihmat
M tests/data/acpi/x86/q35/DSDT.acpihmat-generic-x
M tests/data/acpi/x86/q35/DSDT.acpihmat-noinitiator
M tests/data/acpi/x86/q35/DSDT.applesmc
M tests/data/acpi/x86/q35/DSDT.bridge
M tests/data/acpi/x86/q35/DSDT.core-count
M tests/data/acpi/x86/q35/DSDT.core-count2
M tests/data/acpi/x86/q35/DSDT.cphp
M tests/data/acpi/x86/q35/DSDT.cxl
M tests/data/acpi/x86/q35/DSDT.dimmpxm
M tests/data/acpi/x86/q35/DSDT.ipmibt
M tests/data/acpi/x86/q35/DSDT.ipmismbus
M tests/data/acpi/x86/q35/DSDT.ivrs
M tests/data/acpi/x86/q35/DSDT.memhp
M tests/data/acpi/x86/q35/DSDT.mmio64
M tests/data/acpi/x86/q35/DSDT.multi-bridge
M tests/data/acpi/x86/q35/DSDT.noacpihp
M tests/data/acpi/x86/q35/DSDT.nohpet
M tests/data/acpi/x86/q35/DSDT.numamem
M tests/data/acpi/x86/q35/DSDT.pvpanic-isa
M tests/data/acpi/x86/q35/DSDT.thread-count
M tests/data/acpi/x86/q35/DSDT.thread-count2
M tests/data/acpi/x86/q35/DSDT.tis.tpm12
M tests/data/acpi/x86/q35/DSDT.tis.tpm2
M tests/data/acpi/x86/q35/DSDT.type4-count
M tests/data/acpi/x86/q35/DSDT.viot
M tests/data/acpi/x86/q35/DSDT.xapic
M tests/qtest/test-x86-cpuid-compat.c
M tests/unit/meson.build
A tests/unit/test-qdev.c
Log Message:
-----------
Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging
* hw/i386: Remove deprecated PC 2.6 and 2.7 machines
* i386/cpu: Fix incorrect initializer in Diamond Rapids definition
* qom: Clean up property release
* target/i386/kvm: set KVM_PMU_CAP_DISABLE if "-pmu" is configured
* target/i386/kvm: reset AMD and perfmon-v2 PMU registers during VM reset
* mshv: Cleanup
* target/i386: convert SEV-ES termination requests to guest panic events
# -----BEGIN PGP SIGNATURE-----
#
# iQFIBAABCgAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAmmO+kYUHHBib256aW5p
# QHJlZGhhdC5jb20ACgkQv/vSX3jHroPwIQf/XL4HXB7bYQH7LtTgsjmmxPpEqGuM
# 2QWvv1HurGf4pBCkBB7iFdzngSbJSzvtIM4D2KRuXVc99Ml8Do4kKGwDdtVfaM+I
# x+nsJfnSGA7tuNVQUUDEM1XWrnk3+O9oQxlk3elBWy8IBIjHFY1rv3FBdO9WkDpu
# AlaMITrX4R7u5gadCrxvAprbngNGlK220HZ+nxdxvf6mWkYMPqy1xtNzHIioG61V
# A94tdv/OZnUoQMd98c/yUvfST4/Gx6FeoEYfmyXGrnLM+Tc9es/xpN/mCYLdP3wA
# MDS170D2Z0zoZScLcpMfeqSn5cDYBMOSHBzqFpw2/FNVTO3td2qlSMLjzw==
# =AqB6
# -----END PGP SIGNATURE-----
# gpg: Signature made Fri Feb 13 10:17:42 2026 GMT
# gpg: using RSA key F13338574B662389866C7682BFFBD25F78C7AE83
# gpg: issuer "[email protected]"
# gpg: Good signature from "Paolo Bonzini <[email protected]>" [full]
# gpg: aka "Paolo Bonzini <[email protected]>" [full]
# Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4 E2F7 7E15 100C CD36 69B1
# Subkey fingerprint: F133 3857 4B66 2389 866C 7682 BFFB D25F 78C7 AE83
* tag 'for-upstream' of https://gitlab.com/bonzini/qemu: (41 commits)
target/i386/mshv: remove unused optimization of gva=>gpa translation
accel/mshv: Remove remap overlapping mappings code
tests: add /qdev/free-properties test
qdev: make release_tpm() idempotent
qdev: make release_drive() idempotent
qdev: make release_string() idempotent
qdev: Free property array on release
target/i386/kvm: support perfmon-v2 for reset
target/i386/kvm: reset AMD PMU registers during VM reset
target/i386/kvm: rename architectural PMU variables
target/i386/kvm: extract unrelated code out of kvm_x86_build_cpuid()
target/i386/kvm: set KVM_PMU_CAP_DISABLE if "-pmu" is configured
i386/cpu: Fix incorrect initializer in Diamond Rapids definition
hw/char/virtio-serial: Do not expose the 'emergency-write' property
hw/virtio/virtio-pci: Remove VirtIOPCIProxy::ignore_backend_features field
hw/i386/intel_iommu: Remove IntelIOMMUState::buggy_eim field
hw/core/machine: Remove hw_compat_2_7[] array
hw/audio/pcspk: Remove PCSpkState::migrate field
target/i386/cpu: Remove CPUX86State::full_cpuid_auto_level field
hw/i386/pc: Remove pc_compat_2_7[] array
...
Signed-off-by: Peter Maydell <[email protected]>
Compare: https://github.com/qemu/qemu/compare/4202b432a64b...ece408818d27
To unsubscribe from these emails, change your notification settings at
https://github.com/qemu/qemu/settings/notifications