Re: [PATCH 07/15] KVM: x86/xen: add definitions of compat_shared_info, compat_vcpu_info

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 12/4/20 1:18 AM, David Woodhouse wrote:
> From: David Woodhouse <dwmw@xxxxxxxxxxxx>
> 
> There aren't a lot of differences for the things that the kernel needs
> to care about, but there are a few.
> 
> Signed-off-by: David Woodhouse <dwmw@xxxxxxxxxxxx>
> ---
>  arch/x86/kvm/xen.h | 39 +++++++++++++++++++++++++++++++++++++++
>  1 file changed, 39 insertions(+)
> 
> diff --git a/arch/x86/kvm/xen.h b/arch/x86/kvm/xen.h
> index afc6dad41fb5..870ac7197a3a 100644
> --- a/arch/x86/kvm/xen.h
> +++ b/arch/x86/kvm/xen.h
> @@ -21,4 +21,43 @@ static inline bool kvm_xen_hypercall_enabled(struct kvm *kvm)
>  		KVM_XEN_HVM_CONFIG_INTERCEPT_HCALL;
>  }
>  
> +
> +/* 32-bit compatibility definitions */
> +#include <asm/pvclock-abi.h>
> +#include <asm/xen/interface.h>
> +
> +struct compat_arch_vcpu_info {
> +	unsigned int cr2;
> +	unsigned int pad[5];
> +};
> +
> +struct compat_vcpu_info {
> +        uint8_t evtchn_upcall_pending;
> +        uint8_t evtchn_upcall_mask;
> +        uint32_t evtchn_pending_sel;
> +        struct compat_arch_vcpu_info arch;
> +        struct pvclock_vcpu_time_info time;
> +}; /* 64 bytes (x86) */
> +
> +struct compat_arch_shared_info {
> +	unsigned int max_pfn;
> +	unsigned int pfn_to_mfn_frame_list_list;
> +	unsigned int nmi_reason;
> +	unsigned int p2m_cr3;
> +	unsigned int p2m_vaddr;
> +	unsigned int p2m_generation;
> +	uint32_t wc_sec_hi;
> +};
> +
> +struct compat_shared_info {
> +	struct compat_vcpu_info vcpu_info[MAX_VIRT_CPUS];
> +	uint32_t evtchn_pending[sizeof(compat_ulong_t) * 8];
> +	uint32_t evtchn_mask[sizeof(compat_ulong_t) * 8];
> +	uint32_t wc_version;
> +	uint32_t wc_sec;
> +	uint32_t wc_nsec;
> +	struct compat_arch_shared_info arch;
> +
> +};
> +
>  #endif /* __ARCH_X86_KVM_XEN_H__ */
> 
I would fold this into the next patch.

For it makes sense to keep separate the xen canonical headers update (patch 10).



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux