InsertTailList
Windows Driver Kit: Kernel-Mode Driver Architecture
InsertTailList

The InsertTailList routine inserts an entry at the tail of a doubly linked list of LIST_ENTRY structures.

VOID 
  InsertTailList(
    IN PLIST_ENTRY  ListHead,
    IN PLIST_ENTRY  Entry
    );

Parameters

ListHead
Pointer to the LIST_ENTRY structure that represents the head of the list.
Entry
Pointer to a LIST_ENTRY structure that represents the entry to be inserted in the list.

Return Value

None

Comments

InsertTailList updates ListHead->Blink to point to Entry. It updates Entry->Blink to point to the old last entry in the list, and sets Entry->Flink to ListHead. The Flink of the previous last entry is updated to point to Entry as well.

For information about using this routine when implementing a doubly linked list, see Singly and Doubly Linked Lists.

Callers of InsertTailList can be running at any IRQL. If InsertTailList is called at IRQL >= DISPATCH_LEVEL the storage for ListHead and the list entries 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

ExInterlockedInsertTailList, InitializeListHead, InsertHeadList, IsListEmpty, RemoveHeadList, RemoveTailList


Send feedback on this topic
Built on November 19, 2009
Page view tracker