mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-08 18:23:57 -06:00
i386/kvm: Add xen-version KVM accelerator property and init KVM Xen support
This just initializes the basic Xen support in KVM for now. Only permitted on TYPE_PC_MACHINE because that's where the sysbus devices for Xen heap overlay, event channel, grant tables and other stuff will exist. There's no point having the basic hypercall support if nothing else works. Provide sysemu/kvm_xen.h and a kvm_xen_get_caps() which will be used later by support devices. Signed-off-by: David Woodhouse <dwmw@amazon.co.uk> Reviewed-by: Paul Durrant <paul@xen.org>
This commit is contained in:
parent
faa4e80071
commit
61491cf441
7 changed files with 161 additions and 0 deletions
|
@ -118,6 +118,8 @@ struct KVMState
|
|||
struct KVMDirtyRingReaper reaper;
|
||||
NotifyVmexitOption notify_vmexit;
|
||||
uint32_t notify_window;
|
||||
uint32_t xen_version;
|
||||
uint32_t xen_caps;
|
||||
};
|
||||
|
||||
void kvm_memory_listener_register(KVMState *s, KVMMemoryListener *kml,
|
||||
|
|
20
include/sysemu/kvm_xen.h
Normal file
20
include/sysemu/kvm_xen.h
Normal file
|
@ -0,0 +1,20 @@
|
|||
/*
|
||||
* Xen HVM emulation support in KVM
|
||||
*
|
||||
* Copyright © 2019 Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright © 2022 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||
*
|
||||
* This work is licensed under the terms of the GNU GPL, version 2 or later.
|
||||
* See the COPYING file in the top-level directory.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef QEMU_SYSEMU_KVM_XEN_H
|
||||
#define QEMU_SYSEMU_KVM_XEN_H
|
||||
|
||||
uint32_t kvm_xen_get_caps(void);
|
||||
|
||||
#define kvm_xen_has_cap(cap) (!!(kvm_xen_get_caps() & \
|
||||
KVM_XEN_HVM_CONFIG_ ## cap))
|
||||
|
||||
#endif /* QEMU_SYSEMU_KVM_XEN_H */
|
Loading…
Add table
Add a link
Reference in a new issue