The following changes since commit b69801dd6b1eb4d107f7c2f643adf0a4e3ec9124:
Merge tag 'for_upstream' of https://git.kernel.org/pub/scm/virt/kvm/mst/qemu into staging (2025-02-22 05:06:39 +0800)
are available in the Git repository at:
https://gitlab.com/bonzini/qemu.git tags/for-upstream
for you to fetch changes up to a4e749780bd20593c0c386612a51bf4d64a80132:
target/i386: Mask CMPLegacy bit in CPUID[0x80000001].ECX for Zhaoxin CPUs (2025-02-26 09:56:18 +0100)
----------------------------------------------------------------
* qom: Use command line syntax for default values in help
* i386: support cache topology with machine's configuration
* rust: fix duplicate symbols from monitor-fd.c
* rust: add module to convert between success/-errno and io::Result
* rust: move class_init implementation from trait to method
* pvg: configuration improvements
* kvm guestmemfd: replace assertion with error
* riscv: cleanups
* target/i386/hvf: cleanups to emulation
* target/i386: add Zhaoxin and Yongfeng CPU model
----------------------------------------------------------------
Akihiko Odaki (1):
qom: Use command line syntax for default values in help
Alireza Sanaee (1):
i386/cpu: add has_caches flag to check smp_cache configuration
EwanHai (4):
target/i386: Add support for Zhaoxin CPU vendor identification
target/i386: Add CPUID leaf 0xC000_0001 EDX definitions
target/i386: Introduce Zhaoxin Yongfeng CPU model
target/i386: Mask CMPLegacy bit in CPUID[0x80000001].ECX for Zhaoxin CPUs
Ilya Leoshkevich (1):
stub: Remove monitor-fd.c
Paolo Bonzini (16):
hpet: do not overwrite properties on post_load
rust: subprojects: add libc crate
rust: add module to convert between success/-errno and io::Result
rust: tests: do not import bindings::*
docs: rust: fix typos
docs: rust: update description of crates
physmem: replace assertion with error
pvg: do not enable it on cross-architecture targets
pvg: add option to configure it out
rust: add IsA bounds to QOM implementation traits
rust: add SysBusDeviceImpl
rust: qom: add ObjectImpl::CLASS_INIT
rust: pl011, qemu_api tests: do not use ClassInitImpl
rust: qom: get rid of ClassInitImpl
target/riscv: remove unused macro DEFINE_CPU
target/riscv: move 128-bit check to TCG realize
Wei Liu (6):
target/i386/hvf: fix a typo in a type name
target/i386/hvf: fix the declaration of hvf_handle_io
target/i386/hvf: use x86_segment in x86_decode.c
target/i386/hvf: move and rename {load, store}_regs
target/i386/hvf: move and rename simulate_{rdmsr, wrmsr}
target/i386/hvf: drop some dead code
Zhao Liu (5):
i386: Fix the missing Rust HPET configuration option
rust: prefer importing std::ptr over core::ptr
i386/cpu: Support module level cache topology
i386/cpu: Update cache topology with machine's configuration
i386/pc: Support cache topology in -machine for PC machine
docs/devel/rust.rst | 19 +-
meson.build | 14 +-
include/hw/boards.h | 3 +
target/i386/cpu.h | 41 ++-
target/i386/hvf/hvf-i386.h | 4 +-
target/i386/hvf/x86.h | 8 +-
target/i386/hvf/x86_descr.h | 6 +-
target/i386/hvf/x86_emu.h | 7 +-
target/i386/hvf/x86_task.h | 2 +-
target/i386/hvf/x86hvf.h | 3 +
hw/core/machine-smp.c | 2 +
hw/i386/pc.c | 4 +
hw/timer/hpet.c | 38 +--
qom/object_interfaces.c | 24 +-
stubs/monitor-fd.c | 9 -
system/physmem.c | 6 +-
target/i386/cpu.c | 200 ++++++++++++-
target/i386/hvf/hvf.c | 295 +++++++++++++++++--
target/i386/hvf/x86.c | 4 +-
target/i386/hvf/x86_decode.c | 20 +-
target/i386/hvf/x86_descr.c | 8 +-
target/i386/hvf/x86_emu.c | 273 +-----------------
target/i386/hvf/x86_task.c | 26 +-
target/riscv/cpu.c | 16 --
target/riscv/tcg/tcg-cpu.c | 9 +
Kconfig.host | 3 +
hw/display/Kconfig | 4 -
hw/display/meson.build | 9 +-
meson_options.txt | 2 +
qemu-options.hx | 30 +-
rust/Cargo.lock | 7 +
rust/hw/char/pl011/src/device.rs | 46 +--
rust/hw/char/pl011/src/device_class.rs | 6 +-
rust/hw/timer/Kconfig | 1 +
rust/hw/timer/hpet/src/hpet.rs | 5 +-
rust/qemu-api/Cargo.toml | 1 +
rust/qemu-api/meson.build | 4 +
rust/qemu-api/src/assertions.rs | 28 ++
rust/qemu-api/src/errno.rs | 345 +++++++++++++++++++++++
rust/qemu-api/src/irq.rs | 3 +-
rust/qemu-api/src/lib.rs | 1 +
rust/qemu-api/src/prelude.rs | 2 +
rust/qemu-api/src/qdev.rs | 40 ++-
rust/qemu-api/src/qom.rs | 168 +++++------
rust/qemu-api/src/sysbus.rs | 19 +-
rust/qemu-api/tests/tests.rs | 35 +--
scripts/archive-source.sh | 2 +-
scripts/make-release | 2 +-
scripts/meson-buildoptions.sh | 3 +
stubs/meson.build | 2 +-
subprojects/.gitignore | 1 +
subprojects/libc-0.2-rs.wrap | 7 +
subprojects/packagefiles/libc-0.2-rs/meson.build | 37 +++
53 files changed, 1275 insertions(+), 579 deletions(-)
delete mode 100644 stubs/monitor-fd.c
create mode 100644 rust/qemu-api/src/errno.rs
create mode 100644 subprojects/libc-0.2-rs.wrap
create mode 100644 subprojects/packagefiles/libc-0.2-rs/meson.build
--
2.48.1