You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
qemu/target/i386/hvf
Cameron Esfahani d8cf2c29cc hvf: Enable RDTSCP support
Pass through RDPID and RDTSCP support in CPUID if host supports it.
Correctly detect if CPU_BASED_TSC_OFFSET and CPU_BASED2_RDTSCP would
be supported in primary and secondary processor-based VM-execution
controls.  Enable RDTSCP in secondary processor controls if RDTSCP
support is indicated in CPUID.

Signed-off-by: Cameron Esfahani <dirty@apple.com>
Message-Id: <20220214185605.28087-7-f4bug@amsat.org>
Tested-by: Silvio Moioli <moio@suse.com>
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1011
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
2 years ago
..
README.md i386: Compile CPUX86State xsave_buf only when support KVM or HVF 6 years ago
hvf-cpu.c target/i386: Populate x86_ext_save_areas offsets using cpuid where possible 3 years ago
hvf-i386.h hvf: Move hvf internal definitions into common header 4 years ago
hvf.c hvf: Enable RDTSCP support 2 years ago
meson.build hvf: Move vcpu thread functions into common directory 4 years ago
panic.h x86 hvf cpus: Fix Lesser GPL version number 4 years ago
vmcs.h hvf: Enable RDTSCP support 2 years ago
vmx.h Fix 'writeable' typos 2 years ago
x86.c Remove qemu-common.h include from most units 3 years ago
x86.h hvf: Use standard CR0 and CR4 register definitions 3 years ago
x86_cpuid.c hvf: Enable RDTSCP support 2 years ago
x86_decode.c Remove qemu-common.h include from most units 3 years ago
x86_decode.h x86 hvf cpus: Fix Lesser GPL version number 4 years ago
x86_descr.c Remove qemu-common.h include from most units 3 years ago
x86_descr.h x86 hvf cpus: Fix Lesser GPL version number 4 years ago
x86_emu.c Remove qemu-common.h include from most units 3 years ago
x86_emu.h target: Use forward declared type instead of structure type 3 years ago
x86_flags.c Remove qemu-common.h include from most units 3 years ago
x86_flags.h x86 hvf cpus: Fix Lesser GPL version number 4 years ago
x86_mmu.c Remove qemu-common.h include from most units 3 years ago
x86_mmu.h x86 hvf cpus: Fix Lesser GPL version number 4 years ago
x86_task.c Remove qemu-common.h include from most units 3 years ago
x86_task.h Clean up header guards that don't match their file name 6 years ago
x86hvf.c Remove qemu-common.h include from most units 3 years ago
x86hvf.h hvf: Make hvf_get_segments() / hvf_put_segments() local 3 years ago

README.md

OS X Hypervisor.framework support in QEMU

These sources (and ../hvf-all.c) are adapted from Veertu Inc's vdhh (Veertu Desktop Hosted Hypervisor) (last known location: https://github.com/veertuinc/vdhh) with some minor changes, the most significant of which were:

  1. Adapt to our current QEMU's CPUState structure and address_space_rw API; many struct members have been moved around (emulated x86 state, xsave_buf) due to historical differences + QEMU needing to handle more emulation targets.
  2. Removal of apic_page and hyperv-related functionality.
  3. More relaxed use of qemu_mutex_lock_iothread.