x64x86arm64 / ntdllntoskrnl

_KLOCK_ENTRY

← 10.0.18362.1016 9 builds latest →
struct _KLOCK_ENTRY {
union {
};/* 0x0 12 */
union {
unsigned long EntryFlags;/* 0xc 4 */
struct {
unsigned char EntryOffset;/* 0xc 1 */
union {
unsigned char ThreadLocalFlags;/* 0xd 1 */
struct {
unsigned char WaitingBit : 1;/* 0xd:0 1 */
unsigned char Spare0 : 7;/* 0xd:1 1 */
};/* 0xd 1 */
};/* 0xd 1 */
union {
unsigned char AcquiredByte;/* 0xe 1 */
unsigned char AcquiredBit : 1;/* 0xe:0 1 */
};/* 0xe 1 */
union {
unsigned char CrossThreadFlags;/* 0xf 1 */
struct {
unsigned char HeadNodeBit : 1;/* 0xf:0 1 */
unsigned char IoPriorityBit : 1;/* 0xf:1 1 */
unsigned char IoQoSWaiter : 1;/* 0xf:2 1 */
unsigned char Spare1 : 5;/* 0xf:3 1 */
};/* 0xf 1 */
};/* 0xf 1 */
};/* 0xc 4 */
struct {
unsigned long StaticState : 8;/* 0xc:0 4 */
unsigned long AllFlags : 24;/* 0xc:8 4 */
};/* 0xc 4 */
};/* 0xc 4 */
union {
void* LockUnsafe;/* 0x10 4 */
struct {
volatile unsigned char CrossThreadReleasableAndBusyByte;/* 0x10 1 */
unsigned char Reserved[2];/* 0x11 2 */
volatile unsigned char InTreeByte;/* 0x13 1 */
union {
void* SessionState;/* 0x14 4 */
unsigned long SessionId;/* 0x14 4 */
};/* 0x14 4 */
};/* 0x10 8 */
};/* 0x10 8 */
union {
struct {
};/* 0x18 16 */
char CpuPriorityKey;/* 0x18 1 */
};/* 0x18 16 */
unsigned long EntryLock;/* 0x28 4 */
};
size 48 (0x30)28 members0 holespadding 01 cacheline
Used in (2)