NdisFreeMemoryWithTagPriority, fonction (ndis.h)
La fonction NdisFreeMemoryWithTagPriority libère la mémoire allouée avec le Fonction NdisAllocateMemoryWithTagPriority .
Syntaxe
void NdisFreeMemoryWithTagPriority(
[in] NDIS_HANDLE NdisHandle,
[in] PVOID VirtualAddress,
[in] ULONG Tag
);
Paramètres
[in] NdisHandle
Un pilote NDIS ou un handle instance obtenu lors de l’initialisation de l’appelant. Il doit s’agir de la même poignée que celle que le pilote a passée à Fonction NdisAllocateMemoryWithTagPriority . Par exemple, un pilote miniport peut utiliser le handle NDIS qu’il a obtenu à partir du Fonction NdisMRegisterMiniportDriver ou MiniportInitializeEx . D’autres pilotes NDIS peuvent utiliser les handles des fonctions suivantes :
[in] VirtualAddress
Pointeur vers l’adresse virtuelle de base de la mémoire allouée. Cette adresse a été retournée par le Fonction NdisAllocateMemoryWithTagPriority .
[in] Tag
Chaîne, délimitée par des guillemets simples, avec jusqu’à quatre caractères, généralement spécifiée dans l’ordre inverse. La balise par défaut fournie par NDIS pour cet appel est « maDN », mais l’appelant peut remplacer cette valeur par défaut en fournissant une valeur explicite.
Valeur de retour
None
Remarques
Étant donné que la mémoire non mise en cache et la mémoire contiguë sont rarement libérées tant que le pilote miniport d’allocation n’est pas déchargé, un appelant de NdisFreeMemoryWithTagPriority s’exécute généralement sur IRQL = PASSIVE_LEVEL pour ces types d’allocations. Dans tous les cas :
- Lorsqu’un appelant de NdisFreeMemoryWithTagPriority libère de la mémoire contiguë, il doit s’exécuter à IRQL = PASSIVE_LEVEL.
- Lorsqu’un appelant de NdisFreeMemoryWithTagPriority libère de la mémoire non mise en cache, elle doit s’exécuter au < DISPATCH_LEVEL IRQL.
- Lorsqu’un appelant de NdisFreeMemoryWithTagPriority libère de la mémoire qui n’est ni contiguë ni non mise en cache, elle doit s’exécuter sur IRQL <= DISPATCH_LEVEL.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Pris en charge dans NDIS 6.20 et versions ultérieures. |
Plateforme cible | Universal |
En-tête | ndis.h (inclure Ndis.h) |
Bibliothèque | Ndis.lib |
IRQL | Consultez la section Notes. |
Règles de conformité DDI | NdisAllocateMemoryWithTagPriority_Cleanup(ndis), NdisAllocateMemoryWithTagPriority_InitFail(ndis) |