typedef struct _VI_DEADLOCK_NODE
{
    VI_DEADLOCK_NODE *Parent;
    LIST_ENTRY ChildrenList;
    LIST_ENTRY SiblingsList;
    union
    {
        LIST_ENTRY ResourceList;
        LIST_ENTRY FreeListEntry;
    };
    VI_DEADLOCK_RESOURCE *Root;
    VI_DEADLOCK_THREAD *ThreadEntry;
    union
    {
        struct
        {
            unsigned long Active : 1;
            unsigned long OnlyTryAcquireUsed : 1;
            unsigned long ReleasedOutOfOrder : 1;
            unsigned long SequenceNumber : 29;
        };
        unsigned long Whole;
    } u1;
    long ChildrenCount;
    void *StackTrace[8];
    void *ParentStackTrace[8];
} VI_DEADLOCK_NODE, *PVI_DEADLOCK_NODE;