x64x86arm64 / ntdllntoskrnl

_KLOCK_ENTRY

← first 1 build latest →
struct _KLOCK_ENTRY {
union {
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 */
union {
struct {
};/* 0x28 32 */
char CpuPriorityKey;/* 0x28 1 */
};/* 0x28 32 */
/* ── cacheline 1 boundary (64 bytes) ── */
unsigned __int64 EntryLock;/* 0x48 8 */
};
size 88 (0x58)26 members0 holespadding 02 cachelines
Used in (1)