//0x300 bytes (sizeof)
struct _KSCHEDULER_SUBNODE
{
ULONGLONG SubNodeLock; //0x0
ULONGLONG IdleNonParkedCpuSet; //0x8
union
{
struct
{
ULONGLONG IdleCpuSet; //0x10
ULONGLONG IdleSmtSet; //0x18
ULONGLONG IdleModuleSet; //0x20
};
ULONGLONG IdleIsolationUnitSet[2]; //0x10
};
ULONGLONG NonPairedSmtSet; //0x28
ULONGLONG ThreadQosGroupingSet; //0x30
ULONGLONG Spare1[1]; //0x38
ULONGLONG DeepIdleSet; //0x40
ULONGLONG IdleConstrainedSet; //0x48
ULONGLONG NonParkedSet; //0x50
ULONGLONG ParkRequestSet; //0x58
ULONGLONG SoftParkRequestSet; //0x60
ULONGLONG ForceParkRequestSet; //0x68
ULONGLONG NonIsrTargetedSet; //0x70
LONG ParkLock; //0x78
UCHAR ProcessSeed; //0x7c
UCHAR Spare5[3]; //0x7d
union
{
struct _GROUP_AFFINITY Affinity; //0x80
struct
{
UCHAR AffinityFill[10]; //0x80
USHORT ParentNodeNumber; //0x8a
USHORT SubNodeNumber; //0x8c
USHORT Spare; //0x8e
};
};
ULONGLONG SiblingMask; //0x90
ULONGLONG SharedReadyQueueMask; //0x98
ULONGLONG StrideMask; //0xa0
ULONGLONG LLCLeaders; //0xa8
ULONG Lowest; //0xb0
ULONG Highest; //0xb4
struct _flags Flags; //0xb8
UCHAR WorkloadClasses; //0xb9
struct _KHETERO_PROCESSOR_SET* HeteroSets; //0xc0
union _KRANK_LIST* PerformanceRanks; //0xc8
union _KRANK_LIST* EfficiencyRanks; //0xd0
ULONGLONG Spare6[5]; //0xd8
ULONGLONG PpmConfiguredQosSets[7]; //0x100
ULONGLONG Spare7; //0x138
union _KQOS_GROUPING_SETS PpmQosGroupingSets; //0x140
ULONGLONG Spare8[6]; //0x150
volatile ULONGLONG StealableLocalReadyQueues; //0x180
volatile ULONGLONG StealableSharedReadyQueues; //0x188
volatile ULONGLONG StealableStandbyThreads; //0x190
ULONGLONG Spare9[5]; //0x198
union _KRANK_LIST SoftParkRanks; //0x1c0
union _KRANK_LIST CoreShareCounts; //0x200
union _KRANK_LIST ModuleShareCounts; //0x240
union _KRANK_LIST ThreadQosGroupingCoreShareCounts; //0x280
union _KRANK_LIST ThreadQosGroupingModuleShareCounts; //0x2c0
};