[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [linux-2.6.18-xen] Sync Xen public headers
# HG changeset patch # User Jan Beulich # Date 1317719819 -7200 # Node ID 7338608af801828219582b783d98415e0b5f7d3d # Parent c42e42e6047ff0264c7180d6e1c3cf7dda8e0018 Sync Xen public headers Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx> --- diff -r c42e42e6047f -r 7338608af801 include/xen/interface/arch-x86/hvm/save.h --- a/include/xen/interface/arch-x86/hvm/save.h Tue Oct 04 10:41:20 2011 +0200 +++ b/include/xen/interface/arch-x86/hvm/save.h Tue Oct 04 11:16:59 2011 +0200 @@ -547,18 +547,6 @@ DECLARE_HVM_SAVE_TYPE(MTRR, 14, struct hvm_hw_mtrr); /* - * Viridian hypervisor context. - */ - -struct hvm_viridian_context { - uint64_t hypercall_gpa; - uint64_t guest_os_id; -}; - -DECLARE_HVM_SAVE_TYPE(VIRIDIAN, 15, struct hvm_viridian_context); - - -/* * The save area of XSAVE/XRSTOR. */ @@ -580,9 +568,26 @@ #define CPU_XSAVE_CODE 16 +/* + * Viridian hypervisor context. + */ + +struct hvm_viridian_domain_context { + uint64_t hypercall_gpa; + uint64_t guest_os_id; +}; + +DECLARE_HVM_SAVE_TYPE(VIRIDIAN_DOMAIN, 15, struct hvm_viridian_domain_context); + +struct hvm_viridian_vcpu_context { + uint64_t apic_assist; +}; + +DECLARE_HVM_SAVE_TYPE(VIRIDIAN_VCPU, 17, struct hvm_viridian_vcpu_context); + /* * Largest type-code in use */ -#define HVM_SAVE_CODE_MAX 16 +#define HVM_SAVE_CODE_MAX 17 #endif /* __XEN_PUBLIC_HVM_SAVE_X86_H__ */ diff -r c42e42e6047f -r 7338608af801 include/xen/interface/domctl.h --- a/include/xen/interface/domctl.h Tue Oct 04 10:41:20 2011 +0200 +++ b/include/xen/interface/domctl.h Tue Oct 04 11:16:59 2011 +0200 @@ -35,7 +35,7 @@ #include "xen.h" #include "grant_table.h" -#define XEN_DOMCTL_INTERFACE_VERSION 0x00000007 +#define XEN_DOMCTL_INTERFACE_VERSION 0x00000008 /* * NB. xen_domctl.domain is an IN/OUT parameter for this operation. @@ -95,6 +95,7 @@ uint64_aligned_t tot_pages; uint64_aligned_t max_pages; uint64_aligned_t shr_pages; + uint64_aligned_t paged_pages; uint64_aligned_t shared_info_frame; /* GMFN of shared_info struct */ uint64_aligned_t cpu_time; uint32_t nr_online_vcpus; /* Number of VCPUs currently online. */ @@ -455,15 +456,15 @@ /* XEN_DOMCTL_test_assign_device */ /* XEN_DOMCTL_deassign_device */ struct xen_domctl_assign_device { - uint32_t machine_bdf; /* machine PCI ID of assigned device */ + uint32_t machine_sbdf; /* machine PCI ID of assigned device */ }; typedef struct xen_domctl_assign_device xen_domctl_assign_device_t; DEFINE_XEN_GUEST_HANDLE(xen_domctl_assign_device_t); -/* Retrieve sibling devices infomation of machine_bdf */ +/* Retrieve sibling devices infomation of machine_sbdf */ /* XEN_DOMCTL_get_device_group */ struct xen_domctl_get_device_group { - uint32_t machine_bdf; /* IN */ + uint32_t machine_sbdf; /* IN */ uint32_t max_sdevs; /* IN */ uint32_t num_sdevs; /* OUT */ XEN_GUEST_HANDLE_64(uint32) sdev_array; /* OUT */ @@ -708,20 +709,18 @@ /* XEN_DOMCTL_mem_event_op */ -/* Add and remove memory handlers */ -#define XEN_DOMCTL_MEM_EVENT_OP_ENABLE 0 -#define XEN_DOMCTL_MEM_EVENT_OP_DISABLE 1 - /* +* Domain memory paging * Page memory in and out. */ #define XEN_DOMCTL_MEM_EVENT_OP_PAGING 1 -/* Domain memory paging */ -#define XEN_DOMCTL_MEM_EVENT_OP_PAGING_NOMINATE 0 -#define XEN_DOMCTL_MEM_EVENT_OP_PAGING_EVICT 1 -#define XEN_DOMCTL_MEM_EVENT_OP_PAGING_PREP 2 -#define XEN_DOMCTL_MEM_EVENT_OP_PAGING_RESUME 3 +#define XEN_DOMCTL_MEM_EVENT_OP_PAGING_ENABLE 0 +#define XEN_DOMCTL_MEM_EVENT_OP_PAGING_DISABLE 1 +#define XEN_DOMCTL_MEM_EVENT_OP_PAGING_NOMINATE 2 +#define XEN_DOMCTL_MEM_EVENT_OP_PAGING_EVICT 3 +#define XEN_DOMCTL_MEM_EVENT_OP_PAGING_PREP 4 +#define XEN_DOMCTL_MEM_EVENT_OP_PAGING_RESUME 5 /* * Access permissions. @@ -734,11 +733,14 @@ * ACCESS_RESUME mode for the following domctl. */ #define XEN_DOMCTL_MEM_EVENT_OP_ACCESS 2 -#define XEN_DOMCTL_MEM_EVENT_OP_ACCESS_RESUME 0 + +#define XEN_DOMCTL_MEM_EVENT_OP_ACCESS_ENABLE 0 +#define XEN_DOMCTL_MEM_EVENT_OP_ACCESS_DISABLE 1 +#define XEN_DOMCTL_MEM_EVENT_OP_ACCESS_RESUME 2 struct xen_domctl_mem_event_op { - uint32_t op; /* XEN_DOMCTL_MEM_EVENT_OP_* */ - uint32_t mode; /* XEN_DOMCTL_MEM_EVENT_ENABLE_* */ + uint32_t op; /* XEN_DOMCTL_MEM_EVENT_OP_*_* */ + uint32_t mode; /* XEN_DOMCTL_MEM_EVENT_OP_* */ /* OP_ENABLE */ uint64_aligned_t shared_addr; /* IN: Virtual address of shared page */ @@ -755,14 +757,16 @@ */ /* XEN_DOMCTL_mem_sharing_op */ -#define XEN_DOMCTL_MEM_SHARING_OP_CONTROL 0 -#define XEN_DOMCTL_MEM_SHARING_OP_NOMINATE_GFN 1 -#define XEN_DOMCTL_MEM_SHARING_OP_NOMINATE_GREF 2 -#define XEN_DOMCTL_MEM_SHARING_OP_SHARE 3 -#define XEN_DOMCTL_MEM_SHARING_OP_RESUME 4 -#define XEN_DOMCTL_MEM_SHARING_OP_DEBUG_GFN 5 -#define XEN_DOMCTL_MEM_SHARING_OP_DEBUG_MFN 6 -#define XEN_DOMCTL_MEM_SHARING_OP_DEBUG_GREF 7 +#define XEN_DOMCTL_MEM_EVENT_OP_SHARING 3 + +#define XEN_DOMCTL_MEM_EVENT_OP_SHARING_CONTROL 0 +#define XEN_DOMCTL_MEM_EVENT_OP_SHARING_NOMINATE_GFN 1 +#define XEN_DOMCTL_MEM_EVENT_OP_SHARING_NOMINATE_GREF 2 +#define XEN_DOMCTL_MEM_EVENT_OP_SHARING_SHARE 3 +#define XEN_DOMCTL_MEM_EVENT_OP_SHARING_RESUME 4 +#define XEN_DOMCTL_MEM_EVENT_OP_SHARING_DEBUG_GFN 5 +#define XEN_DOMCTL_MEM_EVENT_OP_SHARING_DEBUG_MFN 6 +#define XEN_DOMCTL_MEM_EVENT_OP_SHARING_DEBUG_GREF 7 #define XEN_DOMCTL_MEM_SHARING_S_HANDLE_INVALID (-10) #define XEN_DOMCTL_MEM_SHARING_C_HANDLE_INVALID (-9) diff -r c42e42e6047f -r 7338608af801 include/xen/interface/io/xs_wire.h --- a/include/xen/interface/io/xs_wire.h Tue Oct 04 10:41:20 2011 +0200 +++ b/include/xen/interface/io/xs_wire.h Tue Oct 04 11:16:59 2011 +0200 @@ -48,7 +48,8 @@ XS_IS_DOMAIN_INTRODUCED, XS_RESUME, XS_SET_TARGET, - XS_RESTRICT + XS_RESTRICT, + XS_RESET_WATCHES }; #define XS_WRITE_NONE "NONE" diff -r c42e42e6047f -r 7338608af801 include/xen/interface/physdev.h --- a/include/xen/interface/physdev.h Tue Oct 04 10:41:20 2011 +0200 +++ b/include/xen/interface/physdev.h Tue Oct 04 11:16:59 2011 +0200 @@ -142,6 +142,7 @@ #define MAP_PIRQ_TYPE_MSI 0x0 #define MAP_PIRQ_TYPE_GSI 0x1 #define MAP_PIRQ_TYPE_UNKNOWN 0x2 +#define MAP_PIRQ_TYPE_MSI_SEG 0x3 #define PHYSDEVOP_map_pirq 13 struct physdev_map_pirq { @@ -152,7 +153,7 @@ int index; /* IN or OUT */ int pirq; - /* IN */ + /* IN - high 16 bits hold segment for MAP_PIRQ_TYPE_MSI_SEG */ int bus; /* IN */ int devfn; @@ -255,6 +256,54 @@ typedef struct physdev_get_free_pirq physdev_get_free_pirq_t; DEFINE_XEN_GUEST_HANDLE(physdev_get_free_pirq_t); +#define XEN_PCI_MMCFG_RESERVED 0x1 + +#define PHYSDEVOP_pci_mmcfg_reserved 24 +struct physdev_pci_mmcfg_reserved { + uint64_t address; + uint16_t segment; + uint8_t start_bus; + uint8_t end_bus; + uint32_t flags; +}; +typedef struct physdev_pci_mmcfg_reserved physdev_pci_mmcfg_reserved_t; +DEFINE_XEN_GUEST_HANDLE(physdev_pci_mmcfg_reserved_t); + +#define XEN_PCI_DEV_EXTFN 0x1 +#define XEN_PCI_DEV_VIRTFN 0x2 +#define XEN_PCI_DEV_PXM 0x4 + +#define PHYSDEVOP_pci_device_add 25 +struct physdev_pci_device_add { + /* IN */ + uint16_t seg; + uint8_t bus; + uint8_t devfn; + uint32_t flags; + struct { + uint8_t bus; + uint8_t devfn; + } physfn; +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L + uint32_t optarr[]; +#elif defined(__GNUC__) + uint32_t optarr[0]; +#endif +}; +typedef struct physdev_pci_device_add physdev_pci_device_add_t; +DEFINE_XEN_GUEST_HANDLE(physdev_pci_device_add_t); + +#define PHYSDEVOP_pci_device_remove 26 +#define PHYSDEVOP_restore_msi_ext 27 +struct physdev_pci_device { + /* IN */ + uint16_t seg; + uint8_t bus; + uint8_t devfn; +}; +typedef struct physdev_pci_device physdev_pci_device_t; +DEFINE_XEN_GUEST_HANDLE(physdev_pci_device_t); + /* * Notify that some PIRQ-bound event channels have been unmasked. * ** This command is obsolete since interface version 0x00030202 and is ** diff -r c42e42e6047f -r 7338608af801 include/xen/interface/platform.h --- a/include/xen/interface/platform.h Tue Oct 04 10:41:20 2011 +0200 +++ b/include/xen/interface/platform.h Tue Oct 04 11:16:59 2011 +0200 @@ -123,6 +123,9 @@ #define XEN_EFI_get_variable 6 #define XEN_EFI_set_variable 7 #define XEN_EFI_get_next_variable_name 8 +#define XEN_EFI_query_variable_info 9 +#define XEN_EFI_query_capsule_capabilities 10 +#define XEN_EFI_update_capsule 11 struct xenpf_efi_runtime_call { uint32_t function; /* @@ -180,6 +183,26 @@ XEN_GUEST_HANDLE(void) name; /* UCS-2/UTF-16 string */ struct xenpf_efi_guid vendor_guid; } get_next_variable_name; + + struct { + uint32_t attr; + uint64_t max_store_size; + uint64_t remain_store_size; + uint64_t max_size; + } query_variable_info; + + struct { + XEN_GUEST_HANDLE(void) capsule_header_array; + unsigned long capsule_count; + uint64_t max_capsule_size; + unsigned int reset_type; + } query_capsule_capabilities; + + struct { + XEN_GUEST_HANDLE(void) capsule_header_array; + unsigned long capsule_count; + uint64_t sg_list; /* machine address */ + } update_capsule; } u; }; typedef struct xenpf_efi_runtime_call xenpf_efi_runtime_call_t; @@ -194,6 +217,7 @@ #define XEN_FW_EFI_CONFIG_TABLE 1 #define XEN_FW_EFI_VENDOR 2 #define XEN_FW_EFI_MEM_INFO 3 +#define XEN_FW_EFI_RT_VERSION 4 struct xenpf_firmware_info { /* IN variables. */ uint32_t type; @@ -304,6 +328,7 @@ #define XEN_PM_CX 0 #define XEN_PM_PX 1 #define XEN_PM_TX 2 +#define XEN_PM_PDC 3 /* Px sub info type */ #define XEN_PX_PCT 1 @@ -401,6 +426,7 @@ union { struct xen_processor_power power;/* Cx: _CST/_CSD */ struct xen_processor_performance perf; /* Px: _PPC/_PCT/_PSS/_PSD */ + XEN_GUEST_HANDLE(uint32) pdc; /* _PDC */ } u; }; typedef struct xenpf_set_processor_pminfo xenpf_set_processor_pminfo_t; diff -r c42e42e6047f -r 7338608af801 include/xen/interface/sysctl.h --- a/include/xen/interface/sysctl.h Tue Oct 04 10:41:20 2011 +0200 +++ b/include/xen/interface/sysctl.h Tue Oct 04 11:16:59 2011 +0200 @@ -399,6 +399,7 @@ #define PG_OFFLINE_OFFLINED (0x1UL << 1) #define PG_OFFLINE_PENDING (0x1UL << 2) #define PG_OFFLINE_FAILED (0x1UL << 3) +#define PG_OFFLINE_AGAIN (0x1UL << 4) #define PG_ONLINE_FAILED PG_OFFLINE_FAILED #define PG_ONLINE_ONLINED PG_OFFLINE_OFFLINED _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |