The following changes since commit f8a113701dd2d28f3bedb216e59125ddcb77fd05:
Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging
(2025-06-04 11:43:31 -0400)
are available in the Git repository at:
https://gitlab.com/bonzini/qemu.git tags/for-upstream
for you to fetch changes up to 3f9bdfb0dc8162cbc080c868625336178ddcda56:
tests/tcg/x86_64/fma: add test for exact-denormal output (2025-06-06 14:32:55
+0200)
* futex: support Windows
* qemu-thread: Avoid futex abstraction for non-Linux
* migration, hw/display/apple-gfx: replace QemuSemaphore with QemuEvent
* rust: bindings for Error
* hpet, rust/hpet: return errors from realize if properties are incorrect
* rust/hpet: Drop BqlCell wrapper for num_timers
* target/i386: Emulate ftz and denormal flag bits correctly
* i386/kvm: Prefault memory on page state change
Akihiko Odaki (11):
futex: Check value after qemu_futex_wait()
futex: Support Windows
qemu-thread: Replace __linux__ with CONFIG_LINUX
qemu-thread: Avoid futex abstraction for non-Linux
qemu-thread: Use futex for QemuEvent on Windows
qemu-thread: Use futex if available for QemuLockCnt
qemu-thread: Document QemuEvent
migration: Replace QemuSemaphore with QemuEvent
migration/colo: Replace QemuSemaphore with QemuEvent
migration/postcopy: Replace QemuSemaphore with QemuEvent
hw/display/apple-gfx: Replace QemuSemaphore with QemuEvent
Paolo Bonzini (14):
subprojects: add the anyhow crate
subprojects: add the foreign crate
util/error: expose Error definition to Rust code
util/error: allow non-NUL-terminated err->src
util/error: make func optional
rust: qemu-api: add bindings to Error
rust: qemu-api: add tests for Error bindings
rust: qdev: support returning errors from realize
rust/hpet: change type of num_timers to usize
hpet: adjust VMState for consistency with Rust version
hpet: return errors from realize if properties are incorrect
rust/hpet: return errors from realize if properties are incorrect
docs: update Rust module status
rust: make TryFrom macro more resilient
Peter Maydell (4):
target/i386: Detect flush-to-zero after rounding
target/i386: Use correct type for get_float_exception_flags() values
target/i386: Wire up MXCSR.DE and FPUS.DE correctly
tests/tcg/x86_64/fma: add test for exact-denormal output
Tom Lendacky (1):
i386/kvm: Prefault memory on page state change
Zhao Liu (1):
rust/hpet: Drop BqlCell wrapper for num_timers
docs/devel/rust.rst| 7 +-
meson.build| 7 +
include/qapi/error-internal.h | 35 ++
include/qemu/futex.h | 44 ++-
include/qemu/lockcnt.h | 2 +-
include/qemu/thread-posix.h| 9 -
include/qemu/thread-win32.h| 6 -
include/qemu/thread.h | 21 +-
include/system/kvm.h | 1 +
migration/migration.h | 12 +-
rust/wrapper.h | 1 +
target/i386/ops_sse.h | 16 +-
accel/kvm/kvm-all.c| 2 +
hw/timer/hpet.c| 21 +-
migration/colo.c | 20 +-
migration/migration.c | 21 +-
migration/postcopy-ram.c | 10 +-
migration/savevm.c | 2 +-
target/i386/kvm/kvm.c | 31 +-
target/i386/tcg/fpu_helper.c | 101 +++--
tests/tcg/x86_64/fma.c | 17 +-
tests/unit/test-aio-multithread.c | 6 +-
util/error.c | 20 +-
util/event.c | 171 +
util/lockcnt.c | 9 +-
util/qemu-thread-posix.c | 148
util/qemu-thread-win32.c | 129 ---
hw/display/apple-gfx.m | 10 +-
rust/Cargo.lock| 17 +
rust/Cargo.toml| 1 +
rust/hw/char/pl011/src/device.rs | 5 +-
rust/hw/timer/hpet/src/device.rs | 62 ++-
rust/hw/timer/hpet/src/fw_cfg.rs | 7 +-
rust/meson.build | 4 +
rust/qemu-api-macros/src/lib.rs| 7 +-
rust/qemu-api/Cargo.toml | 2 +
rust/qemu-api/meson.build | 3 +-