qemu/target/i386/hvf
Cameron Esfahani fbafbb6db7 hvf: non-RAM, non-ROMD memory ranges are now correctly mapped in
If an area is non-RAM and non-ROMD, then remove mappings so accesses
will trap and can be emulated.  Change hvf_find_overlap_slot() to take
a size instead of an end address: it wouldn't return a slot because
callers would pass the same address for start and end.  Don't always
map area as read/write/execute, respect area flags.

Signed-off-by: Cameron Esfahani <dirty@apple.com>
Message-Id: <1d8476c8f86959273fbdf23c86f8b4b611f5e2e1.1574625592.git.dirty@apple.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2019-11-26 09:58:33 +01:00
..
hvf-i386.h Clean up ill-advised or unusual header guards 2019-05-13 08:58:55 +02:00
hvf.c hvf: non-RAM, non-ROMD memory ranges are now correctly mapped in 2019-11-26 09:58:33 +01:00
Makefile.objs
panic.h
README.md
vmcs.h Clean up ill-advised or unusual header guards 2019-05-13 08:58:55 +02:00
vmx.h
x86_cpuid.c target/i386: drop the duplicated definition of cpuid AVX512_VBMI macro 2019-10-15 18:34:44 -03:00
x86_decode.c cpu: Replace ENV_GET_CPU with env_cpu 2019-06-10 07:03:34 -07:00
x86_decode.h Normalize header guard symbol definition. 2019-05-13 08:58:55 +02:00
x86_descr.c
x86_descr.h Normalize header guard symbol definition. 2019-05-13 08:58:55 +02:00
x86_emu.c cpu: Replace ENV_GET_CPU with env_cpu 2019-06-10 07:03:34 -07:00
x86_emu.h Clean up ill-advised or unusual header guards 2019-05-13 08:58:55 +02:00
x86_flags.c
x86_flags.h Clean up ill-advised or unusual header guards 2019-05-13 08:58:55 +02:00
x86_mmu.c
x86_mmu.h Clean up ill-advised or unusual header guards 2019-05-13 08:58:55 +02:00
x86_task.c Clean up inclusion of sysemu/sysemu.h 2019-08-16 13:31:53 +02:00
x86_task.h
x86.c
x86.h Normalize header guard symbol definition. 2019-05-13 08:58:55 +02:00
x86hvf.c target/i386: kvm: Add support for KVM_CAP_EXCEPTION_PAYLOAD 2019-06-21 13:25:27 +02:00
x86hvf.h

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.