Windows Driver Kit: Kernel-Mode Driver Architecture
InitializeListHead
The InitializeListHead routine initializes a LIST_ENTRY structure that represents the head of a doubly linked list.
VOID
InitializeListHead(
IN PLIST_ENTRY ListHead
);
Parameters
- ListHead
- Pointer to a LIST_ENTRY structure that serves as the list header.
Return Value
None
Comments
The InitializeListHead routine sets the Flink and Blink members of ListHead to point to ListHead.
For information about using this routine when implementing a doubly linked list, see Singly and Doubly Linked Lists.
Callers of InitializeListHead can be running at any IRQL. If InitializeListHead is called at IRQL >= DISPATCH_LEVEL the storage for ListHead must be resident.
Requirements
IRQL: Any level (see Comments section)
Headers: Declared in Wdm.h. Include Wdm.h, Ntddk.h, or Ntifs.h.
See Also
ExInterlockedInsertHeadList, ExInterlockedInsertTailList, ExInterlockedRemoveHeadList, ExInterlockedPopEntryList, ExInterlockedPushEntryList, InsertHeadList, InsertTailList, IsListEmpty, KeInitializeSpinLock, PopEntryList, PushEntryList, RemoveEntryList, RemoveHeadList, RemoveTailList