From 4e8199b572f2035b7749cba276ece3a26630d23e Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 17 Apr 2024 14:18:21 +0200 Subject: Adding upstream version 1.67.1+dfsg1. Signed-off-by: Daniel Baumann --- .../src/Windows/Win32/System/Hypervisor/mod.rs | 2594 ++++++++++---------- 1 file changed, 1296 insertions(+), 1298 deletions(-) (limited to 'vendor/windows-sys/src/Windows/Win32/System/Hypervisor/mod.rs') diff --git a/vendor/windows-sys/src/Windows/Win32/System/Hypervisor/mod.rs b/vendor/windows-sys/src/Windows/Win32/System/Hypervisor/mod.rs index f937d3eac..0c94c24ca 100644 --- a/vendor/windows-sys/src/Windows/Win32/System/Hypervisor/mod.rs +++ b/vendor/windows-sys/src/Windows/Win32/System/Hypervisor/mod.rs @@ -1,4 +1,4 @@ -#[link(name = "windows")] +#[cfg_attr(windows, link(name = "windows"))] extern "system" { #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub fn ApplyGuestMemoryFix(vmsavedstatedumphandle: *mut ::core::ffi::c_void, vpid: u32, virtualaddress: u64, fixbuffer: *const ::core::ffi::c_void, fixbuffersize: u32) -> ::windows_sys::core::HRESULT; @@ -274,70 +274,48 @@ extern "system" { #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub fn WHvWriteVpciDeviceRegister(partition: WHV_PARTITION_HANDLE, logicaldeviceid: u64, register: *const WHV_VPCI_DEVICE_REGISTER, data: *const ::core::ffi::c_void) -> ::windows_sys::core::HRESULT; } -#[repr(C)] +pub const GUID_DEVINTERFACE_VM_GENCOUNTER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1072875819, data2: 26008, data3: 20064, data4: [142, 28, 12, 207, 73, 39, 227, 25] }; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct DOS_IMAGE_INFO { - pub PdbName: ::windows_sys::core::PCSTR, - pub ImageBaseAddress: u64, - pub ImageSize: u32, - pub Timestamp: u32, -} -impl ::core::marker::Copy for DOS_IMAGE_INFO {} -impl ::core::clone::Clone for DOS_IMAGE_INFO { - fn clone(&self) -> Self { - *self - } -} -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub type FOUND_IMAGE_CALLBACK = ::core::option::Option super::super::Foundation::BOOL>; -#[repr(C)] +pub const HDV_PCI_BAR_COUNT: u32 = 6u32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct GPA_MEMORY_CHUNK { - pub GuestPhysicalStartPageIndex: u64, - pub PageCount: u64, -} -impl ::core::marker::Copy for GPA_MEMORY_CHUNK {} -impl ::core::clone::Clone for GPA_MEMORY_CHUNK { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] +pub const HVSOCKET_ADDRESS_FLAG_PASSTHRU: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub union GUEST_OS_INFO { - pub AsUINT64: u64, - pub ClosedSource: GUEST_OS_INFO_0, - pub OpenSource: GUEST_OS_INFO_1, -} -impl ::core::marker::Copy for GUEST_OS_INFO {} -impl ::core::clone::Clone for GUEST_OS_INFO { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] +pub const HVSOCKET_CONNECTED_SUSPEND: u32 = 4u32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct GUEST_OS_INFO_0 { - pub _bitfield: u64, -} -impl ::core::marker::Copy for GUEST_OS_INFO_0 {} -impl ::core::clone::Clone for GUEST_OS_INFO_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] +pub const HVSOCKET_CONNECT_TIMEOUT: u32 = 1u32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct GUEST_OS_INFO_1 { - pub _bitfield: u64, -} -impl ::core::marker::Copy for GUEST_OS_INFO_1 {} -impl ::core::clone::Clone for GUEST_OS_INFO_1 { - fn clone(&self) -> Self { - *self - } -} +pub const HVSOCKET_CONNECT_TIMEOUT_MAX: u32 = 300000u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const HVSOCKET_CONTAINER_PASSTHRU: u32 = 2u32; +pub const HV_GUID_BROADCAST: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4294967295, data2: 65535, data3: 65535, data4: [255, 255, 255, 255, 255, 255, 255, 255] }; +pub const HV_GUID_CHILDREN: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2430307209, data2: 3381, data3: 20345, data4: [140, 233, 73, 234, 10, 200, 183, 205] }; +pub const HV_GUID_LOOPBACK: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3772866967, data2: 56662, data3: 18960, data4: [145, 149, 94, 231, 161, 85, 168, 56] }; +pub const HV_GUID_PARENT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2754510042, data2: 53311, data3: 18444, data4: [156, 194, 164, 222, 32, 171, 184, 120] }; +pub const HV_GUID_SILOHOST: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 918359132, data2: 29302, data3: 16931, data4: [136, 186, 125, 3, 182, 84, 197, 104] }; +pub const HV_GUID_VSOCK_TEMPLATE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 0, data2: 64203, data3: 4582, data4: [189, 88, 100, 0, 106, 121, 134, 211] }; +pub const HV_GUID_ZERO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 0, data2: 0, data3: 0, data4: [0, 0, 0, 0, 0, 0, 0, 0] }; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const HV_PROTOCOL_RAW: u32 = 1u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const IOCTL_VMGENCOUNTER_READ: u32 = 3325956u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const VM_GENCOUNTER_SYMBOLIC_LINK_NAME: &str = "\\VmGenerationCounter"; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHV_ANY_VP: u32 = 4294967295u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHV_HYPERCALL_CONTEXT_MAX_XMM_REGISTERS: u32 = 6u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHV_MAX_DEVICE_ID_SIZE_IN_CHARS: u32 = 200u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHV_PROCESSOR_FEATURES_BANKS_COUNT: u32 = 2u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHV_READ_WRITE_GPA_RANGE_MAX_SIZE: u32 = 16u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHV_SYNIC_MESSAGE_SIZE: u32 = 256u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHV_SYNTHETIC_PROCESSOR_FEATURES_BANKS_COUNT: u32 = 1u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHV_VPCI_TYPE0_BAR_COUNT: u32 = 6u32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub type GUEST_OS_MICROSOFT_IDS = i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] @@ -375,9 +353,6 @@ pub const GuestOsVendorHPE: GUEST_OS_VENDOR = 2i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const GuestOsVendorLANCOM: GUEST_OS_VENDOR = 512i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type GUEST_SYMBOLS_PROVIDER_DEBUG_INFO_CALLBACK = ::core::option::Option; -pub const GUID_DEVINTERFACE_VM_GENCOUNTER: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 1072875819, data2: 26008, data3: 20064, data4: [142, 28, 12, 207, 73, 39, 227, 25] }; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub type HDV_DEVICE_TYPE = i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const HdvDeviceTypeUndefined: HDV_DEVICE_TYPE = 0i32; @@ -406,8 +381,6 @@ pub const HdvMmioMappingFlagWriteable: HDV_MMIO_MAPPING_FLAGS = 1u32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const HdvMmioMappingFlagExecutable: HDV_MMIO_MAPPING_FLAGS = 2u32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const HDV_PCI_BAR_COUNT: u32 = 6u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub type HDV_PCI_BAR_SELECTOR = i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const HDV_PCI_BAR0: HDV_PCI_BAR_SELECTOR = 0i32; @@ -422,117 +395,11 @@ pub const HDV_PCI_BAR4: HDV_PCI_BAR_SELECTOR = 4i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const HDV_PCI_BAR5: HDV_PCI_BAR_SELECTOR = 5i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type HDV_PCI_DEVICE_GET_DETAILS = ::core::option::Option ::windows_sys::core::HRESULT>; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type HDV_PCI_DEVICE_INITIALIZE = ::core::option::Option ::windows_sys::core::HRESULT>; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct HDV_PCI_DEVICE_INTERFACE { - pub Version: HDV_PCI_INTERFACE_VERSION, - pub Initialize: HDV_PCI_DEVICE_INITIALIZE, - pub Teardown: HDV_PCI_DEVICE_TEARDOWN, - pub SetConfiguration: HDV_PCI_DEVICE_SET_CONFIGURATION, - pub GetDetails: HDV_PCI_DEVICE_GET_DETAILS, - pub Start: HDV_PCI_DEVICE_START, - pub Stop: HDV_PCI_DEVICE_STOP, - pub ReadConfigSpace: HDV_PCI_READ_CONFIG_SPACE, - pub WriteConfigSpace: HDV_PCI_WRITE_CONFIG_SPACE, - pub ReadInterceptedMemory: HDV_PCI_READ_INTERCEPTED_MEMORY, - pub WriteInterceptedMemory: HDV_PCI_WRITE_INTERCEPTED_MEMORY, -} -impl ::core::marker::Copy for HDV_PCI_DEVICE_INTERFACE {} -impl ::core::clone::Clone for HDV_PCI_DEVICE_INTERFACE { - fn clone(&self) -> Self { - *self - } -} -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type HDV_PCI_DEVICE_SET_CONFIGURATION = ::core::option::Option ::windows_sys::core::HRESULT>; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type HDV_PCI_DEVICE_START = ::core::option::Option ::windows_sys::core::HRESULT>; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type HDV_PCI_DEVICE_STOP = ::core::option::Option; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type HDV_PCI_DEVICE_TEARDOWN = ::core::option::Option; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub type HDV_PCI_INTERFACE_VERSION = i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const HdvPciDeviceInterfaceVersionInvalid: HDV_PCI_INTERFACE_VERSION = 0i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const HdvPciDeviceInterfaceVersion1: HDV_PCI_INTERFACE_VERSION = 1i32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct HDV_PCI_PNP_ID { - pub VendorID: u16, - pub DeviceID: u16, - pub RevisionID: u8, - pub ProgIf: u8, - pub SubClass: u8, - pub BaseClass: u8, - pub SubVendorID: u16, - pub SubSystemID: u16, -} -impl ::core::marker::Copy for HDV_PCI_PNP_ID {} -impl ::core::clone::Clone for HDV_PCI_PNP_ID { - fn clone(&self) -> Self { - *self - } -} -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type HDV_PCI_READ_CONFIG_SPACE = ::core::option::Option ::windows_sys::core::HRESULT>; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type HDV_PCI_READ_INTERCEPTED_MEMORY = ::core::option::Option ::windows_sys::core::HRESULT>; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type HDV_PCI_WRITE_CONFIG_SPACE = ::core::option::Option ::windows_sys::core::HRESULT>; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type HDV_PCI_WRITE_INTERCEPTED_MEMORY = ::core::option::Option ::windows_sys::core::HRESULT>; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const HVSOCKET_ADDRESS_FLAG_PASSTHRU: u32 = 1u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct HVSOCKET_ADDRESS_INFO { - pub SystemId: ::windows_sys::core::GUID, - pub VirtualMachineId: ::windows_sys::core::GUID, - pub SiloId: ::windows_sys::core::GUID, - pub Flags: u32, -} -impl ::core::marker::Copy for HVSOCKET_ADDRESS_INFO {} -impl ::core::clone::Clone for HVSOCKET_ADDRESS_INFO { - fn clone(&self) -> Self { - *self - } -} -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const HVSOCKET_CONNECTED_SUSPEND: u32 = 4u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const HVSOCKET_CONNECT_TIMEOUT: u32 = 1u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const HVSOCKET_CONNECT_TIMEOUT_MAX: u32 = 300000u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const HVSOCKET_CONTAINER_PASSTHRU: u32 = 2u32; -pub const HV_GUID_BROADCAST: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4294967295, data2: 65535, data3: 65535, data4: [255, 255, 255, 255, 255, 255, 255, 255] }; -pub const HV_GUID_CHILDREN: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2430307209, data2: 3381, data3: 20345, data4: [140, 233, 73, 234, 10, 200, 183, 205] }; -pub const HV_GUID_LOOPBACK: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3772866967, data2: 56662, data3: 18960, data4: [145, 149, 94, 231, 161, 85, 168, 56] }; -pub const HV_GUID_PARENT: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2754510042, data2: 53311, data3: 18444, data4: [156, 194, 164, 222, 32, 171, 184, 120] }; -pub const HV_GUID_SILOHOST: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 918359132, data2: 29302, data3: 16931, data4: [136, 186, 125, 3, 182, 84, 197, 104] }; -pub const HV_GUID_VSOCK_TEMPLATE: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 0, data2: 64203, data3: 4582, data4: [189, 88, 100, 0, 106, 121, 134, 211] }; -pub const HV_GUID_ZERO: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 0, data2: 0, data3: 0, data4: [0, 0, 0, 0, 0, 0, 0, 0] }; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const HV_PROTOCOL_RAW: u32 = 1u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const IOCTL_VMGENCOUNTER_READ: u32 = 3325956u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct MODULE_INFO { - pub ProcessImageName: ::windows_sys::core::PCSTR, - pub Image: DOS_IMAGE_INFO, -} -impl ::core::marker::Copy for MODULE_INFO {} -impl ::core::clone::Clone for MODULE_INFO { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub type PAGING_MODE = i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] @@ -867,20 +734,6 @@ pub const ARM64_RegisterCntvCvalEl0: REGISTER_ID = 156i32; pub const ARM64_RegisterCntvCtlEl0: REGISTER_ID = 157i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const ARM64_RegisterMax: REGISTER_ID = 158i32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct SOCKADDR_HV { - pub Family: u16, - pub Reserved: u16, - pub VmId: ::windows_sys::core::GUID, - pub ServiceId: ::windows_sys::core::GUID, -} -impl ::core::marker::Copy for SOCKADDR_HV {} -impl ::core::clone::Clone for SOCKADDR_HV { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub type VIRTUAL_PROCESSOR_ARCH = i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] @@ -891,178 +744,10 @@ pub const Arch_x86: VIRTUAL_PROCESSOR_ARCH = 1i32; pub const Arch_x64: VIRTUAL_PROCESSOR_ARCH = 2i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const Arch_Armv8: VIRTUAL_PROCESSOR_ARCH = 3i32; -#[repr(C)] #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub union VIRTUAL_PROCESSOR_REGISTER { - pub Reg64: u64, - pub Reg32: u32, - pub Reg16: u16, - pub Reg8: u8, - pub Reg128: VIRTUAL_PROCESSOR_REGISTER_0, - pub X64: VIRTUAL_PROCESSOR_REGISTER_1, -} -impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER {} -impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] +pub type VIRTUAL_PROCESSOR_VENDOR = i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct VIRTUAL_PROCESSOR_REGISTER_0 { - pub Low64: u64, - pub High64: u64, -} -impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_0 {} -impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub union VIRTUAL_PROCESSOR_REGISTER_1 { - pub Segment: VIRTUAL_PROCESSOR_REGISTER_1_1, - pub Table: VIRTUAL_PROCESSOR_REGISTER_1_2, - pub FpControlStatus: VIRTUAL_PROCESSOR_REGISTER_1_0, - pub XmmControlStatus: VIRTUAL_PROCESSOR_REGISTER_1_3, -} -impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1 {} -impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct VIRTUAL_PROCESSOR_REGISTER_1_0 { - pub FpControl: u16, - pub FpStatus: u16, - pub FpTag: u8, - pub Reserved: u8, - pub LastFpOp: u16, - pub Anonymous: VIRTUAL_PROCESSOR_REGISTER_1_0_0, -} -impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1_0 {} -impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub union VIRTUAL_PROCESSOR_REGISTER_1_0_0 { - pub LastFpRip: u64, - pub Anonymous: VIRTUAL_PROCESSOR_REGISTER_1_0_0_0, -} -impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1_0_0 {} -impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1_0_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct VIRTUAL_PROCESSOR_REGISTER_1_0_0_0 { - pub LastFpEip: u32, - pub LastFpCs: u16, -} -impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1_0_0_0 {} -impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1_0_0_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct VIRTUAL_PROCESSOR_REGISTER_1_1 { - pub Base: u64, - pub Limit: u32, - pub Selector: u16, - pub Anonymous: VIRTUAL_PROCESSOR_REGISTER_1_1_0, -} -impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1_1 {} -impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1_1 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub union VIRTUAL_PROCESSOR_REGISTER_1_1_0 { - pub Attributes: u16, - pub Anonymous: VIRTUAL_PROCESSOR_REGISTER_1_1_0_0, -} -impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1_1_0 {} -impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1_1_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct VIRTUAL_PROCESSOR_REGISTER_1_1_0_0 { - pub _bitfield: u16, -} -impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1_1_0_0 {} -impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1_1_0_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct VIRTUAL_PROCESSOR_REGISTER_1_2 { - pub Limit: u16, - pub Base: u64, -} -impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1_2 {} -impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1_2 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct VIRTUAL_PROCESSOR_REGISTER_1_3 { - pub Anonymous: VIRTUAL_PROCESSOR_REGISTER_1_3_0, - pub XmmStatusControl: u32, - pub XmmStatusControlMask: u32, -} -impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1_3 {} -impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1_3 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub union VIRTUAL_PROCESSOR_REGISTER_1_3_0 { - pub LastFpRdp: u64, - pub Anonymous: VIRTUAL_PROCESSOR_REGISTER_1_3_0_0, -} -impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1_3_0 {} -impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1_3_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct VIRTUAL_PROCESSOR_REGISTER_1_3_0_0 { - pub LastFpDp: u32, - pub LastFpDs: u16, -} -impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1_3_0_0 {} -impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1_3_0_0 { - fn clone(&self) -> Self { - *self - } -} -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type VIRTUAL_PROCESSOR_VENDOR = i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const ProcessorVendor_Unknown: VIRTUAL_PROCESSOR_VENDOR = 0i32; +pub const ProcessorVendor_Unknown: VIRTUAL_PROCESSOR_VENDOR = 0i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const ProcessorVendor_Amd: VIRTUAL_PROCESSOR_VENDOR = 1i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] @@ -1071,55 +756,6 @@ pub const ProcessorVendor_Intel: VIRTUAL_PROCESSOR_VENDOR = 2i32; pub const ProcessorVendor_Hygon: VIRTUAL_PROCESSOR_VENDOR = 3i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const ProcessorVendor_Arm: VIRTUAL_PROCESSOR_VENDOR = 4i32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct VM_GENCOUNTER { - pub GenerationCount: u64, - pub GenerationCountHigh: u64, -} -impl ::core::marker::Copy for VM_GENCOUNTER {} -impl ::core::clone::Clone for VM_GENCOUNTER { - fn clone(&self) -> Self { - *self - } -} -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const VM_GENCOUNTER_SYMBOLIC_LINK_NAME: &str = "\\VmGenerationCounter"; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub union WHV_ACCESS_GPA_CONTROLS { - pub AsUINT64: u64, - pub Anonymous: WHV_ACCESS_GPA_CONTROLS_0, -} -impl ::core::marker::Copy for WHV_ACCESS_GPA_CONTROLS {} -impl ::core::clone::Clone for WHV_ACCESS_GPA_CONTROLS { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_ACCESS_GPA_CONTROLS_0 { - pub CacheType: WHV_CACHE_TYPE, - pub Reserved: u32, -} -impl ::core::marker::Copy for WHV_ACCESS_GPA_CONTROLS_0 {} -impl ::core::clone::Clone for WHV_ACCESS_GPA_CONTROLS_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub union WHV_ADVISE_GPA_RANGE { - pub Populate: WHV_ADVISE_GPA_RANGE_POPULATE, -} -impl ::core::marker::Copy for WHV_ADVISE_GPA_RANGE {} -impl ::core::clone::Clone for WHV_ADVISE_GPA_RANGE { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub type WHV_ADVISE_GPA_RANGE_CODE = i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] @@ -1128,41 +764,6 @@ pub const WHvAdviseGpaRangeCodePopulate: WHV_ADVISE_GPA_RANGE_CODE = 0i32; pub const WHvAdviseGpaRangeCodePin: WHV_ADVISE_GPA_RANGE_CODE = 1i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const WHvAdviseGpaRangeCodeUnpin: WHV_ADVISE_GPA_RANGE_CODE = 2i32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_ADVISE_GPA_RANGE_POPULATE { - pub Flags: WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS, - pub AccessType: WHV_MEMORY_ACCESS_TYPE, -} -impl ::core::marker::Copy for WHV_ADVISE_GPA_RANGE_POPULATE {} -impl ::core::clone::Clone for WHV_ADVISE_GPA_RANGE_POPULATE { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub union WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS { - pub AsUINT32: u32, - pub Anonymous: WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS_0, -} -impl ::core::marker::Copy for WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS {} -impl ::core::clone::Clone for WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS_0 { - pub _bitfield: u32, -} -impl ::core::marker::Copy for WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS_0 {} -impl ::core::clone::Clone for WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS_0 { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub type WHV_ALLOCATE_VPCI_RESOURCE_FLAGS = u32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] @@ -1170,8 +771,6 @@ pub const WHvAllocateVpciResourceFlagNone: WHV_ALLOCATE_VPCI_RESOURCE_FLAGS = 0u #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const WHvAllocateVpciResourceFlagAllowDirectP2P: WHV_ALLOCATE_VPCI_RESOURCE_FLAGS = 1u32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHV_ANY_VP: u32 = 4294967295u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub type WHV_CACHE_TYPE = i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const WHvCacheTypeUncached: WHV_CACHE_TYPE = 0i32; @@ -1180,39 +779,7 @@ pub const WHvCacheTypeWriteCombining: WHV_CACHE_TYPE = 1i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const WHvCacheTypeWriteThrough: WHV_CACHE_TYPE = 4i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvCacheTypeWriteProtected: WHV_CACHE_TYPE = 5i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const WHvCacheTypeWriteBack: WHV_CACHE_TYPE = 6i32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub union WHV_CAPABILITY { - pub HypervisorPresent: super::super::Foundation::BOOL, - pub Features: WHV_CAPABILITY_FEATURES, - pub ExtendedVmExits: WHV_EXTENDED_VM_EXITS, - pub ProcessorVendor: WHV_PROCESSOR_VENDOR, - pub ProcessorFeatures: WHV_PROCESSOR_FEATURES, - pub SyntheticProcessorFeaturesBanks: WHV_SYNTHETIC_PROCESSOR_FEATURES_BANKS, - pub ProcessorXsaveFeatures: WHV_PROCESSOR_XSAVE_FEATURES, - pub ProcessorClFlushSize: u8, - pub ExceptionExitBitmap: u64, - pub X64MsrExitBitmap: WHV_X64_MSR_EXIT_BITMAP, - pub ProcessorClockFrequency: u64, - pub InterruptClockFrequency: u64, - pub ProcessorFeaturesBanks: WHV_PROCESSOR_FEATURES_BANKS, - pub GpaRangePopulateFlags: WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS, - pub ProcessorFrequencyCap: WHV_CAPABILITY_PROCESSOR_FREQUENCY_CAP, - pub ProcessorPerfmonFeatures: WHV_PROCESSOR_PERFMON_FEATURES, - pub SchedulerFeatures: WHV_SCHEDULER_FEATURES, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WHV_CAPABILITY {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WHV_CAPABILITY { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub type WHV_CAPABILITY_CODE = i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] @@ -1249,58 +816,6 @@ pub const WHvCapabilityCodeProcessorFrequencyCap: WHV_CAPABILITY_CODE = 4103i32; pub const WHvCapabilityCodeSyntheticProcessorFeaturesBanks: WHV_CAPABILITY_CODE = 4104i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const WHvCapabilityCodeProcessorPerfmonFeatures: WHV_CAPABILITY_CODE = 4105i32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub union WHV_CAPABILITY_FEATURES { - pub Anonymous: WHV_CAPABILITY_FEATURES_0, - pub AsUINT64: u64, -} -impl ::core::marker::Copy for WHV_CAPABILITY_FEATURES {} -impl ::core::clone::Clone for WHV_CAPABILITY_FEATURES { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_CAPABILITY_FEATURES_0 { - pub _bitfield: u64, -} -impl ::core::marker::Copy for WHV_CAPABILITY_FEATURES_0 {} -impl ::core::clone::Clone for WHV_CAPABILITY_FEATURES_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_CAPABILITY_PROCESSOR_FREQUENCY_CAP { - pub _bitfield: u32, - pub HighestFrequencyMhz: u32, - pub NominalFrequencyMhz: u32, - pub LowestFrequencyMhz: u32, - pub FrequencyStepMhz: u32, -} -impl ::core::marker::Copy for WHV_CAPABILITY_PROCESSOR_FREQUENCY_CAP {} -impl ::core::clone::Clone for WHV_CAPABILITY_PROCESSOR_FREQUENCY_CAP { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_CPUID_OUTPUT { - pub Eax: u32, - pub Ebx: u32, - pub Ecx: u32, - pub Edx: u32, -} -impl ::core::marker::Copy for WHV_CPUID_OUTPUT {} -impl ::core::clone::Clone for WHV_CPUID_OUTPUT { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub type WHV_CREATE_VPCI_DEVICE_FLAGS = u32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] @@ -1309,98 +824,6 @@ pub const WHvCreateVpciDeviceFlagNone: WHV_CREATE_VPCI_DEVICE_FLAGS = 0u32; pub const WHvCreateVpciDeviceFlagPhysicallyBacked: WHV_CREATE_VPCI_DEVICE_FLAGS = 1u32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const WHvCreateVpciDeviceFlagUseLogicalInterrupts: WHV_CREATE_VPCI_DEVICE_FLAGS = 2u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_DOORBELL_MATCH_DATA { - pub GuestAddress: u64, - pub Value: u64, - pub Length: u32, - pub _bitfield: u32, -} -impl ::core::marker::Copy for WHV_DOORBELL_MATCH_DATA {} -impl ::core::clone::Clone for WHV_DOORBELL_MATCH_DATA { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_EMULATOR_CALLBACKS { - pub Size: u32, - pub Reserved: u32, - pub WHvEmulatorIoPortCallback: WHV_EMULATOR_IO_PORT_CALLBACK, - pub WHvEmulatorMemoryCallback: WHV_EMULATOR_MEMORY_CALLBACK, - pub WHvEmulatorGetVirtualProcessorRegisters: WHV_EMULATOR_GET_VIRTUAL_PROCESSOR_REGISTERS_CALLBACK, - pub WHvEmulatorSetVirtualProcessorRegisters: WHV_EMULATOR_SET_VIRTUAL_PROCESSOR_REGISTERS_CALLBACK, - pub WHvEmulatorTranslateGvaPage: WHV_EMULATOR_TRANSLATE_GVA_PAGE_CALLBACK, -} -impl ::core::marker::Copy for WHV_EMULATOR_CALLBACKS {} -impl ::core::clone::Clone for WHV_EMULATOR_CALLBACKS { - fn clone(&self) -> Self { - *self - } -} -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_EMULATOR_GET_VIRTUAL_PROCESSOR_REGISTERS_CALLBACK = ::core::option::Option ::windows_sys::core::HRESULT>; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_EMULATOR_IO_ACCESS_INFO { - pub Direction: u8, - pub Port: u16, - pub AccessSize: u16, - pub Data: u32, -} -impl ::core::marker::Copy for WHV_EMULATOR_IO_ACCESS_INFO {} -impl ::core::clone::Clone for WHV_EMULATOR_IO_ACCESS_INFO { - fn clone(&self) -> Self { - *self - } -} -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_EMULATOR_IO_PORT_CALLBACK = ::core::option::Option ::windows_sys::core::HRESULT>; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_EMULATOR_MEMORY_ACCESS_INFO { - pub GpaAddress: u64, - pub Direction: u8, - pub AccessSize: u8, - pub Data: [u8; 8], -} -impl ::core::marker::Copy for WHV_EMULATOR_MEMORY_ACCESS_INFO {} -impl ::core::clone::Clone for WHV_EMULATOR_MEMORY_ACCESS_INFO { - fn clone(&self) -> Self { - *self - } -} -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_EMULATOR_MEMORY_CALLBACK = ::core::option::Option ::windows_sys::core::HRESULT>; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_EMULATOR_SET_VIRTUAL_PROCESSOR_REGISTERS_CALLBACK = ::core::option::Option ::windows_sys::core::HRESULT>; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub union WHV_EMULATOR_STATUS { - pub Anonymous: WHV_EMULATOR_STATUS_0, - pub AsUINT32: u32, -} -impl ::core::marker::Copy for WHV_EMULATOR_STATUS {} -impl ::core::clone::Clone for WHV_EMULATOR_STATUS { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_EMULATOR_STATUS_0 { - pub _bitfield: u32, -} -impl ::core::marker::Copy for WHV_EMULATOR_STATUS_0 {} -impl ::core::clone::Clone for WHV_EMULATOR_STATUS_0 { - fn clone(&self) -> Self { - *self - } -} -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_EMULATOR_TRANSLATE_GVA_PAGE_CALLBACK = ::core::option::Option ::windows_sys::core::HRESULT>; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub type WHV_EXCEPTION_TYPE = i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] @@ -1437,87 +860,6 @@ pub const WHvX64ExceptionTypeAlignmentCheckFault: WHV_EXCEPTION_TYPE = 17i32; pub const WHvX64ExceptionTypeMachineCheckAbort: WHV_EXCEPTION_TYPE = 18i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const WHvX64ExceptionTypeSimdFloatingPointFault: WHV_EXCEPTION_TYPE = 19i32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub union WHV_EXTENDED_VM_EXITS { - pub Anonymous: WHV_EXTENDED_VM_EXITS_0, - pub AsUINT64: u64, -} -impl ::core::marker::Copy for WHV_EXTENDED_VM_EXITS {} -impl ::core::clone::Clone for WHV_EXTENDED_VM_EXITS { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_EXTENDED_VM_EXITS_0 { - pub _bitfield: u64, -} -impl ::core::marker::Copy for WHV_EXTENDED_VM_EXITS_0 {} -impl ::core::clone::Clone for WHV_EXTENDED_VM_EXITS_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_HYPERCALL_CONTEXT { - pub Rax: u64, - pub Rbx: u64, - pub Rcx: u64, - pub Rdx: u64, - pub R8: u64, - pub Rsi: u64, - pub Rdi: u64, - pub Reserved0: u64, - pub XmmRegisters: [WHV_UINT128; 6], - pub Reserved1: [u64; 2], -} -impl ::core::marker::Copy for WHV_HYPERCALL_CONTEXT {} -impl ::core::clone::Clone for WHV_HYPERCALL_CONTEXT { - fn clone(&self) -> Self { - *self - } -} -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHV_HYPERCALL_CONTEXT_MAX_XMM_REGISTERS: u32 = 6u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub union WHV_INTERNAL_ACTIVITY_REGISTER { - pub Anonymous: WHV_INTERNAL_ACTIVITY_REGISTER_0, - pub AsUINT64: u64, -} -impl ::core::marker::Copy for WHV_INTERNAL_ACTIVITY_REGISTER {} -impl ::core::clone::Clone for WHV_INTERNAL_ACTIVITY_REGISTER { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_INTERNAL_ACTIVITY_REGISTER_0 { - pub _bitfield: u64, -} -impl ::core::marker::Copy for WHV_INTERNAL_ACTIVITY_REGISTER_0 {} -impl ::core::clone::Clone for WHV_INTERNAL_ACTIVITY_REGISTER_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_INTERRUPT_CONTROL { - pub _bitfield: u64, - pub Destination: u32, - pub Vector: u32, -} -impl ::core::marker::Copy for WHV_INTERRUPT_CONTROL {} -impl ::core::clone::Clone for WHV_INTERRUPT_CONTROL { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub type WHV_INTERRUPT_DESTINATION_MODE = i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] @@ -1557,66 +899,13 @@ pub const WHvMapGpaRangeFlagExecute: WHV_MAP_GPA_RANGE_FLAGS = 4u32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const WHvMapGpaRangeFlagTrackDirtyPages: WHV_MAP_GPA_RANGE_FLAGS = 8u32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHV_MAX_DEVICE_ID_SIZE_IN_CHARS: u32 = 200u32; -#[repr(C)] +pub type WHV_MEMORY_ACCESS_TYPE = i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_MEMORY_ACCESS_CONTEXT { - pub InstructionByteCount: u8, - pub Reserved: [u8; 3], - pub InstructionBytes: [u8; 16], - pub AccessInfo: WHV_MEMORY_ACCESS_INFO, - pub Gpa: u64, - pub Gva: u64, -} -impl ::core::marker::Copy for WHV_MEMORY_ACCESS_CONTEXT {} -impl ::core::clone::Clone for WHV_MEMORY_ACCESS_CONTEXT { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] +pub const WHvMemoryAccessRead: WHV_MEMORY_ACCESS_TYPE = 0i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub union WHV_MEMORY_ACCESS_INFO { - pub Anonymous: WHV_MEMORY_ACCESS_INFO_0, - pub AsUINT32: u32, -} -impl ::core::marker::Copy for WHV_MEMORY_ACCESS_INFO {} -impl ::core::clone::Clone for WHV_MEMORY_ACCESS_INFO { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_MEMORY_ACCESS_INFO_0 { - pub _bitfield: u32, -} -impl ::core::marker::Copy for WHV_MEMORY_ACCESS_INFO_0 {} -impl ::core::clone::Clone for WHV_MEMORY_ACCESS_INFO_0 { - fn clone(&self) -> Self { - *self - } -} -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_MEMORY_ACCESS_TYPE = i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvMemoryAccessRead: WHV_MEMORY_ACCESS_TYPE = 0i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvMemoryAccessWrite: WHV_MEMORY_ACCESS_TYPE = 1i32; +pub const WHvMemoryAccessWrite: WHV_MEMORY_ACCESS_TYPE = 1i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const WHvMemoryAccessExecute: WHV_MEMORY_ACCESS_TYPE = 2i32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_MEMORY_RANGE_ENTRY { - pub GuestAddress: u64, - pub SizeInBytes: u64, -} -impl ::core::marker::Copy for WHV_MEMORY_RANGE_ENTRY {} -impl ::core::clone::Clone for WHV_MEMORY_RANGE_ENTRY { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub type WHV_MSR_ACTION = i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] @@ -1625,56 +914,6 @@ pub const WHvMsrActionArchitectureDefault: WHV_MSR_ACTION = 0i32; pub const WHvMsrActionIgnoreWriteReadZero: WHV_MSR_ACTION = 1i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const WHvMsrActionExit: WHV_MSR_ACTION = 2i32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_MSR_ACTION_ENTRY { - pub Index: u32, - pub ReadAction: u8, - pub WriteAction: u8, - pub Reserved: u16, -} -impl ::core::marker::Copy for WHV_MSR_ACTION_ENTRY {} -impl ::core::clone::Clone for WHV_MSR_ACTION_ENTRY { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_NOTIFICATION_PORT_PARAMETERS { - pub NotificationPortType: WHV_NOTIFICATION_PORT_TYPE, - pub Reserved: u32, - pub Anonymous: WHV_NOTIFICATION_PORT_PARAMETERS_0, -} -impl ::core::marker::Copy for WHV_NOTIFICATION_PORT_PARAMETERS {} -impl ::core::clone::Clone for WHV_NOTIFICATION_PORT_PARAMETERS { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub union WHV_NOTIFICATION_PORT_PARAMETERS_0 { - pub Doorbell: WHV_DOORBELL_MATCH_DATA, - pub Event: WHV_NOTIFICATION_PORT_PARAMETERS_0_0, -} -impl ::core::marker::Copy for WHV_NOTIFICATION_PORT_PARAMETERS_0 {} -impl ::core::clone::Clone for WHV_NOTIFICATION_PORT_PARAMETERS_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_NOTIFICATION_PORT_PARAMETERS_0_0 { - pub ConnectionId: u32, -} -impl ::core::marker::Copy for WHV_NOTIFICATION_PORT_PARAMETERS_0_0 {} -impl ::core::clone::Clone for WHV_NOTIFICATION_PORT_PARAMETERS_0_0 { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub type WHV_NOTIFICATION_PORT_PROPERTY_CODE = i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] @@ -1691,63 +930,6 @@ pub const WHvNotificationPortTypeDoorbell: WHV_NOTIFICATION_PORT_TYPE = 4i32; pub type WHV_PARTITION_COUNTER_SET = i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const WHvPartitionCounterSetMemory: WHV_PARTITION_COUNTER_SET = 0i32; -pub type WHV_PARTITION_HANDLE = isize; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_PARTITION_MEMORY_COUNTERS { - pub Mapped4KPageCount: u64, - pub Mapped2MPageCount: u64, - pub Mapped1GPageCount: u64, -} -impl ::core::marker::Copy for WHV_PARTITION_MEMORY_COUNTERS {} -impl ::core::clone::Clone for WHV_PARTITION_MEMORY_COUNTERS { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`, `\"Win32_Foundation\"`*"] -#[cfg(feature = "Win32_Foundation")] -pub union WHV_PARTITION_PROPERTY { - pub ExtendedVmExits: WHV_EXTENDED_VM_EXITS, - pub ProcessorFeatures: WHV_PROCESSOR_FEATURES, - pub SyntheticProcessorFeaturesBanks: WHV_SYNTHETIC_PROCESSOR_FEATURES_BANKS, - pub ProcessorXsaveFeatures: WHV_PROCESSOR_XSAVE_FEATURES, - pub ProcessorClFlushSize: u8, - pub ProcessorCount: u32, - pub CpuidExitList: [u32; 1], - pub CpuidResultList: [WHV_X64_CPUID_RESULT; 1], - pub CpuidResultList2: [WHV_X64_CPUID_RESULT2; 1], - pub MsrActionList: [WHV_MSR_ACTION_ENTRY; 1], - pub UnimplementedMsrAction: WHV_MSR_ACTION, - pub ExceptionExitBitmap: u64, - pub LocalApicEmulationMode: WHV_X64_LOCAL_APIC_EMULATION_MODE, - pub SeparateSecurityDomain: super::super::Foundation::BOOL, - pub NestedVirtualization: super::super::Foundation::BOOL, - pub X64MsrExitBitmap: WHV_X64_MSR_EXIT_BITMAP, - pub ProcessorClockFrequency: u64, - pub InterruptClockFrequency: u64, - pub ApicRemoteRead: super::super::Foundation::BOOL, - pub ProcessorFeaturesBanks: WHV_PROCESSOR_FEATURES_BANKS, - pub ReferenceTime: u64, - pub PrimaryNumaNode: u16, - pub CpuReserve: u32, - pub CpuCap: u32, - pub CpuWeight: u32, - pub CpuGroupId: u64, - pub ProcessorFrequencyCap: u32, - pub AllowDeviceAssignment: super::super::Foundation::BOOL, - pub ProcessorPerfmonFeatures: WHV_PROCESSOR_PERFMON_FEATURES, - pub DisableSmt: super::super::Foundation::BOOL, -} -#[cfg(feature = "Win32_Foundation")] -impl ::core::marker::Copy for WHV_PARTITION_PROPERTY {} -#[cfg(feature = "Win32_Foundation")] -impl ::core::clone::Clone for WHV_PARTITION_PROPERTY { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub type WHV_PARTITION_PROPERTY_CODE = i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] @@ -1810,21 +992,6 @@ pub const WHvPartitionPropertyCodeMsrActionList: WHV_PARTITION_PROPERTY_CODE = 4 pub const WHvPartitionPropertyCodeUnimplementedMsrAction: WHV_PARTITION_PROPERTY_CODE = 4112i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const WHvPartitionPropertyCodeProcessorCount: WHV_PARTITION_PROPERTY_CODE = 8191i32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_PROCESSOR_APIC_COUNTERS { - pub MmioAccessCount: u64, - pub EoiAccessCount: u64, - pub TprAccessCount: u64, - pub SentIpiCount: u64, - pub SelfIpiCount: u64, -} -impl ::core::marker::Copy for WHV_PROCESSOR_APIC_COUNTERS {} -impl ::core::clone::Clone for WHV_PROCESSOR_APIC_COUNTERS { - fn clone(&self) -> Self { - *self - } -} #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub type WHV_PROCESSOR_COUNTER_SET = i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] @@ -1837,234 +1004,24 @@ pub const WHvProcessorCounterSetEvents: WHV_PROCESSOR_COUNTER_SET = 2i32; pub const WHvProcessorCounterSetApic: WHV_PROCESSOR_COUNTER_SET = 3i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const WHvProcessorCounterSetSyntheticFeatures: WHV_PROCESSOR_COUNTER_SET = 4i32; -#[repr(C)] #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_PROCESSOR_EVENT_COUNTERS { - pub PageFaultCount: u64, - pub ExceptionCount: u64, - pub InterruptCount: u64, -} -impl ::core::marker::Copy for WHV_PROCESSOR_EVENT_COUNTERS {} -impl ::core::clone::Clone for WHV_PROCESSOR_EVENT_COUNTERS { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] +pub type WHV_PROCESSOR_VENDOR = i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub union WHV_PROCESSOR_FEATURES { - pub Anonymous: WHV_PROCESSOR_FEATURES_0, - pub AsUINT64: u64, -} -impl ::core::marker::Copy for WHV_PROCESSOR_FEATURES {} -impl ::core::clone::Clone for WHV_PROCESSOR_FEATURES { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] +pub const WHvProcessorVendorAmd: WHV_PROCESSOR_VENDOR = 0i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_PROCESSOR_FEATURES_0 { - pub _bitfield: u64, -} -impl ::core::marker::Copy for WHV_PROCESSOR_FEATURES_0 {} -impl ::core::clone::Clone for WHV_PROCESSOR_FEATURES_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] +pub const WHvProcessorVendorIntel: WHV_PROCESSOR_VENDOR = 1i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub union WHV_PROCESSOR_FEATURES1 { - pub Anonymous: WHV_PROCESSOR_FEATURES1_0, - pub AsUINT64: u64, -} -impl ::core::marker::Copy for WHV_PROCESSOR_FEATURES1 {} -impl ::core::clone::Clone for WHV_PROCESSOR_FEATURES1 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] +pub const WHvProcessorVendorHygon: WHV_PROCESSOR_VENDOR = 2i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_PROCESSOR_FEATURES1_0 { - pub _bitfield: u64, -} -impl ::core::marker::Copy for WHV_PROCESSOR_FEATURES1_0 {} -impl ::core::clone::Clone for WHV_PROCESSOR_FEATURES1_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] +pub type WHV_REGISTER_NAME = i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_PROCESSOR_FEATURES_BANKS { - pub BanksCount: u32, - pub Reserved0: u32, - pub Anonymous: WHV_PROCESSOR_FEATURES_BANKS_0, -} -impl ::core::marker::Copy for WHV_PROCESSOR_FEATURES_BANKS {} -impl ::core::clone::Clone for WHV_PROCESSOR_FEATURES_BANKS { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] +pub const WHvX64RegisterRax: WHV_REGISTER_NAME = 0i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub union WHV_PROCESSOR_FEATURES_BANKS_0 { - pub Anonymous: WHV_PROCESSOR_FEATURES_BANKS_0_0, - pub AsUINT64: [u64; 2], -} -impl ::core::marker::Copy for WHV_PROCESSOR_FEATURES_BANKS_0 {} -impl ::core::clone::Clone for WHV_PROCESSOR_FEATURES_BANKS_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] +pub const WHvX64RegisterRcx: WHV_REGISTER_NAME = 1i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_PROCESSOR_FEATURES_BANKS_0_0 { - pub Bank0: WHV_PROCESSOR_FEATURES, - pub Bank1: WHV_PROCESSOR_FEATURES1, -} -impl ::core::marker::Copy for WHV_PROCESSOR_FEATURES_BANKS_0_0 {} -impl ::core::clone::Clone for WHV_PROCESSOR_FEATURES_BANKS_0_0 { - fn clone(&self) -> Self { - *self - } -} +pub const WHvX64RegisterRdx: WHV_REGISTER_NAME = 2i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHV_PROCESSOR_FEATURES_BANKS_COUNT: u32 = 2u32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_PROCESSOR_INTERCEPT_COUNTER { - pub Count: u64, - pub Time100ns: u64, -} -impl ::core::marker::Copy for WHV_PROCESSOR_INTERCEPT_COUNTER {} -impl ::core::clone::Clone for WHV_PROCESSOR_INTERCEPT_COUNTER { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_PROCESSOR_INTERCEPT_COUNTERS { - pub PageInvalidations: WHV_PROCESSOR_INTERCEPT_COUNTER, - pub ControlRegisterAccesses: WHV_PROCESSOR_INTERCEPT_COUNTER, - pub IoInstructions: WHV_PROCESSOR_INTERCEPT_COUNTER, - pub HaltInstructions: WHV_PROCESSOR_INTERCEPT_COUNTER, - pub CpuidInstructions: WHV_PROCESSOR_INTERCEPT_COUNTER, - pub MsrAccesses: WHV_PROCESSOR_INTERCEPT_COUNTER, - pub OtherIntercepts: WHV_PROCESSOR_INTERCEPT_COUNTER, - pub PendingInterrupts: WHV_PROCESSOR_INTERCEPT_COUNTER, - pub EmulatedInstructions: WHV_PROCESSOR_INTERCEPT_COUNTER, - pub DebugRegisterAccesses: WHV_PROCESSOR_INTERCEPT_COUNTER, - pub PageFaultIntercepts: WHV_PROCESSOR_INTERCEPT_COUNTER, - pub NestedPageFaultIntercepts: WHV_PROCESSOR_INTERCEPT_COUNTER, - pub Hypercalls: WHV_PROCESSOR_INTERCEPT_COUNTER, - pub RdpmcInstructions: WHV_PROCESSOR_INTERCEPT_COUNTER, -} -impl ::core::marker::Copy for WHV_PROCESSOR_INTERCEPT_COUNTERS {} -impl ::core::clone::Clone for WHV_PROCESSOR_INTERCEPT_COUNTERS { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub union WHV_PROCESSOR_PERFMON_FEATURES { - pub Anonymous: WHV_PROCESSOR_PERFMON_FEATURES_0, - pub AsUINT64: u64, -} -impl ::core::marker::Copy for WHV_PROCESSOR_PERFMON_FEATURES {} -impl ::core::clone::Clone for WHV_PROCESSOR_PERFMON_FEATURES { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_PROCESSOR_PERFMON_FEATURES_0 { - pub _bitfield: u64, -} -impl ::core::marker::Copy for WHV_PROCESSOR_PERFMON_FEATURES_0 {} -impl ::core::clone::Clone for WHV_PROCESSOR_PERFMON_FEATURES_0 { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_PROCESSOR_RUNTIME_COUNTERS { - pub TotalRuntime100ns: u64, - pub HypervisorRuntime100ns: u64, -} -impl ::core::marker::Copy for WHV_PROCESSOR_RUNTIME_COUNTERS {} -impl ::core::clone::Clone for WHV_PROCESSOR_RUNTIME_COUNTERS { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_PROCESSOR_SYNTHETIC_FEATURES_COUNTERS { - pub SyntheticInterruptsCount: u64, - pub LongSpinWaitHypercallsCount: u64, - pub OtherHypercallsCount: u64, - pub SyntheticInterruptHypercallsCount: u64, - pub VirtualInterruptHypercallsCount: u64, - pub VirtualMmuHypercallsCount: u64, -} -impl ::core::marker::Copy for WHV_PROCESSOR_SYNTHETIC_FEATURES_COUNTERS {} -impl ::core::clone::Clone for WHV_PROCESSOR_SYNTHETIC_FEATURES_COUNTERS { - fn clone(&self) -> Self { - *self - } -} -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_PROCESSOR_VENDOR = i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvProcessorVendorAmd: WHV_PROCESSOR_VENDOR = 0i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvProcessorVendorIntel: WHV_PROCESSOR_VENDOR = 1i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvProcessorVendorHygon: WHV_PROCESSOR_VENDOR = 2i32; -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub union WHV_PROCESSOR_XSAVE_FEATURES { - pub Anonymous: WHV_PROCESSOR_XSAVE_FEATURES_0, - pub AsUINT64: u64, -} -impl ::core::marker::Copy for WHV_PROCESSOR_XSAVE_FEATURES {} -impl ::core::clone::Clone for WHV_PROCESSOR_XSAVE_FEATURES { - fn clone(&self) -> Self { - *self - } -} -#[repr(C)] -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub struct WHV_PROCESSOR_XSAVE_FEATURES_0 { - pub _bitfield: u64, -} -impl ::core::marker::Copy for WHV_PROCESSOR_XSAVE_FEATURES_0 {} -impl ::core::clone::Clone for WHV_PROCESSOR_XSAVE_FEATURES_0 { - fn clone(&self) -> Self { - *self - } -} -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHV_READ_WRITE_GPA_RANGE_MAX_SIZE: u32 = 16u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_REGISTER_NAME = i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvX64RegisterRax: WHV_REGISTER_NAME = 0i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvX64RegisterRcx: WHV_REGISTER_NAME = 1i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvX64RegisterRdx: WHV_REGISTER_NAME = 2i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvX64RegisterRbx: WHV_REGISTER_NAME = 3i32; +pub const WHvX64RegisterRbx: WHV_REGISTER_NAME = 3i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const WHvX64RegisterRsp: WHV_REGISTER_NAME = 4i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] @@ -2508,7 +1465,1215 @@ pub const WHvX64RegisterDeliverabilityNotifications: WHV_REGISTER_NAME = -214748 #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub const WHvRegisterInternalActivityState: WHV_REGISTER_NAME = -2147483643i32; #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvX64RegisterPendingDebugException: WHV_REGISTER_NAME = -2147483642i32; +pub const WHvX64RegisterPendingDebugException: WHV_REGISTER_NAME = -2147483642i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_RUN_VP_CANCEL_REASON = i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvRunVpCancelReasonUser: WHV_RUN_VP_CANCEL_REASON = 0i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_RUN_VP_EXIT_REASON = i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvRunVpExitReasonNone: WHV_RUN_VP_EXIT_REASON = 0i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvRunVpExitReasonMemoryAccess: WHV_RUN_VP_EXIT_REASON = 1i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvRunVpExitReasonX64IoPortAccess: WHV_RUN_VP_EXIT_REASON = 2i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvRunVpExitReasonUnrecoverableException: WHV_RUN_VP_EXIT_REASON = 4i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvRunVpExitReasonInvalidVpRegisterValue: WHV_RUN_VP_EXIT_REASON = 5i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvRunVpExitReasonUnsupportedFeature: WHV_RUN_VP_EXIT_REASON = 6i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvRunVpExitReasonX64InterruptWindow: WHV_RUN_VP_EXIT_REASON = 7i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvRunVpExitReasonX64Halt: WHV_RUN_VP_EXIT_REASON = 8i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvRunVpExitReasonX64ApicEoi: WHV_RUN_VP_EXIT_REASON = 9i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvRunVpExitReasonSynicSintDeliverable: WHV_RUN_VP_EXIT_REASON = 10i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvRunVpExitReasonX64MsrAccess: WHV_RUN_VP_EXIT_REASON = 4096i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvRunVpExitReasonX64Cpuid: WHV_RUN_VP_EXIT_REASON = 4097i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvRunVpExitReasonException: WHV_RUN_VP_EXIT_REASON = 4098i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvRunVpExitReasonX64Rdtsc: WHV_RUN_VP_EXIT_REASON = 4099i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvRunVpExitReasonX64ApicSmiTrap: WHV_RUN_VP_EXIT_REASON = 4100i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvRunVpExitReasonHypercall: WHV_RUN_VP_EXIT_REASON = 4101i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvRunVpExitReasonX64ApicInitSipiTrap: WHV_RUN_VP_EXIT_REASON = 4102i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvRunVpExitReasonX64ApicWriteTrap: WHV_RUN_VP_EXIT_REASON = 4103i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvRunVpExitReasonCanceled: WHV_RUN_VP_EXIT_REASON = 8193i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_TRANSLATE_GVA_FLAGS = u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvTranslateGvaFlagNone: WHV_TRANSLATE_GVA_FLAGS = 0u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvTranslateGvaFlagValidateRead: WHV_TRANSLATE_GVA_FLAGS = 1u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvTranslateGvaFlagValidateWrite: WHV_TRANSLATE_GVA_FLAGS = 2u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvTranslateGvaFlagValidateExecute: WHV_TRANSLATE_GVA_FLAGS = 4u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvTranslateGvaFlagPrivilegeExempt: WHV_TRANSLATE_GVA_FLAGS = 8u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvTranslateGvaFlagSetPageTableBits: WHV_TRANSLATE_GVA_FLAGS = 16u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvTranslateGvaFlagEnforceSmap: WHV_TRANSLATE_GVA_FLAGS = 256u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvTranslateGvaFlagOverrideSmap: WHV_TRANSLATE_GVA_FLAGS = 512u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_TRANSLATE_GVA_RESULT_CODE = i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvTranslateGvaResultSuccess: WHV_TRANSLATE_GVA_RESULT_CODE = 0i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvTranslateGvaResultPageNotPresent: WHV_TRANSLATE_GVA_RESULT_CODE = 1i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvTranslateGvaResultPrivilegeViolation: WHV_TRANSLATE_GVA_RESULT_CODE = 2i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvTranslateGvaResultInvalidPageTableFlags: WHV_TRANSLATE_GVA_RESULT_CODE = 3i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvTranslateGvaResultGpaUnmapped: WHV_TRANSLATE_GVA_RESULT_CODE = 4i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvTranslateGvaResultGpaNoReadAccess: WHV_TRANSLATE_GVA_RESULT_CODE = 5i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvTranslateGvaResultGpaNoWriteAccess: WHV_TRANSLATE_GVA_RESULT_CODE = 6i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvTranslateGvaResultGpaIllegalOverlayAccess: WHV_TRANSLATE_GVA_RESULT_CODE = 7i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvTranslateGvaResultIntercept: WHV_TRANSLATE_GVA_RESULT_CODE = 8i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_TRIGGER_TYPE = i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvTriggerTypeInterrupt: WHV_TRIGGER_TYPE = 0i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvTriggerTypeSynicEvent: WHV_TRIGGER_TYPE = 1i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvTriggerTypeDeviceInterrupt: WHV_TRIGGER_TYPE = 2i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_VIRTUAL_PROCESSOR_PROPERTY_CODE = i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVirtualProcessorPropertyCodeNumaNode: WHV_VIRTUAL_PROCESSOR_PROPERTY_CODE = 0i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_VIRTUAL_PROCESSOR_STATE_TYPE = i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVirtualProcessorStateTypeSynicMessagePage: WHV_VIRTUAL_PROCESSOR_STATE_TYPE = 0i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVirtualProcessorStateTypeSynicEventFlagPage: WHV_VIRTUAL_PROCESSOR_STATE_TYPE = 1i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVirtualProcessorStateTypeSynicTimerState: WHV_VIRTUAL_PROCESSOR_STATE_TYPE = 2i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVirtualProcessorStateTypeInterruptControllerState2: WHV_VIRTUAL_PROCESSOR_STATE_TYPE = 4096i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVirtualProcessorStateTypeXsaveState: WHV_VIRTUAL_PROCESSOR_STATE_TYPE = 4097i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_VPCI_DEVICE_NOTIFICATION_TYPE = i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVpciDeviceNotificationUndefined: WHV_VPCI_DEVICE_NOTIFICATION_TYPE = 0i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVpciDeviceNotificationMmioRemapping: WHV_VPCI_DEVICE_NOTIFICATION_TYPE = 1i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVpciDeviceNotificationSurpriseRemoval: WHV_VPCI_DEVICE_NOTIFICATION_TYPE = 2i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_VPCI_DEVICE_PROPERTY_CODE = i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVpciDevicePropertyCodeUndefined: WHV_VPCI_DEVICE_PROPERTY_CODE = 0i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVpciDevicePropertyCodeHardwareIDs: WHV_VPCI_DEVICE_PROPERTY_CODE = 1i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVpciDevicePropertyCodeProbedBARs: WHV_VPCI_DEVICE_PROPERTY_CODE = 2i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_VPCI_DEVICE_REGISTER_SPACE = i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVpciConfigSpace: WHV_VPCI_DEVICE_REGISTER_SPACE = -1i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVpciBar0: WHV_VPCI_DEVICE_REGISTER_SPACE = 0i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVpciBar1: WHV_VPCI_DEVICE_REGISTER_SPACE = 1i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVpciBar2: WHV_VPCI_DEVICE_REGISTER_SPACE = 2i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVpciBar3: WHV_VPCI_DEVICE_REGISTER_SPACE = 3i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVpciBar4: WHV_VPCI_DEVICE_REGISTER_SPACE = 4i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVpciBar5: WHV_VPCI_DEVICE_REGISTER_SPACE = 5i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_VPCI_INTERRUPT_TARGET_FLAGS = u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVpciInterruptTargetFlagNone: WHV_VPCI_INTERRUPT_TARGET_FLAGS = 0u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVpciInterruptTargetFlagMulticast: WHV_VPCI_INTERRUPT_TARGET_FLAGS = 1u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_VPCI_MMIO_RANGE_FLAGS = u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVpciMmioRangeFlagReadAccess: WHV_VPCI_MMIO_RANGE_FLAGS = 1u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvVpciMmioRangeFlagWriteAccess: WHV_VPCI_MMIO_RANGE_FLAGS = 2u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_X64_APIC_WRITE_TYPE = i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvX64ApicWriteTypeLdr: WHV_X64_APIC_WRITE_TYPE = 208i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvX64ApicWriteTypeDfr: WHV_X64_APIC_WRITE_TYPE = 224i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvX64ApicWriteTypeSvr: WHV_X64_APIC_WRITE_TYPE = 240i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvX64ApicWriteTypeLint0: WHV_X64_APIC_WRITE_TYPE = 848i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvX64ApicWriteTypeLint1: WHV_X64_APIC_WRITE_TYPE = 864i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_X64_CPUID_RESULT2_FLAGS = u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvX64CpuidResult2FlagSubleafSpecific: WHV_X64_CPUID_RESULT2_FLAGS = 1u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvX64CpuidResult2FlagVpSpecific: WHV_X64_CPUID_RESULT2_FLAGS = 2u32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_X64_LOCAL_APIC_EMULATION_MODE = i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvX64LocalApicEmulationModeNone: WHV_X64_LOCAL_APIC_EMULATION_MODE = 0i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvX64LocalApicEmulationModeXApic: WHV_X64_LOCAL_APIC_EMULATION_MODE = 1i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvX64LocalApicEmulationModeX2Apic: WHV_X64_LOCAL_APIC_EMULATION_MODE = 2i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_X64_PENDING_EVENT_TYPE = i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvX64PendingEventException: WHV_X64_PENDING_EVENT_TYPE = 0i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvX64PendingEventExtInt: WHV_X64_PENDING_EVENT_TYPE = 5i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_X64_PENDING_INTERRUPTION_TYPE = i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvX64PendingInterrupt: WHV_X64_PENDING_INTERRUPTION_TYPE = 0i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvX64PendingNmi: WHV_X64_PENDING_INTERRUPTION_TYPE = 2i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvX64PendingException: WHV_X64_PENDING_INTERRUPTION_TYPE = 3i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_X64_UNSUPPORTED_FEATURE_CODE = i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvUnsupportedFeatureIntercept: WHV_X64_UNSUPPORTED_FEATURE_CODE = 1i32; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub const WHvUnsupportedFeatureTaskSwitchTss: WHV_X64_UNSUPPORTED_FEATURE_CODE = 2i32; +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct DOS_IMAGE_INFO { + pub PdbName: ::windows_sys::core::PCSTR, + pub ImageBaseAddress: u64, + pub ImageSize: u32, + pub Timestamp: u32, +} +impl ::core::marker::Copy for DOS_IMAGE_INFO {} +impl ::core::clone::Clone for DOS_IMAGE_INFO { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct GPA_MEMORY_CHUNK { + pub GuestPhysicalStartPageIndex: u64, + pub PageCount: u64, +} +impl ::core::marker::Copy for GPA_MEMORY_CHUNK {} +impl ::core::clone::Clone for GPA_MEMORY_CHUNK { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub union GUEST_OS_INFO { + pub AsUINT64: u64, + pub ClosedSource: GUEST_OS_INFO_0, + pub OpenSource: GUEST_OS_INFO_1, +} +impl ::core::marker::Copy for GUEST_OS_INFO {} +impl ::core::clone::Clone for GUEST_OS_INFO { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct GUEST_OS_INFO_0 { + pub _bitfield: u64, +} +impl ::core::marker::Copy for GUEST_OS_INFO_0 {} +impl ::core::clone::Clone for GUEST_OS_INFO_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct GUEST_OS_INFO_1 { + pub _bitfield: u64, +} +impl ::core::marker::Copy for GUEST_OS_INFO_1 {} +impl ::core::clone::Clone for GUEST_OS_INFO_1 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct HDV_PCI_DEVICE_INTERFACE { + pub Version: HDV_PCI_INTERFACE_VERSION, + pub Initialize: HDV_PCI_DEVICE_INITIALIZE, + pub Teardown: HDV_PCI_DEVICE_TEARDOWN, + pub SetConfiguration: HDV_PCI_DEVICE_SET_CONFIGURATION, + pub GetDetails: HDV_PCI_DEVICE_GET_DETAILS, + pub Start: HDV_PCI_DEVICE_START, + pub Stop: HDV_PCI_DEVICE_STOP, + pub ReadConfigSpace: HDV_PCI_READ_CONFIG_SPACE, + pub WriteConfigSpace: HDV_PCI_WRITE_CONFIG_SPACE, + pub ReadInterceptedMemory: HDV_PCI_READ_INTERCEPTED_MEMORY, + pub WriteInterceptedMemory: HDV_PCI_WRITE_INTERCEPTED_MEMORY, +} +impl ::core::marker::Copy for HDV_PCI_DEVICE_INTERFACE {} +impl ::core::clone::Clone for HDV_PCI_DEVICE_INTERFACE { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct HDV_PCI_PNP_ID { + pub VendorID: u16, + pub DeviceID: u16, + pub RevisionID: u8, + pub ProgIf: u8, + pub SubClass: u8, + pub BaseClass: u8, + pub SubVendorID: u16, + pub SubSystemID: u16, +} +impl ::core::marker::Copy for HDV_PCI_PNP_ID {} +impl ::core::clone::Clone for HDV_PCI_PNP_ID { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct HVSOCKET_ADDRESS_INFO { + pub SystemId: ::windows_sys::core::GUID, + pub VirtualMachineId: ::windows_sys::core::GUID, + pub SiloId: ::windows_sys::core::GUID, + pub Flags: u32, +} +impl ::core::marker::Copy for HVSOCKET_ADDRESS_INFO {} +impl ::core::clone::Clone for HVSOCKET_ADDRESS_INFO { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct MODULE_INFO { + pub ProcessImageName: ::windows_sys::core::PCSTR, + pub Image: DOS_IMAGE_INFO, +} +impl ::core::marker::Copy for MODULE_INFO {} +impl ::core::clone::Clone for MODULE_INFO { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct SOCKADDR_HV { + pub Family: u16, + pub Reserved: u16, + pub VmId: ::windows_sys::core::GUID, + pub ServiceId: ::windows_sys::core::GUID, +} +impl ::core::marker::Copy for SOCKADDR_HV {} +impl ::core::clone::Clone for SOCKADDR_HV { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub union VIRTUAL_PROCESSOR_REGISTER { + pub Reg64: u64, + pub Reg32: u32, + pub Reg16: u16, + pub Reg8: u8, + pub Reg128: VIRTUAL_PROCESSOR_REGISTER_0, + pub X64: VIRTUAL_PROCESSOR_REGISTER_1, +} +impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER {} +impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct VIRTUAL_PROCESSOR_REGISTER_0 { + pub Low64: u64, + pub High64: u64, +} +impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_0 {} +impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub union VIRTUAL_PROCESSOR_REGISTER_1 { + pub Segment: VIRTUAL_PROCESSOR_REGISTER_1_1, + pub Table: VIRTUAL_PROCESSOR_REGISTER_1_2, + pub FpControlStatus: VIRTUAL_PROCESSOR_REGISTER_1_0, + pub XmmControlStatus: VIRTUAL_PROCESSOR_REGISTER_1_3, +} +impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1 {} +impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct VIRTUAL_PROCESSOR_REGISTER_1_0 { + pub FpControl: u16, + pub FpStatus: u16, + pub FpTag: u8, + pub Reserved: u8, + pub LastFpOp: u16, + pub Anonymous: VIRTUAL_PROCESSOR_REGISTER_1_0_0, +} +impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1_0 {} +impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub union VIRTUAL_PROCESSOR_REGISTER_1_0_0 { + pub LastFpRip: u64, + pub Anonymous: VIRTUAL_PROCESSOR_REGISTER_1_0_0_0, +} +impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1_0_0 {} +impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1_0_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct VIRTUAL_PROCESSOR_REGISTER_1_0_0_0 { + pub LastFpEip: u32, + pub LastFpCs: u16, +} +impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1_0_0_0 {} +impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1_0_0_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct VIRTUAL_PROCESSOR_REGISTER_1_1 { + pub Base: u64, + pub Limit: u32, + pub Selector: u16, + pub Anonymous: VIRTUAL_PROCESSOR_REGISTER_1_1_0, +} +impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1_1 {} +impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1_1 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub union VIRTUAL_PROCESSOR_REGISTER_1_1_0 { + pub Attributes: u16, + pub Anonymous: VIRTUAL_PROCESSOR_REGISTER_1_1_0_0, +} +impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1_1_0 {} +impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1_1_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct VIRTUAL_PROCESSOR_REGISTER_1_1_0_0 { + pub _bitfield: u16, +} +impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1_1_0_0 {} +impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1_1_0_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct VIRTUAL_PROCESSOR_REGISTER_1_2 { + pub Limit: u16, + pub Base: u64, +} +impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1_2 {} +impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1_2 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct VIRTUAL_PROCESSOR_REGISTER_1_3 { + pub Anonymous: VIRTUAL_PROCESSOR_REGISTER_1_3_0, + pub XmmStatusControl: u32, + pub XmmStatusControlMask: u32, +} +impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1_3 {} +impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1_3 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub union VIRTUAL_PROCESSOR_REGISTER_1_3_0 { + pub LastFpRdp: u64, + pub Anonymous: VIRTUAL_PROCESSOR_REGISTER_1_3_0_0, +} +impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1_3_0 {} +impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1_3_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct VIRTUAL_PROCESSOR_REGISTER_1_3_0_0 { + pub LastFpDp: u32, + pub LastFpDs: u16, +} +impl ::core::marker::Copy for VIRTUAL_PROCESSOR_REGISTER_1_3_0_0 {} +impl ::core::clone::Clone for VIRTUAL_PROCESSOR_REGISTER_1_3_0_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct VM_GENCOUNTER { + pub GenerationCount: u64, + pub GenerationCountHigh: u64, +} +impl ::core::marker::Copy for VM_GENCOUNTER {} +impl ::core::clone::Clone for VM_GENCOUNTER { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub union WHV_ACCESS_GPA_CONTROLS { + pub AsUINT64: u64, + pub Anonymous: WHV_ACCESS_GPA_CONTROLS_0, +} +impl ::core::marker::Copy for WHV_ACCESS_GPA_CONTROLS {} +impl ::core::clone::Clone for WHV_ACCESS_GPA_CONTROLS { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_ACCESS_GPA_CONTROLS_0 { + pub CacheType: WHV_CACHE_TYPE, + pub Reserved: u32, +} +impl ::core::marker::Copy for WHV_ACCESS_GPA_CONTROLS_0 {} +impl ::core::clone::Clone for WHV_ACCESS_GPA_CONTROLS_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub union WHV_ADVISE_GPA_RANGE { + pub Populate: WHV_ADVISE_GPA_RANGE_POPULATE, +} +impl ::core::marker::Copy for WHV_ADVISE_GPA_RANGE {} +impl ::core::clone::Clone for WHV_ADVISE_GPA_RANGE { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_ADVISE_GPA_RANGE_POPULATE { + pub Flags: WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS, + pub AccessType: WHV_MEMORY_ACCESS_TYPE, +} +impl ::core::marker::Copy for WHV_ADVISE_GPA_RANGE_POPULATE {} +impl ::core::clone::Clone for WHV_ADVISE_GPA_RANGE_POPULATE { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub union WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS { + pub AsUINT32: u32, + pub Anonymous: WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS_0, +} +impl ::core::marker::Copy for WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS {} +impl ::core::clone::Clone for WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS_0 { + pub _bitfield: u32, +} +impl ::core::marker::Copy for WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS_0 {} +impl ::core::clone::Clone for WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub union WHV_CAPABILITY { + pub HypervisorPresent: super::super::Foundation::BOOL, + pub Features: WHV_CAPABILITY_FEATURES, + pub ExtendedVmExits: WHV_EXTENDED_VM_EXITS, + pub ProcessorVendor: WHV_PROCESSOR_VENDOR, + pub ProcessorFeatures: WHV_PROCESSOR_FEATURES, + pub SyntheticProcessorFeaturesBanks: WHV_SYNTHETIC_PROCESSOR_FEATURES_BANKS, + pub ProcessorXsaveFeatures: WHV_PROCESSOR_XSAVE_FEATURES, + pub ProcessorClFlushSize: u8, + pub ExceptionExitBitmap: u64, + pub X64MsrExitBitmap: WHV_X64_MSR_EXIT_BITMAP, + pub ProcessorClockFrequency: u64, + pub InterruptClockFrequency: u64, + pub ProcessorFeaturesBanks: WHV_PROCESSOR_FEATURES_BANKS, + pub GpaRangePopulateFlags: WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS, + pub ProcessorFrequencyCap: WHV_CAPABILITY_PROCESSOR_FREQUENCY_CAP, + pub ProcessorPerfmonFeatures: WHV_PROCESSOR_PERFMON_FEATURES, + pub SchedulerFeatures: WHV_SCHEDULER_FEATURES, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for WHV_CAPABILITY {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for WHV_CAPABILITY { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub union WHV_CAPABILITY_FEATURES { + pub Anonymous: WHV_CAPABILITY_FEATURES_0, + pub AsUINT64: u64, +} +impl ::core::marker::Copy for WHV_CAPABILITY_FEATURES {} +impl ::core::clone::Clone for WHV_CAPABILITY_FEATURES { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_CAPABILITY_FEATURES_0 { + pub _bitfield: u64, +} +impl ::core::marker::Copy for WHV_CAPABILITY_FEATURES_0 {} +impl ::core::clone::Clone for WHV_CAPABILITY_FEATURES_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_CAPABILITY_PROCESSOR_FREQUENCY_CAP { + pub _bitfield: u32, + pub HighestFrequencyMhz: u32, + pub NominalFrequencyMhz: u32, + pub LowestFrequencyMhz: u32, + pub FrequencyStepMhz: u32, +} +impl ::core::marker::Copy for WHV_CAPABILITY_PROCESSOR_FREQUENCY_CAP {} +impl ::core::clone::Clone for WHV_CAPABILITY_PROCESSOR_FREQUENCY_CAP { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_CPUID_OUTPUT { + pub Eax: u32, + pub Ebx: u32, + pub Ecx: u32, + pub Edx: u32, +} +impl ::core::marker::Copy for WHV_CPUID_OUTPUT {} +impl ::core::clone::Clone for WHV_CPUID_OUTPUT { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_DOORBELL_MATCH_DATA { + pub GuestAddress: u64, + pub Value: u64, + pub Length: u32, + pub _bitfield: u32, +} +impl ::core::marker::Copy for WHV_DOORBELL_MATCH_DATA {} +impl ::core::clone::Clone for WHV_DOORBELL_MATCH_DATA { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_EMULATOR_CALLBACKS { + pub Size: u32, + pub Reserved: u32, + pub WHvEmulatorIoPortCallback: WHV_EMULATOR_IO_PORT_CALLBACK, + pub WHvEmulatorMemoryCallback: WHV_EMULATOR_MEMORY_CALLBACK, + pub WHvEmulatorGetVirtualProcessorRegisters: WHV_EMULATOR_GET_VIRTUAL_PROCESSOR_REGISTERS_CALLBACK, + pub WHvEmulatorSetVirtualProcessorRegisters: WHV_EMULATOR_SET_VIRTUAL_PROCESSOR_REGISTERS_CALLBACK, + pub WHvEmulatorTranslateGvaPage: WHV_EMULATOR_TRANSLATE_GVA_PAGE_CALLBACK, +} +impl ::core::marker::Copy for WHV_EMULATOR_CALLBACKS {} +impl ::core::clone::Clone for WHV_EMULATOR_CALLBACKS { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_EMULATOR_IO_ACCESS_INFO { + pub Direction: u8, + pub Port: u16, + pub AccessSize: u16, + pub Data: u32, +} +impl ::core::marker::Copy for WHV_EMULATOR_IO_ACCESS_INFO {} +impl ::core::clone::Clone for WHV_EMULATOR_IO_ACCESS_INFO { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_EMULATOR_MEMORY_ACCESS_INFO { + pub GpaAddress: u64, + pub Direction: u8, + pub AccessSize: u8, + pub Data: [u8; 8], +} +impl ::core::marker::Copy for WHV_EMULATOR_MEMORY_ACCESS_INFO {} +impl ::core::clone::Clone for WHV_EMULATOR_MEMORY_ACCESS_INFO { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub union WHV_EMULATOR_STATUS { + pub Anonymous: WHV_EMULATOR_STATUS_0, + pub AsUINT32: u32, +} +impl ::core::marker::Copy for WHV_EMULATOR_STATUS {} +impl ::core::clone::Clone for WHV_EMULATOR_STATUS { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_EMULATOR_STATUS_0 { + pub _bitfield: u32, +} +impl ::core::marker::Copy for WHV_EMULATOR_STATUS_0 {} +impl ::core::clone::Clone for WHV_EMULATOR_STATUS_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub union WHV_EXTENDED_VM_EXITS { + pub Anonymous: WHV_EXTENDED_VM_EXITS_0, + pub AsUINT64: u64, +} +impl ::core::marker::Copy for WHV_EXTENDED_VM_EXITS {} +impl ::core::clone::Clone for WHV_EXTENDED_VM_EXITS { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_EXTENDED_VM_EXITS_0 { + pub _bitfield: u64, +} +impl ::core::marker::Copy for WHV_EXTENDED_VM_EXITS_0 {} +impl ::core::clone::Clone for WHV_EXTENDED_VM_EXITS_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_HYPERCALL_CONTEXT { + pub Rax: u64, + pub Rbx: u64, + pub Rcx: u64, + pub Rdx: u64, + pub R8: u64, + pub Rsi: u64, + pub Rdi: u64, + pub Reserved0: u64, + pub XmmRegisters: [WHV_UINT128; 6], + pub Reserved1: [u64; 2], +} +impl ::core::marker::Copy for WHV_HYPERCALL_CONTEXT {} +impl ::core::clone::Clone for WHV_HYPERCALL_CONTEXT { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub union WHV_INTERNAL_ACTIVITY_REGISTER { + pub Anonymous: WHV_INTERNAL_ACTIVITY_REGISTER_0, + pub AsUINT64: u64, +} +impl ::core::marker::Copy for WHV_INTERNAL_ACTIVITY_REGISTER {} +impl ::core::clone::Clone for WHV_INTERNAL_ACTIVITY_REGISTER { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_INTERNAL_ACTIVITY_REGISTER_0 { + pub _bitfield: u64, +} +impl ::core::marker::Copy for WHV_INTERNAL_ACTIVITY_REGISTER_0 {} +impl ::core::clone::Clone for WHV_INTERNAL_ACTIVITY_REGISTER_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_INTERRUPT_CONTROL { + pub _bitfield: u64, + pub Destination: u32, + pub Vector: u32, +} +impl ::core::marker::Copy for WHV_INTERRUPT_CONTROL {} +impl ::core::clone::Clone for WHV_INTERRUPT_CONTROL { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_MEMORY_ACCESS_CONTEXT { + pub InstructionByteCount: u8, + pub Reserved: [u8; 3], + pub InstructionBytes: [u8; 16], + pub AccessInfo: WHV_MEMORY_ACCESS_INFO, + pub Gpa: u64, + pub Gva: u64, +} +impl ::core::marker::Copy for WHV_MEMORY_ACCESS_CONTEXT {} +impl ::core::clone::Clone for WHV_MEMORY_ACCESS_CONTEXT { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub union WHV_MEMORY_ACCESS_INFO { + pub Anonymous: WHV_MEMORY_ACCESS_INFO_0, + pub AsUINT32: u32, +} +impl ::core::marker::Copy for WHV_MEMORY_ACCESS_INFO {} +impl ::core::clone::Clone for WHV_MEMORY_ACCESS_INFO { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_MEMORY_ACCESS_INFO_0 { + pub _bitfield: u32, +} +impl ::core::marker::Copy for WHV_MEMORY_ACCESS_INFO_0 {} +impl ::core::clone::Clone for WHV_MEMORY_ACCESS_INFO_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_MEMORY_RANGE_ENTRY { + pub GuestAddress: u64, + pub SizeInBytes: u64, +} +impl ::core::marker::Copy for WHV_MEMORY_RANGE_ENTRY {} +impl ::core::clone::Clone for WHV_MEMORY_RANGE_ENTRY { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_MSR_ACTION_ENTRY { + pub Index: u32, + pub ReadAction: u8, + pub WriteAction: u8, + pub Reserved: u16, +} +impl ::core::marker::Copy for WHV_MSR_ACTION_ENTRY {} +impl ::core::clone::Clone for WHV_MSR_ACTION_ENTRY { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_NOTIFICATION_PORT_PARAMETERS { + pub NotificationPortType: WHV_NOTIFICATION_PORT_TYPE, + pub Reserved: u32, + pub Anonymous: WHV_NOTIFICATION_PORT_PARAMETERS_0, +} +impl ::core::marker::Copy for WHV_NOTIFICATION_PORT_PARAMETERS {} +impl ::core::clone::Clone for WHV_NOTIFICATION_PORT_PARAMETERS { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub union WHV_NOTIFICATION_PORT_PARAMETERS_0 { + pub Doorbell: WHV_DOORBELL_MATCH_DATA, + pub Event: WHV_NOTIFICATION_PORT_PARAMETERS_0_0, +} +impl ::core::marker::Copy for WHV_NOTIFICATION_PORT_PARAMETERS_0 {} +impl ::core::clone::Clone for WHV_NOTIFICATION_PORT_PARAMETERS_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_NOTIFICATION_PORT_PARAMETERS_0_0 { + pub ConnectionId: u32, +} +impl ::core::marker::Copy for WHV_NOTIFICATION_PORT_PARAMETERS_0_0 {} +impl ::core::clone::Clone for WHV_NOTIFICATION_PORT_PARAMETERS_0_0 { + fn clone(&self) -> Self { + *self + } +} +pub type WHV_PARTITION_HANDLE = isize; +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_PARTITION_MEMORY_COUNTERS { + pub Mapped4KPageCount: u64, + pub Mapped2MPageCount: u64, + pub Mapped1GPageCount: u64, +} +impl ::core::marker::Copy for WHV_PARTITION_MEMORY_COUNTERS {} +impl ::core::clone::Clone for WHV_PARTITION_MEMORY_COUNTERS { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub union WHV_PARTITION_PROPERTY { + pub ExtendedVmExits: WHV_EXTENDED_VM_EXITS, + pub ProcessorFeatures: WHV_PROCESSOR_FEATURES, + pub SyntheticProcessorFeaturesBanks: WHV_SYNTHETIC_PROCESSOR_FEATURES_BANKS, + pub ProcessorXsaveFeatures: WHV_PROCESSOR_XSAVE_FEATURES, + pub ProcessorClFlushSize: u8, + pub ProcessorCount: u32, + pub CpuidExitList: [u32; 1], + pub CpuidResultList: [WHV_X64_CPUID_RESULT; 1], + pub CpuidResultList2: [WHV_X64_CPUID_RESULT2; 1], + pub MsrActionList: [WHV_MSR_ACTION_ENTRY; 1], + pub UnimplementedMsrAction: WHV_MSR_ACTION, + pub ExceptionExitBitmap: u64, + pub LocalApicEmulationMode: WHV_X64_LOCAL_APIC_EMULATION_MODE, + pub SeparateSecurityDomain: super::super::Foundation::BOOL, + pub NestedVirtualization: super::super::Foundation::BOOL, + pub X64MsrExitBitmap: WHV_X64_MSR_EXIT_BITMAP, + pub ProcessorClockFrequency: u64, + pub InterruptClockFrequency: u64, + pub ApicRemoteRead: super::super::Foundation::BOOL, + pub ProcessorFeaturesBanks: WHV_PROCESSOR_FEATURES_BANKS, + pub ReferenceTime: u64, + pub PrimaryNumaNode: u16, + pub CpuReserve: u32, + pub CpuCap: u32, + pub CpuWeight: u32, + pub CpuGroupId: u64, + pub ProcessorFrequencyCap: u32, + pub AllowDeviceAssignment: super::super::Foundation::BOOL, + pub ProcessorPerfmonFeatures: WHV_PROCESSOR_PERFMON_FEATURES, + pub DisableSmt: super::super::Foundation::BOOL, +} +#[cfg(feature = "Win32_Foundation")] +impl ::core::marker::Copy for WHV_PARTITION_PROPERTY {} +#[cfg(feature = "Win32_Foundation")] +impl ::core::clone::Clone for WHV_PARTITION_PROPERTY { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_PROCESSOR_APIC_COUNTERS { + pub MmioAccessCount: u64, + pub EoiAccessCount: u64, + pub TprAccessCount: u64, + pub SentIpiCount: u64, + pub SelfIpiCount: u64, +} +impl ::core::marker::Copy for WHV_PROCESSOR_APIC_COUNTERS {} +impl ::core::clone::Clone for WHV_PROCESSOR_APIC_COUNTERS { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_PROCESSOR_EVENT_COUNTERS { + pub PageFaultCount: u64, + pub ExceptionCount: u64, + pub InterruptCount: u64, +} +impl ::core::marker::Copy for WHV_PROCESSOR_EVENT_COUNTERS {} +impl ::core::clone::Clone for WHV_PROCESSOR_EVENT_COUNTERS { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub union WHV_PROCESSOR_FEATURES { + pub Anonymous: WHV_PROCESSOR_FEATURES_0, + pub AsUINT64: u64, +} +impl ::core::marker::Copy for WHV_PROCESSOR_FEATURES {} +impl ::core::clone::Clone for WHV_PROCESSOR_FEATURES { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_PROCESSOR_FEATURES_0 { + pub _bitfield: u64, +} +impl ::core::marker::Copy for WHV_PROCESSOR_FEATURES_0 {} +impl ::core::clone::Clone for WHV_PROCESSOR_FEATURES_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub union WHV_PROCESSOR_FEATURES1 { + pub Anonymous: WHV_PROCESSOR_FEATURES1_0, + pub AsUINT64: u64, +} +impl ::core::marker::Copy for WHV_PROCESSOR_FEATURES1 {} +impl ::core::clone::Clone for WHV_PROCESSOR_FEATURES1 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_PROCESSOR_FEATURES1_0 { + pub _bitfield: u64, +} +impl ::core::marker::Copy for WHV_PROCESSOR_FEATURES1_0 {} +impl ::core::clone::Clone for WHV_PROCESSOR_FEATURES1_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_PROCESSOR_FEATURES_BANKS { + pub BanksCount: u32, + pub Reserved0: u32, + pub Anonymous: WHV_PROCESSOR_FEATURES_BANKS_0, +} +impl ::core::marker::Copy for WHV_PROCESSOR_FEATURES_BANKS {} +impl ::core::clone::Clone for WHV_PROCESSOR_FEATURES_BANKS { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub union WHV_PROCESSOR_FEATURES_BANKS_0 { + pub Anonymous: WHV_PROCESSOR_FEATURES_BANKS_0_0, + pub AsUINT64: [u64; 2], +} +impl ::core::marker::Copy for WHV_PROCESSOR_FEATURES_BANKS_0 {} +impl ::core::clone::Clone for WHV_PROCESSOR_FEATURES_BANKS_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_PROCESSOR_FEATURES_BANKS_0_0 { + pub Bank0: WHV_PROCESSOR_FEATURES, + pub Bank1: WHV_PROCESSOR_FEATURES1, +} +impl ::core::marker::Copy for WHV_PROCESSOR_FEATURES_BANKS_0_0 {} +impl ::core::clone::Clone for WHV_PROCESSOR_FEATURES_BANKS_0_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_PROCESSOR_INTERCEPT_COUNTER { + pub Count: u64, + pub Time100ns: u64, +} +impl ::core::marker::Copy for WHV_PROCESSOR_INTERCEPT_COUNTER {} +impl ::core::clone::Clone for WHV_PROCESSOR_INTERCEPT_COUNTER { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_PROCESSOR_INTERCEPT_COUNTERS { + pub PageInvalidations: WHV_PROCESSOR_INTERCEPT_COUNTER, + pub ControlRegisterAccesses: WHV_PROCESSOR_INTERCEPT_COUNTER, + pub IoInstructions: WHV_PROCESSOR_INTERCEPT_COUNTER, + pub HaltInstructions: WHV_PROCESSOR_INTERCEPT_COUNTER, + pub CpuidInstructions: WHV_PROCESSOR_INTERCEPT_COUNTER, + pub MsrAccesses: WHV_PROCESSOR_INTERCEPT_COUNTER, + pub OtherIntercepts: WHV_PROCESSOR_INTERCEPT_COUNTER, + pub PendingInterrupts: WHV_PROCESSOR_INTERCEPT_COUNTER, + pub EmulatedInstructions: WHV_PROCESSOR_INTERCEPT_COUNTER, + pub DebugRegisterAccesses: WHV_PROCESSOR_INTERCEPT_COUNTER, + pub PageFaultIntercepts: WHV_PROCESSOR_INTERCEPT_COUNTER, + pub NestedPageFaultIntercepts: WHV_PROCESSOR_INTERCEPT_COUNTER, + pub Hypercalls: WHV_PROCESSOR_INTERCEPT_COUNTER, + pub RdpmcInstructions: WHV_PROCESSOR_INTERCEPT_COUNTER, +} +impl ::core::marker::Copy for WHV_PROCESSOR_INTERCEPT_COUNTERS {} +impl ::core::clone::Clone for WHV_PROCESSOR_INTERCEPT_COUNTERS { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub union WHV_PROCESSOR_PERFMON_FEATURES { + pub Anonymous: WHV_PROCESSOR_PERFMON_FEATURES_0, + pub AsUINT64: u64, +} +impl ::core::marker::Copy for WHV_PROCESSOR_PERFMON_FEATURES {} +impl ::core::clone::Clone for WHV_PROCESSOR_PERFMON_FEATURES { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_PROCESSOR_PERFMON_FEATURES_0 { + pub _bitfield: u64, +} +impl ::core::marker::Copy for WHV_PROCESSOR_PERFMON_FEATURES_0 {} +impl ::core::clone::Clone for WHV_PROCESSOR_PERFMON_FEATURES_0 { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_PROCESSOR_RUNTIME_COUNTERS { + pub TotalRuntime100ns: u64, + pub HypervisorRuntime100ns: u64, +} +impl ::core::marker::Copy for WHV_PROCESSOR_RUNTIME_COUNTERS {} +impl ::core::clone::Clone for WHV_PROCESSOR_RUNTIME_COUNTERS { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_PROCESSOR_SYNTHETIC_FEATURES_COUNTERS { + pub SyntheticInterruptsCount: u64, + pub LongSpinWaitHypercallsCount: u64, + pub OtherHypercallsCount: u64, + pub SyntheticInterruptHypercallsCount: u64, + pub VirtualInterruptHypercallsCount: u64, + pub VirtualMmuHypercallsCount: u64, +} +impl ::core::marker::Copy for WHV_PROCESSOR_SYNTHETIC_FEATURES_COUNTERS {} +impl ::core::clone::Clone for WHV_PROCESSOR_SYNTHETIC_FEATURES_COUNTERS { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub union WHV_PROCESSOR_XSAVE_FEATURES { + pub Anonymous: WHV_PROCESSOR_XSAVE_FEATURES_0, + pub AsUINT64: u64, +} +impl ::core::marker::Copy for WHV_PROCESSOR_XSAVE_FEATURES {} +impl ::core::clone::Clone for WHV_PROCESSOR_XSAVE_FEATURES { + fn clone(&self) -> Self { + *self + } +} +#[repr(C)] +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub struct WHV_PROCESSOR_XSAVE_FEATURES_0 { + pub _bitfield: u64, +} +impl ::core::marker::Copy for WHV_PROCESSOR_XSAVE_FEATURES_0 {} +impl ::core::clone::Clone for WHV_PROCESSOR_XSAVE_FEATURES_0 { + fn clone(&self) -> Self { + *self + } +} #[repr(C)] #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub union WHV_REGISTER_VALUE { @@ -2547,10 +2712,6 @@ impl ::core::clone::Clone for WHV_RUN_VP_CANCELED_CONTEXT { *self } } -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_RUN_VP_CANCEL_REASON = i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvRunVpCancelReasonUser: WHV_RUN_VP_CANCEL_REASON = 0i32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub struct WHV_RUN_VP_EXIT_CONTEXT { @@ -2590,46 +2751,6 @@ impl ::core::clone::Clone for WHV_RUN_VP_EXIT_CONTEXT_0 { *self } } -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_RUN_VP_EXIT_REASON = i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvRunVpExitReasonNone: WHV_RUN_VP_EXIT_REASON = 0i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvRunVpExitReasonMemoryAccess: WHV_RUN_VP_EXIT_REASON = 1i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvRunVpExitReasonX64IoPortAccess: WHV_RUN_VP_EXIT_REASON = 2i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvRunVpExitReasonUnrecoverableException: WHV_RUN_VP_EXIT_REASON = 4i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvRunVpExitReasonInvalidVpRegisterValue: WHV_RUN_VP_EXIT_REASON = 5i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvRunVpExitReasonUnsupportedFeature: WHV_RUN_VP_EXIT_REASON = 6i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvRunVpExitReasonX64InterruptWindow: WHV_RUN_VP_EXIT_REASON = 7i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvRunVpExitReasonX64Halt: WHV_RUN_VP_EXIT_REASON = 8i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvRunVpExitReasonX64ApicEoi: WHV_RUN_VP_EXIT_REASON = 9i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvRunVpExitReasonSynicSintDeliverable: WHV_RUN_VP_EXIT_REASON = 10i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvRunVpExitReasonX64MsrAccess: WHV_RUN_VP_EXIT_REASON = 4096i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvRunVpExitReasonX64Cpuid: WHV_RUN_VP_EXIT_REASON = 4097i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvRunVpExitReasonException: WHV_RUN_VP_EXIT_REASON = 4098i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvRunVpExitReasonX64Rdtsc: WHV_RUN_VP_EXIT_REASON = 4099i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvRunVpExitReasonX64ApicSmiTrap: WHV_RUN_VP_EXIT_REASON = 4100i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvRunVpExitReasonHypercall: WHV_RUN_VP_EXIT_REASON = 4101i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvRunVpExitReasonX64ApicInitSipiTrap: WHV_RUN_VP_EXIT_REASON = 4102i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvRunVpExitReasonX64ApicWriteTrap: WHV_RUN_VP_EXIT_REASON = 4103i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvRunVpExitReasonCanceled: WHV_RUN_VP_EXIT_REASON = 8193i32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub union WHV_SCHEDULER_FEATURES { @@ -2684,8 +2805,6 @@ impl ::core::clone::Clone for WHV_SYNIC_EVENT_PARAMETERS { *self } } -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHV_SYNIC_MESSAGE_SIZE: u32 = 256u32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub struct WHV_SYNIC_SINT_DELIVERABLE_CONTEXT { @@ -2758,26 +2877,6 @@ impl ::core::clone::Clone for WHV_SYNTHETIC_PROCESSOR_FEATURES_BANKS_0_0 { *self } } -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHV_SYNTHETIC_PROCESSOR_FEATURES_BANKS_COUNT: u32 = 1u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_TRANSLATE_GVA_FLAGS = u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvTranslateGvaFlagNone: WHV_TRANSLATE_GVA_FLAGS = 0u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvTranslateGvaFlagValidateRead: WHV_TRANSLATE_GVA_FLAGS = 1u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvTranslateGvaFlagValidateWrite: WHV_TRANSLATE_GVA_FLAGS = 2u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvTranslateGvaFlagValidateExecute: WHV_TRANSLATE_GVA_FLAGS = 4u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvTranslateGvaFlagPrivilegeExempt: WHV_TRANSLATE_GVA_FLAGS = 8u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvTranslateGvaFlagSetPageTableBits: WHV_TRANSLATE_GVA_FLAGS = 16u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvTranslateGvaFlagEnforceSmap: WHV_TRANSLATE_GVA_FLAGS = 256u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvTranslateGvaFlagOverrideSmap: WHV_TRANSLATE_GVA_FLAGS = 512u32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub struct WHV_TRANSLATE_GVA_RESULT { @@ -2790,26 +2889,6 @@ impl ::core::clone::Clone for WHV_TRANSLATE_GVA_RESULT { *self } } -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_TRANSLATE_GVA_RESULT_CODE = i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvTranslateGvaResultSuccess: WHV_TRANSLATE_GVA_RESULT_CODE = 0i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvTranslateGvaResultPageNotPresent: WHV_TRANSLATE_GVA_RESULT_CODE = 1i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvTranslateGvaResultPrivilegeViolation: WHV_TRANSLATE_GVA_RESULT_CODE = 2i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvTranslateGvaResultInvalidPageTableFlags: WHV_TRANSLATE_GVA_RESULT_CODE = 3i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvTranslateGvaResultGpaUnmapped: WHV_TRANSLATE_GVA_RESULT_CODE = 4i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvTranslateGvaResultGpaNoReadAccess: WHV_TRANSLATE_GVA_RESULT_CODE = 5i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvTranslateGvaResultGpaNoWriteAccess: WHV_TRANSLATE_GVA_RESULT_CODE = 6i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvTranslateGvaResultGpaIllegalOverlayAccess: WHV_TRANSLATE_GVA_RESULT_CODE = 7i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvTranslateGvaResultIntercept: WHV_TRANSLATE_GVA_RESULT_CODE = 8i32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub struct WHV_TRIGGER_PARAMETERS { @@ -2850,14 +2929,6 @@ impl ::core::clone::Clone for WHV_TRIGGER_PARAMETERS_0_0 { *self } } -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_TRIGGER_TYPE = i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvTriggerTypeInterrupt: WHV_TRIGGER_TYPE = 0i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvTriggerTypeSynicEvent: WHV_TRIGGER_TYPE = 1i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvTriggerTypeDeviceInterrupt: WHV_TRIGGER_TYPE = 2i32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub union WHV_UINT128 { @@ -2907,22 +2978,6 @@ impl ::core::clone::Clone for WHV_VIRTUAL_PROCESSOR_PROPERTY_0 { *self } } -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_VIRTUAL_PROCESSOR_PROPERTY_CODE = i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVirtualProcessorPropertyCodeNumaNode: WHV_VIRTUAL_PROCESSOR_PROPERTY_CODE = 0i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_VIRTUAL_PROCESSOR_STATE_TYPE = i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVirtualProcessorStateTypeSynicMessagePage: WHV_VIRTUAL_PROCESSOR_STATE_TYPE = 0i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVirtualProcessorStateTypeSynicEventFlagPage: WHV_VIRTUAL_PROCESSOR_STATE_TYPE = 1i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVirtualProcessorStateTypeSynicTimerState: WHV_VIRTUAL_PROCESSOR_STATE_TYPE = 2i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVirtualProcessorStateTypeInterruptControllerState2: WHV_VIRTUAL_PROCESSOR_STATE_TYPE = 4096i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVirtualProcessorStateTypeXsaveState: WHV_VIRTUAL_PROCESSOR_STATE_TYPE = 4097i32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub struct WHV_VPCI_DEVICE_NOTIFICATION { @@ -2947,22 +3002,6 @@ impl ::core::clone::Clone for WHV_VPCI_DEVICE_NOTIFICATION_0 { *self } } -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_VPCI_DEVICE_NOTIFICATION_TYPE = i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVpciDeviceNotificationUndefined: WHV_VPCI_DEVICE_NOTIFICATION_TYPE = 0i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVpciDeviceNotificationMmioRemapping: WHV_VPCI_DEVICE_NOTIFICATION_TYPE = 1i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVpciDeviceNotificationSurpriseRemoval: WHV_VPCI_DEVICE_NOTIFICATION_TYPE = 2i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_VPCI_DEVICE_PROPERTY_CODE = i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVpciDevicePropertyCodeUndefined: WHV_VPCI_DEVICE_PROPERTY_CODE = 0i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVpciDevicePropertyCodeHardwareIDs: WHV_VPCI_DEVICE_PROPERTY_CODE = 1i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVpciDevicePropertyCodeProbedBARs: WHV_VPCI_DEVICE_PROPERTY_CODE = 2i32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub struct WHV_VPCI_DEVICE_REGISTER { @@ -2976,22 +3015,6 @@ impl ::core::clone::Clone for WHV_VPCI_DEVICE_REGISTER { *self } } -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_VPCI_DEVICE_REGISTER_SPACE = i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVpciConfigSpace: WHV_VPCI_DEVICE_REGISTER_SPACE = -1i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVpciBar0: WHV_VPCI_DEVICE_REGISTER_SPACE = 0i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVpciBar1: WHV_VPCI_DEVICE_REGISTER_SPACE = 1i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVpciBar2: WHV_VPCI_DEVICE_REGISTER_SPACE = 2i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVpciBar3: WHV_VPCI_DEVICE_REGISTER_SPACE = 3i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVpciBar4: WHV_VPCI_DEVICE_REGISTER_SPACE = 4i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVpciBar5: WHV_VPCI_DEVICE_REGISTER_SPACE = 5i32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub struct WHV_VPCI_HARDWARE_IDS { @@ -3024,12 +3047,6 @@ impl ::core::clone::Clone for WHV_VPCI_INTERRUPT_TARGET { *self } } -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_VPCI_INTERRUPT_TARGET_FLAGS = u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVpciInterruptTargetFlagNone: WHV_VPCI_INTERRUPT_TARGET_FLAGS = 0u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVpciInterruptTargetFlagMulticast: WHV_VPCI_INTERRUPT_TARGET_FLAGS = 1u32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub struct WHV_VPCI_MMIO_MAPPING { @@ -3045,12 +3062,6 @@ impl ::core::clone::Clone for WHV_VPCI_MMIO_MAPPING { *self } } -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_VPCI_MMIO_RANGE_FLAGS = u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVpciMmioRangeFlagReadAccess: WHV_VPCI_MMIO_RANGE_FLAGS = 1u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvVpciMmioRangeFlagWriteAccess: WHV_VPCI_MMIO_RANGE_FLAGS = 2u32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub struct WHV_VPCI_PROBED_BARS { @@ -3062,8 +3073,6 @@ impl ::core::clone::Clone for WHV_VPCI_PROBED_BARS { *self } } -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHV_VPCI_TYPE0_BAR_COUNT: u32 = 6u32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub struct WHV_VP_EXCEPTION_CONTEXT { @@ -3168,18 +3177,6 @@ impl ::core::clone::Clone for WHV_X64_APIC_WRITE_CONTEXT { *self } } -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_X64_APIC_WRITE_TYPE = i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvX64ApicWriteTypeLdr: WHV_X64_APIC_WRITE_TYPE = 208i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvX64ApicWriteTypeDfr: WHV_X64_APIC_WRITE_TYPE = 224i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvX64ApicWriteTypeSvr: WHV_X64_APIC_WRITE_TYPE = 240i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvX64ApicWriteTypeLint0: WHV_X64_APIC_WRITE_TYPE = 848i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvX64ApicWriteTypeLint1: WHV_X64_APIC_WRITE_TYPE = 864i32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub struct WHV_X64_CPUID_ACCESS_CONTEXT { @@ -3230,12 +3227,6 @@ impl ::core::clone::Clone for WHV_X64_CPUID_RESULT2 { *self } } -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_X64_CPUID_RESULT2_FLAGS = u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvX64CpuidResult2FlagSubleafSpecific: WHV_X64_CPUID_RESULT2_FLAGS = 1u32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvX64CpuidResult2FlagVpSpecific: WHV_X64_CPUID_RESULT2_FLAGS = 2u32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub union WHV_X64_DELIVERABILITY_NOTIFICATIONS_REGISTER { @@ -3415,14 +3406,6 @@ impl ::core::clone::Clone for WHV_X64_IO_PORT_ACCESS_INFO_0 { *self } } -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_X64_LOCAL_APIC_EMULATION_MODE = i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvX64LocalApicEmulationModeNone: WHV_X64_LOCAL_APIC_EMULATION_MODE = 0i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvX64LocalApicEmulationModeXApic: WHV_X64_LOCAL_APIC_EMULATION_MODE = 1i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvX64LocalApicEmulationModeX2Apic: WHV_X64_LOCAL_APIC_EMULATION_MODE = 2i32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub struct WHV_X64_MSR_ACCESS_CONTEXT { @@ -3506,12 +3489,6 @@ impl ::core::clone::Clone for WHV_X64_PENDING_DEBUG_EXCEPTION_0 { *self } } -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_X64_PENDING_EVENT_TYPE = i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvX64PendingEventException: WHV_X64_PENDING_EVENT_TYPE = 0i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvX64PendingEventExtInt: WHV_X64_PENDING_EVENT_TYPE = 5i32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub union WHV_X64_PENDING_EXCEPTION_EVENT { @@ -3585,14 +3562,6 @@ impl ::core::clone::Clone for WHV_X64_PENDING_INTERRUPTION_REGISTER_0 { *self } } -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_X64_PENDING_INTERRUPTION_TYPE = i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvX64PendingInterrupt: WHV_X64_PENDING_INTERRUPTION_TYPE = 0i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvX64PendingNmi: WHV_X64_PENDING_INTERRUPTION_TYPE = 2i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvX64PendingException: WHV_X64_PENDING_INTERRUPTION_TYPE = 3i32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub struct WHV_X64_RDTSC_CONTEXT { @@ -3681,12 +3650,6 @@ impl ::core::clone::Clone for WHV_X64_TABLE_REGISTER { *self } } -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub type WHV_X64_UNSUPPORTED_FEATURE_CODE = i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvUnsupportedFeatureIntercept: WHV_X64_UNSUPPORTED_FEATURE_CODE = 1i32; -#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] -pub const WHvUnsupportedFeatureTaskSwitchTss: WHV_X64_UNSUPPORTED_FEATURE_CODE = 2i32; #[repr(C)] #[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] pub struct WHV_X64_UNSUPPORTED_FEATURE_CONTEXT { @@ -3773,3 +3736,38 @@ impl ::core::clone::Clone for WHV_X64_XMM_CONTROL_STATUS_REGISTER_0_0_0 { *self } } +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`, `\"Win32_Foundation\"`*"] +#[cfg(feature = "Win32_Foundation")] +pub type FOUND_IMAGE_CALLBACK = ::core::option::Option super::super::Foundation::BOOL>; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type GUEST_SYMBOLS_PROVIDER_DEBUG_INFO_CALLBACK = ::core::option::Option; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type HDV_PCI_DEVICE_GET_DETAILS = ::core::option::Option ::windows_sys::core::HRESULT>; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type HDV_PCI_DEVICE_INITIALIZE = ::core::option::Option ::windows_sys::core::HRESULT>; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type HDV_PCI_DEVICE_SET_CONFIGURATION = ::core::option::Option ::windows_sys::core::HRESULT>; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type HDV_PCI_DEVICE_START = ::core::option::Option ::windows_sys::core::HRESULT>; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type HDV_PCI_DEVICE_STOP = ::core::option::Option; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type HDV_PCI_DEVICE_TEARDOWN = ::core::option::Option; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type HDV_PCI_READ_CONFIG_SPACE = ::core::option::Option ::windows_sys::core::HRESULT>; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type HDV_PCI_READ_INTERCEPTED_MEMORY = ::core::option::Option ::windows_sys::core::HRESULT>; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type HDV_PCI_WRITE_CONFIG_SPACE = ::core::option::Option ::windows_sys::core::HRESULT>; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type HDV_PCI_WRITE_INTERCEPTED_MEMORY = ::core::option::Option ::windows_sys::core::HRESULT>; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_EMULATOR_GET_VIRTUAL_PROCESSOR_REGISTERS_CALLBACK = ::core::option::Option ::windows_sys::core::HRESULT>; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_EMULATOR_IO_PORT_CALLBACK = ::core::option::Option ::windows_sys::core::HRESULT>; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_EMULATOR_MEMORY_CALLBACK = ::core::option::Option ::windows_sys::core::HRESULT>; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_EMULATOR_SET_VIRTUAL_PROCESSOR_REGISTERS_CALLBACK = ::core::option::Option ::windows_sys::core::HRESULT>; +#[doc = "*Required features: `\"Win32_System_Hypervisor\"`*"] +pub type WHV_EMULATOR_TRANSLATE_GVA_PAGE_CALLBACK = ::core::option::Option ::windows_sys::core::HRESULT>; -- cgit v1.2.3