ia64 / ntdllntoskrnl /

_ARBITER_INSTANCE

← 5.2.3790.3959 3 builds latest →
struct _ARBITER_INSTANCE {
unsigned long Signature;/* 0x0 4 */
/* 4 bytes padding */
unsigned short* Name;/* 0x10 8 */
unsigned short* OrderingName;/* 0x18 8 */
int ResourceType;/* 0x20 4 */
/* 4 bytes padding */
/* ── cacheline 1 boundary (64 bytes) ── */
long ReferenceCount;/* 0x58 4 */
/* 4 bytes padding */
unsigned long AllocationStackMaxSize;/* 0x68 4 */
/* 4 bytes padding */
long (*UnpackRequirement)(struct _IO_RESOURCE_DESCRIPTOR*, unsigned __int64*, unsigned __int64*, unsigned __int64*, unsigned __int64*);/* 0x78 8 */
/* ── cacheline 2 boundary (128 bytes) ── */
long (*PackResource)(struct _IO_RESOURCE_DESCRIPTOR*, unsigned __int64, struct _CM_PARTIAL_RESOURCE_DESCRIPTOR*);/* 0x80 8 */
long (*UnpackResource)(struct _CM_PARTIAL_RESOURCE_DESCRIPTOR*, unsigned __int64*, unsigned __int64*);/* 0x88 8 */
long (*ScoreRequirement)(struct _IO_RESOURCE_DESCRIPTOR*);/* 0x90 8 */
long (*TestAllocation)(struct _ARBITER_INSTANCE*, struct _ARBITER_TEST_ALLOCATION_PARAMETERS*);/* 0x98 8 */
long (*RetestAllocation)(struct _ARBITER_INSTANCE*, struct _ARBITER_RETEST_ALLOCATION_PARAMETERS*);/* 0xa0 8 */
long (*CommitAllocation)(struct _ARBITER_INSTANCE*);/* 0xa8 8 */
long (*RollbackAllocation)(struct _ARBITER_INSTANCE*);/* 0xb0 8 */
long (*BootAllocation)(struct _ARBITER_INSTANCE*, struct _ARBITER_BOOT_ALLOCATION_PARAMETERS*);/* 0xb8 8 */
/* ── cacheline 3 boundary (192 bytes) ── */
long (*QueryArbitrate)(struct _ARBITER_INSTANCE*, struct _ARBITER_QUERY_ARBITRATE_PARAMETERS*);/* 0xc0 8 */
long (*QueryConflict)(struct _ARBITER_INSTANCE*, struct _ARBITER_QUERY_CONFLICT_PARAMETERS*);/* 0xc8 8 */
long (*AddReserved)(struct _ARBITER_INSTANCE*, struct _ARBITER_ADD_RESERVED_PARAMETERS*);/* 0xd0 8 */
long (*StartArbiter)(struct _ARBITER_INSTANCE*, struct _CM_RESOURCE_LIST*);/* 0xd8 8 */
long (*PreprocessEntry)(struct _ARBITER_INSTANCE*, struct _ARBITER_ALLOCATION_STATE*);/* 0xe0 8 */
long (*AllocateEntry)(struct _ARBITER_INSTANCE*, struct _ARBITER_ALLOCATION_STATE*);/* 0xe8 8 */
unsigned char (*GetNextAllocationRange)(struct _ARBITER_INSTANCE*, struct _ARBITER_ALLOCATION_STATE*);/* 0xf0 8 */
unsigned char (*FindSuitableRange)(struct _ARBITER_INSTANCE*, struct _ARBITER_ALLOCATION_STATE*);/* 0xf8 8 */
/* ── cacheline 4 boundary (256 bytes) ── */
void (*AddAllocation)(struct _ARBITER_INSTANCE*, struct _ARBITER_ALLOCATION_STATE*);/* 0x100 8 */
void (*BacktrackAllocation)(struct _ARBITER_INSTANCE*, struct _ARBITER_ALLOCATION_STATE*);/* 0x108 8 */
unsigned char (*OverrideConflict)(struct _ARBITER_INSTANCE*, struct _ARBITER_ALLOCATION_STATE*);/* 0x110 8 */
long (*InitializeRangeList)(struct _ARBITER_INSTANCE*, unsigned long, struct _CM_PARTIAL_RESOURCE_DESCRIPTOR*, struct _RTL_RANGE_LIST*);/* 0x118 8 */
unsigned char TransactionInProgress;/* 0x120 1 */
/* 7 bytes padding */
void* Extension;/* 0x130 8 */
/* ── cacheline 5 boundary (320 bytes) ── */
void* ConflictCallbackContext;/* 0x140 8 */
unsigned char (*ConflictCallback)(void*, struct _RTL_RANGE*);/* 0x148 8 */
wchar_t PdoDescriptionString[336];/* 0x150 672 */
/* ── cacheline 15 boundary (960 bytes) ── */
char PdoSymbolicNameString[672];/* 0x3f0 672 */
/* ── cacheline 26 boundary (1664 bytes) ── */
wchar_t PdoAddressString[1];/* 0x690 2 */
};
size 1688 (0x698)43 members5 holes (23 bytes)padding 627 cachelines