struct _KLOCK_ENTRY { union { union _KLOCK_ENTRY_LOCK_STATE LockState;/* 0x0 8 */ void* LockUnsafe;/* 0x0 8 */ struct { volatile unsigned char CrossThreadReleasableAndBusyByte;/* 0x0 1 */ unsigned char Reserved[6];/* 0x1 6 */ volatile unsigned char InTreeByte;/* 0x7 1 */ };/* 0x0 8 */ };/* 0x0 8 */ union { unsigned long EntryFlags;/* 0x8 4 */ unsigned char StaticByte;/* 0x8 1 */ struct { unsigned char EntryIndex : 6;/* 0x8:0 1 */ unsigned char PreWaiting : 1;/* 0x8:6 1 */ unsigned char UserModeBit : 1;/* 0x8:7 1 */ unsigned char WaitingByte;/* 0x9 1 */ unsigned char AcquiredByte;/* 0xa 1 */ union { unsigned char CrossThreadFlags;/* 0xb 1 */ struct { unsigned char HeadNodeBit : 1;/* 0xb:0 1 */ unsigned char IoPriorityBit : 1;/* 0xb:1 1 */ unsigned char IoQoSWaiter : 1;/* 0xb:2 1 */ unsigned char Spare1 : 5;/* 0xb:3 1 */ };/* 0xb 1 */ };/* 0xb 1 */ };/* 0x8 4 */ struct { unsigned long StaticState : 8;/* 0x8:0 4 */ unsigned long AllFlags : 24;/* 0x8:8 4 */ };/* 0x8 4 */ };/* 0x8 4 */ unsigned long SpareFlags;/* 0xc 4 */ struct _RTL_BALANCED_NODE TreeNode;/* 0x10 24 */ union { struct { struct _RTL_RB_TREE OwnerTree;/* 0x28 16 */ struct _RTL_RB_TREE WaiterTree;/* 0x38 16 */ };/* 0x28 32 */ char CpuPriorityKey;/* 0x28 1 */ };/* 0x28 32 */ /* ── cacheline 1 boundary (64 bytes) ── */ unsigned __int64 EntryLock;/* 0x48 8 */ union _KLOCK_ENTRY_BOOST_BITMAP BoostBitmap;/* 0x50 8 */};size 88 (0x58)26 members0 holespadding 02 cachelines
Used in (1)