x86 / ntdllntoskrnl /

_HAL_INTEL_ENLIGHTENMENT_INFORMATION

← 10.0.18362.1016 4 builds latest →
struct _HAL_INTEL_ENLIGHTENMENT_INFORMATION {
unsigned long Enlightenments;/* 0x0 4 */
unsigned long HypervisorConnected;/* 0x4 4 */
void (*EndOfInterrupt)(void);/* 0x8 4 */
void (*ApicWriteIcr)(unsigned long, unsigned long);/* 0xc 4 */
unsigned long Reserved0;/* 0x10 4 */
unsigned long SpinCountMask;/* 0x14 4 */
void (*LongSpinWait)(unsigned long);/* 0x18 4 */
unsigned __int64 (*GetReferenceTime)(unsigned long*);/* 0x1c 4 */
long (*SetSystemSleepProperty)(unsigned, unsigned char, unsigned char);/* 0x20 4 */
long (*EnterSleepState)(unsigned);/* 0x24 4 */
long (*NotifyDebugDeviceAvailable)(void);/* 0x28 4 */
long (*MapDeviceInterrupt)(unsigned __int64, void*, struct _GROUP_AFFINITY*, void*);/* 0x2c 4 */
long (*UnmapDeviceInterrupt)(unsigned __int64, void*);/* 0x30 4 */
long (*RetargetDeviceInterrupt)(unsigned __int64, void*, void*, struct _GROUP_AFFINITY*, void*);/* 0x34 4 */
long (*SetHpetConfig)(union _LARGE_INTEGER, unsigned long, unsigned __int64, unsigned char, void*);/* 0x38 4 */
long (*NotifyHpetEnabled)(void);/* 0x3c 4 */
/* ── cacheline 1 boundary (64 bytes) ── */
long (*QueryAssociatedProcessors)(unsigned long, unsigned long*, unsigned long*);/* 0x40 4 */
long (*ReadMultipleMsr)(unsigned long, unsigned long, unsigned long*, unsigned __int64*);/* 0x44 4 */
long (*WriteMultipleMsr)(unsigned long, unsigned long, unsigned long*, unsigned __int64*);/* 0x48 4 */
long (*ReadCpuid)(unsigned long, unsigned long, unsigned long*, unsigned long*, unsigned long*, unsigned long*);/* 0x4c 4 */
long (*LpWritebackInvalidate)(unsigned long);/* 0x50 4 */
long (*GetMachineCheckContext)(unsigned long, unsigned*, unsigned __int64*, unsigned*);/* 0x54 4 */
long (*SuspendPartition)(unsigned __int64);/* 0x58 4 */
long (*ResumePartition)(unsigned __int64);/* 0x5c 4 */
long (*SetSystemMachineCheckProperty)(void*);/* 0x60 4 */
long (*WheaErrorNotification)(struct _WHEA_RECOVERY_CONTEXT*, unsigned char, unsigned char);/* 0x64 4 */
unsigned long (*GetProcessorIndexFromVpIndex)(unsigned long);/* 0x68 4 */
long (*SyntheticClusterIpi)(struct _KAFFINITY_EX*, unsigned long);/* 0x6c 4 */
unsigned char (*VpStartEnabled)(void);/* 0x70 4 */
long (*StartVirtualProcessor)(unsigned long, void*);/* 0x74 4 */
long (*GetVpIndexFromApicId)(unsigned long, unsigned long*);/* 0x78 4 */
long (*IumAccessPciDevice)(unsigned char, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, void*);/* 0x7c 4 */
/* ── cacheline 2 boundary (128 bytes) ── */
unsigned long (*IumEfiRuntimeService)(unsigned long, void*, unsigned __int64, unsigned __int64*);/* 0x80 4 */
void (*SvmGetSystemCapabilities)(struct _HAL_HV_SVM_SYSTEM_CAPABILITIES*);/* 0x84 4 */
long (*SvmGetDeviceCapabilities)(unsigned long, struct _HAL_HV_SVM_DEVICE_CAPABILITIES*);/* 0x88 4 */
long (*SvmCreatePasidSpace)(unsigned long, unsigned long);/* 0x8c 4 */
long (*SvmSetPasidAddressSpace)(unsigned long, unsigned long, unsigned __int64);/* 0x90 4 */
void (*SvmFlushPasid)(unsigned long, unsigned long, unsigned long, struct _KTB_FLUSH_VA*);/* 0x94 4 */
long (*SvmAttachPasidSpace)(unsigned long, unsigned long, unsigned long, unsigned long);/* 0x98 4 */
long (*SvmDetachPasidSpace)(unsigned long);/* 0x9c 4 */
long (*SvmEnablePasid)(unsigned long, unsigned long);/* 0xa0 4 */
long (*SvmDisablePasid)(unsigned long, unsigned long);/* 0xa4 4 */
long (*SvmAcknowledgePageRequest)(unsigned long, void*, unsigned long*);/* 0xa8 4 */
long (*SvmCreatePrQueue)(unsigned long, unsigned long, union _LARGE_INTEGER, unsigned long, unsigned long);/* 0xac 4 */
long (*SvmDeletePrQueue)(unsigned long);/* 0xb0 4 */
long (*SvmClearPrqStalled)(unsigned long);/* 0xb4 4 */
long (*SvmSetDeviceEnabled)(unsigned long, unsigned char);/* 0xb8 4 */
long (*HvDebuggerPowerHandler)(unsigned char);/* 0xbc 4 */
/* ── cacheline 3 boundary (192 bytes) ── */
long (*SetQpcBias)(unsigned __int64);/* 0xc0 4 */
unsigned __int64 (*GetQpcBias)(void);/* 0xc4 4 */
long (*RegisterDeviceId)(struct _EXT_IOMMU_DEVICE_ID*, unsigned __int64);/* 0xc8 4 */
long (*UnregisterDeviceId)(unsigned __int64);/* 0xcc 4 */
long (*AllocateDeviceDomain)(struct _HAL_HV_DMA_DOMAIN_INFO*);/* 0xd0 4 */
long (*AttachDeviceDomain)(struct _EXT_IOMMU_DEVICE_ID*, struct _HAL_HV_DMA_DOMAIN_INFO*);/* 0xd4 4 */
long (*DetachDeviceDomain)(unsigned __int64);/* 0xd8 4 */
long (*DeleteDeviceDomain)(struct _HAL_HV_DMA_DOMAIN_INFO*);/* 0xdc 4 */
long (*MapDeviceLogicalRange)(struct _HAL_HV_DMA_DOMAIN_INFO*, unsigned long, unsigned __int64, unsigned long*, unsigned __int64*, unsigned char);/* 0xe0 4 */
long (*UnmapDeviceLogicalRange)(struct _HAL_HV_DMA_DOMAIN_INFO*, unsigned __int64, unsigned __int64*);/* 0xe4 4 */
long (*MapDeviceSparsePages)(struct _HAL_HV_DMA_DOMAIN_INFO*, unsigned long, unsigned long*, unsigned __int64*);/* 0xe8 4 */
long (*UnmapDeviceSparsePages)(struct _HAL_HV_DMA_DOMAIN_INFO*, unsigned long*, unsigned __int64*);/* 0xec 4 */
long (*GetDmaGuardEnabled)(unsigned char*);/* 0xf0 4 */
long (*UpdateMicrocode)(void*, unsigned);/* 0xf4 4 */
long (*GetSintMessage)(unsigned char, void**);/* 0xf8 4 */
long (*RestoreTime)(unsigned, unsigned __int64, unsigned __int64);/* 0xfc 4 */
};
size 256 (0x100)64 members0 holespadding 04 cachelines