PLACEHOLDER FOR WORK THAT MAY NEVER BE DONE - PREVIEW ONLY

ETW_SILODRIVERSTATE

The ETW_SILODRIVERSTATE structure is the state that Event Tracing for Windows (ETW) keeps separately for each silo.

Documentation Status

The ETW_SILODRIVERSTATE structure is not documented.

Layout

Given that Microsoft discloses relatively little architectural detail about silos, it should not surprise that the ETW_SILODRIVERSTATE changes even between the half-yearly releases of Windows 10.

Version Size (x86) Size (x64)
10.0 0x0190 0x01B0
1511 to 1607 0x0A80 0x13A8
1703 0x0AC0 0x13F8
1709 0x0A48 0x1190
1803 to 1809 0x0A70 0x11C0
1903 0x0A90 0x11F8
2004 0x0AA8 0x1220

The preceding sizes, and the offsets, types and names in the table below are from public symbol files for the kernel.

Offset (x86) Offset (x64) Definition Versions Remarks
0x00 (10.0) 0x00 (10.0)
ULONG EtwpSecurityProviderPID;
10.0 only next at 0x0A7C and 0x13A4
0x00 0x00
EJOB *Silo;
1803 and higher  
0x00 (1703 to 1709);
0x04
0x00 (1703 to 1709);
0x08
ESERVERSILO_GLOBALS *SiloGlobals;
1703 and higher  
0x04 (1709);
0x08
0x08 (1709);
0x10
ULONG MaxLoggers;
1709 and higher  
0x08 (10.0);
0x00 (1511 to 1607);
0x08 (1703 to 1709);
0x10
0x08 (10.0);
0x00 (1511 to 1607);
0x08 (1703);
0x10 (1709);
0x18
ETW_GUID_ENTRY EtwpSecurityProviderGuidEntry;
10.0 and higher  
0x0168 (10.0) 0x0188 (10.0)
ULONG AuditLoggerId;
10.0 only  
0x0170 (10.0) 0x0190 (10.0)
REGHANDLE EtwPsProvRegHandle;
10.0 only  
0x0168 (1511 to 1607);
0x0170 (1703 to 1709);
0x0178 (1803 to 1903);
0x0188
0x0190 (1511 to 1607);
0x0198 (1703);
0x01A0 (1709);
0x01A8 (1803 to 1903);
0x01C0
EX_RUNDOWN_REF_CACHE_AWARE EtwpLoggerRundown [0x10];
1511 and higher  
0x0268 (1511 to 1607);
0x0270 (1703);
0x0174 (1709);
0x017C (1803 to 1903);
0x018C
0x0390 (1511 to 1607);
0x0398 (1703);
0x01A8 (1709);
0x01B0 (1803 to 1903);
0x01C8
WMI_LOGGER_CONTEXT *WmipLoggerContext [0x40];
1511 to 1703  
WMI_LOGGER_CONTEXT **EtwpLoggerContext;
1709 and higher  
0x0368 (1511 to 1607);
0x0370 (1703);
0x0178 (1709);
0x0180 (1803 to 1903);
0x0190
0x0590 (1511 to 1607);
0x0598 (1703);
0x01B0 (1709);
0x01B8 (1803 to 1903);
0x01D0
ETW_HASH_BUCKET EtwpGuidHashTable [0x40];
1511 and higher  
0x0178 (10.0);
0x0A68 (1511 to 1607);
0x0A70 (1703);
0x0878 (1709);
0x0880 (1803 to 1903);
0x0890
0x0198 (10.0);
0x1390 (1511 to 1607);
0x1398 (1703);
0x0FB0 (1709);
0x0FB8 (1803 to 1903);
0x0FD0
USHORT EtwpSecurityLoggers [8];
10.0 and higher  
0x0188 (10.0);
0x0A78 (1511 to 1607);
0x0A80 (1703);
0x0888 (1709);
0x0890 (1803 to 1903);
0x08A0
0x01A8 (10.0);
0x13A0 (1511 to 1607);
0x13A8 (1703);
0x0FC0 (1709);
0x0FC8 (1803 to 1903);
0x0FE0
UCHAR EtwpSecurityProviderEnableMask;
10.0 and higher  
0x0189 (10.0);
0x0A79 (1511 to 1607);
0x0A84 (1703);
0x088C (1709);
0x0894 (1803 to 1903);
0x08A4
0x01A9 (10.0);
0x13A1 (1511 to 1607);
0x13AC (1703);
0x0FC4 (1709);
0x0FCC (1803 to 1903);
0x0FE4
BOOLEAN EtwpShutdownInProgress;
10.0 to 1607  
LONG EtwpShutdownInProgress;
1703 and higher  
0x0A7C (1511 to 1607);
0x0A88 (1703);
0x0890 (1709);
0x0898 (1803 to 1903);
0x08A8
0x13A4 (1511 to 1607);
0x13B0 (1703);
0x0FC8 (1709);
0x0FD0 (1803 to 1903);
0x0FE8
ULONG EtwpSecurityProviderPID;
1511 and higher previously at 0x00
0x0A8C (1703);
0x0894 (1709);
0x089C (1803 to 1903);
0x08AC
0x13B8 (1703);
0x0FD0 (1709);
0x0FD8 (1803 to 1903);
0x0FF0
ETW_PRIV_HANDLE_DEMUX_TABLE PrivHandleDemuxTable;
1703 and higher  
0x0A9C (1703);
0x08A4 (1709);
0x08AC (1803 to 1903);
0x08BC
0x13D8 (1703);
0x0FF0 (1709);
0x0FF8 (1803 to 1903);
0x1010
ETW_COUNTERS EtwpCounters;
1703 and higher  
0x0AB0 (1703);
0x08B8 (1709);
0x08C0 (1803 to 1903);
0x08D0
0x13E8 (1703);
0x1000 (1709);
0x1008 (1803 to 1903);
0x1020
LARGE_INTEGER LogfileBytesWritten;
1703 and higher  
0x0AB8 (1703);
0x08C0 (1709);
0x08C8 (1803 to 1903);
0x08D8
0x13F0 (1703);
0x1008 (1709);
0x1010 (1803 to 1903);
0x1028
ETW_SILO_TRACING_BLOCK *ProcessorBlocks;
1703 and higher  
0x08CC (1803 to 1903);
0x08DC
0x1018 (1803 to 1903);
0x1030
EX_WNF_SUBSCRIPTION *ContainerRestoreWnfSubscription;
1803 and higher  
0x08C4 (1709);
0x08D0 (1803 to 1903);
0x08E0
0x1010 (1709);
0x1020 (1803 to 1903);
0x1038
GUID PartitionId;
1709 and higher  
0x08D4 (1709);
0x08E0 (1803 to 1903);
0x08F0
0x1020 (1709);
0x1030 (1803 to 1903);
0x1048
GUID ParentId;
1709 and higher  
0x08E8 (1709);
0x08F0 (1803 to 1903);
0x0900
0x1030 (1709);
0x1040 (1803 to 1903);
0x1058
LARGE_INTEGER QpcOffsetFromRoot;
1709 and higher  
0x0908 0x1060
PSTR PartitionName;
2004 and higher  
0x090C 0x1068
USHORT PartitionNameSize;
2004 and higher  
0x090E 0x106A
USHORT UnusedPadding;
2004 and higher  
0x08F0 (1709);
0x08F8 (1803 to 1903);
0x0910
0x1038 (1709);
0x1048 (1803 to 1903);
0x106C
ULONG PartitionType;
1709 and higher  
0x08F4 (1709);
0x08FC (1803 to 1903);
0x0914
0x103C (1709);
0x104C (1803 to 1903);
0x1070
ETW_SYSTEM_LOGGER_SETTINGS SystemLoggerSettings;
1709 and higher  
0x0A70 (1903);
0x0A88
0x11C0 (1903);
0x11E8
KMUTANT EtwpStartTraceMutex;
1903 and higher  

TO BE DONE?