struct _UMS_CONTROL_BLOCK { struct _RTL_UMS_CONTEXT* UmsContext;/* 0x0 8 */ struct _SINGLE_LIST_ENTRY* CompletionListEntry;/* 0x8 8 */ struct _KEVENT* CompletionListEvent;/* 0x10 8 */ unsigned long ServiceSequenceNumber;/* 0x18 4 */ /* 4 bytes padding */ union { struct { struct _KQUEUE UmsQueue;/* 0x20 64 */ struct _LIST_ENTRY QueueEntry;/* 0x60 16 */ struct _RTL_UMS_CONTEXT* YieldingUmsContext;/* 0x70 8 */ void* YieldingParam;/* 0x78 8 */ void* UmsTeb;/* 0x80 8 */ };/* 0x20 104 */ struct { struct _KQUEUE* UmsAssociatedQueue;/* 0x20 8 */ struct _LIST_ENTRY* UmsQueueListEntry;/* 0x28 8 */ struct _KEVENT UmsWaitEvent;/* 0x30 24 */ void* StagingArea;/* 0x48 8 */ union { struct { unsigned long UmsPrimaryDeliveredContext : 1;/* 0x50:0 4 */ unsigned long UmsAssociatedQueueUsed : 1;/* 0x50:1 4 */ unsigned long UmsThreadParked : 1;/* 0x50:2 4 */ };/* 0x50 4 */ unsigned long UmsFlags;/* 0x50 4 */ };/* 0x50 4 */ };/* 0x20 52 */ };/* 0x20 104 */};size 136 (0x88)17 members1 hole (4 bytes)padding 03 cachelines
Used in (1)