On Wed, Dec 02, 2020 at 08:04:00PM +0100, Alexander Graf wrote: > Until now, Hypervisor.framework has only been available on x86_64 systems. > With Apple Silicon shipping now, it extends its reach to aarch64. To > prepare for support for multiple architectures, let's move common code out > into its own accel directory. > > [...] > > diff --git a/include/sysemu/hvf_int.h b/include/sysemu/hvf_int.h > new file mode 100644 > index 0000000000..de9bad23a8 > --- /dev/null > +++ b/include/sysemu/hvf_int.h > @@ -0,0 +1,69 @@ > +/* > + * QEMU Hypervisor.framework (HVF) support > + * > + * This work is licensed under the terms of the GNU GPL, version 2 or later. > + * See the COPYING file in the top-level directory. > + * > + */ > + > +/* header to be included in HVF-specific code */ > + > +#ifndef HVF_INT_H > +#define HVF_INT_H > + > +#include <Hypervisor/Hypervisor.h> > +
>From here > +#define HVF_MAX_VCPU 0x10 > + > +extern struct hvf_state hvf_global; > + > +struct hvf_vm { > + int id; > + struct hvf_vcpu_state *vcpus[HVF_MAX_VCPU]; > +}; > + > +struct hvf_state { > + uint32_t version; > + struct hvf_vm *vm; > + uint64_t mem_quota; > +}; > + and down to here, it doesn't seem to be a common code, rather unused definitions. They can be safely dropped: diff --git a/target/i386/hvf/hvf-i386.h b/target/i386/hvf/hvf-i386.h index e0edffd077..e31938e5ff 100644 --- a/target/i386/hvf/hvf-i386.h +++ b/target/i386/hvf/hvf-i386.h @@ -21,21 +21,6 @@ #include "cpu.h" #include "x86.h" -#define HVF_MAX_VCPU 0x10 - -extern struct hvf_state hvf_global; - -struct hvf_vm { - int id; - struct hvf_vcpu_state *vcpus[HVF_MAX_VCPU]; -}; - -struct hvf_state { - uint32_t version; - struct hvf_vm *vm; - uint64_t mem_quota; -}; - /* hvf_slot flags */ #define HVF_SLOT_LOG (1 << 0) @@ -75,7 +60,6 @@ hvf_slot *hvf_find_overlap_slot(uint64_t, uint64_t); /* Host specific functions */ int hvf_inject_interrupt(CPUArchState *env, int vector); -int hvf_vcpu_run(struct hvf_vcpu_state *vcpu); #endif #endif