struct _KTM { unsigned long cookie;/* 0x0 4 */ struct _KMUTANT Mutex;/* 0x4 32 */ enum KTM_STATE State;/* 0x24 4 */ struct _KTMOBJECT_NAMESPACE_LINK NamespaceLink;/* 0x28 20 */ struct _GUID TmIdentity;/* 0x3c 16 */ /* ── cacheline 1 boundary (64 bytes) ── */ unsigned long Flags;/* 0x4c 4 */ unsigned long VolatileFlags;/* 0x50 4 */ struct _UNICODE_STRING LogFileName;/* 0x54 8 */ struct _FILE_OBJECT* LogFileObject;/* 0x5c 4 */ void* MarshallingContext;/* 0x60 4 */ void* LogManagementContext;/* 0x64 4 */ struct _KTMOBJECT_NAMESPACE Transactions;/* 0x68 96 */ /* ── cacheline 3 boundary (192 bytes) ── */ struct _KTMOBJECT_NAMESPACE ResourceManagers;/* 0xc8 96 */ /* ── cacheline 4 boundary (256 bytes) ── */ struct _KMUTANT LsnOrderedMutex;/* 0x128 32 */ /* ── cacheline 5 boundary (320 bytes) ── */ struct _LIST_ENTRY LsnOrderedList;/* 0x148 8 */ union _LARGE_INTEGER CommitVirtualClock;/* 0x150 8 */ struct _FAST_MUTEX CommitVirtualClockMutex;/* 0x158 32 */ union _CLS_LSN BaseLsn;/* 0x178 8 */ /* ── cacheline 6 boundary (384 bytes) ── */ union _CLS_LSN CurrentReadLsn;/* 0x180 8 */ union _CLS_LSN LastRecoveredLsn;/* 0x188 8 */ void* TmRmHandle;/* 0x190 4 */ struct _KRESOURCEMANAGER* TmRm;/* 0x194 4 */ struct _KEVENT LogFullNotifyEvent;/* 0x198 16 */ struct _WORK_QUEUE_ITEM CheckpointWorkItem;/* 0x1a8 16 */ union _CLS_LSN CheckpointTargetLsn;/* 0x1b8 8 */ /* ── cacheline 7 boundary (448 bytes) ── */ struct _WORK_QUEUE_ITEM LogFullCompletedWorkItem;/* 0x1c0 16 */ struct _ERESOURCE LogWriteResource;/* 0x1d0 56 */ /* ── cacheline 8 boundary (512 bytes) ── */ unsigned long LogFlags;/* 0x208 4 */ long LogFullStatus;/* 0x20c 4 */ long RecoveryStatus;/* 0x210 4 */ /* 4 bytes padding */ union _CLS_LSN LastCheckBaseLsn;/* 0x218 8 */ struct _LIST_ENTRY RestartOrderedList;/* 0x220 8 */ struct _WORK_QUEUE_ITEM OfflineWorkItem;/* 0x228 16 */};size 568 (0x238)33 members1 hole (4 bytes)padding 09 cachelines
Used in (2)