On 2025/11/15 5:04, Philippe Mathieu-Daudé wrote:
Missing review: #8- Patches 1-11 fix migration on HVF - Patches 12-14 remove a signal race with WFI - Patches 15-18 correct guest timer frequency Since v4: - Rename gva -> gpa in hvf_set_phys_mem (Akihiko) - Dropped missing VTimer synchronization patches for 10.2 Since v3: - Call qemu_real_host_page_mask/size once (rth) Since v2: - Improve host page size/mask uses (rth) - Remove cpu_test_interrupt in hvf_wfi (rth) Since v1: - Addressed Mads & Richard comments - Fixed migration by reworking memory listeners (unfortunately the current broken code has been used as base for WHPX) - Sync CNTV_CTL/CVAL_EL0 - Remove WFI racy signal implementation - Simplify PSCI Suspend (I expect the same can be done for the other hvf_psci_cpu_off() calls). - Emulate more missing registers (PMU & Monitor Dbg) From v1: - Fix a pair of memory leak - Check a pair of return values - Mention calls which must be run on vCPU thread - Force MIDR - Use hv_vcpu_config_create/hv_vcpu_config_get_feature_reg when not running on vCPU thread - Factor hvf_handle_vmexit() / hvf_handle_exception(() out - Call hv_vcpu_run() in loop - Guard hv_vcpu_run() between cpu_exec_start/end() - Restrict ARM specific in AccelCPUState Based-on: <[email protected]> Philippe Mathieu-Daudé (10): target/i386/hvf: Use host page alignment in ept_emulation_fault() accel/hvf: Enforce host alignment in hv_vm_protect() accel/hvf: Skip WFI if CPU has work to do accel/hvf: Implement WFI without using pselect() accel/hvf: Have PSCI CPU_SUSPEND halt the vCPU accel: Introduce AccelOpsClass::cpu_target_realize() hook accel/hvf: Add hvf_arch_cpu_realize() stubs target/arm: Create GTimers *after* features finalized / accel realized target/arm/hvf: Really set Generic Timer counter frequency target/arm: Only allow disabling NEON when using TCG Richard Henderson (9): accel/hvf: Create hvf_protect_clean_range, hvf_unprotect_dirty_range target/i386/hvf: Use hvf_unprotect_dirty_range target/i386/hvf: Use address_space_translate in ept_emulation_fault accel/hvf: Simplify hvf_log_* accel/hvf: Move hvf_log_sync to hvf_log_clear accel/hvf: Simplify hvf_set_phys_mem accel/hvf: Drop hvf_slot and hvf_find_overlap_slot accel/hvf: Remove mac_slots target/arm/hvf: Implement dirty page tracking include/accel/accel-cpu-ops.h | 1 + include/system/hvf_int.h | 22 +--- accel/accel-common.c | 5 + accel/hvf/hvf-accel-ops.c | 19 +--- accel/hvf/hvf-all.c | 186 ++++++++++------------------------ target/arm/cpu.c | 67 ++++++------ target/arm/hvf/hvf.c | 167 +++++++++++++++--------------- target/i386/hvf/hvf.c | 44 ++++---- accel/hvf/trace-events | 1 + 9 files changed, 208 insertions(+), 304 deletions(-)
For the whole series: Reviewed-by: Akihiko Odaki <[email protected]>
