NdisFreeMemoryWithTagPriority, fonction (ndis.h)

La fonction NdisFreeMemoryWithTagPriority libère la mémoire allouée avec le NdisAllocateMemoryWithTagPriority , fonction.

Syntaxe

void NdisFreeMemoryWithTagPriority(
  [in] NDIS_HANDLE NdisHandle,
  [in] PVOID       VirtualAddress,
  [in] ULONG       Tag
);

Paramètres

[in] NdisHandle

Pilote NDIS ou handle d’instance obtenu lors de l’initialisation de l’appelant. Il doit s’agir du même handle que celui passé au pilote NdisAllocateMemoryWithTagPriority , fonction. Par exemple, un pilote miniporteur peut utiliser le handle NDIS qu’il a obtenu à partir du NdisMRegisterMiniportDriver ou MiniportInitializeEx , fonction. D’autres pilotes NDIS peuvent utiliser les handles des fonctions suivantes :

NdisRegisterProtocolDriver

NdisOpenAdapterEx

NdisFRegisterFilterDriver

FilterAttach

[in] VirtualAddress

Pointeur vers l’adresse virtuelle de base de la mémoire allouée. Cette adresse a été retournée par le NdisAllocateMemoryWithTagPriority , fonction.

[in] Tag

Chaîne, délimitée par des guillemets simples, avec jusqu’à quatre caractères, généralement spécifiés dans l’ordre inversé. 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 jusqu’à ce que le pilote miniport d’allocation soit déchargé, un appelant de NdisFreeMemoryWithTagPriority est généralement en cours d’exécution à IRQL = PASSIVE_LEVEL pour ces types de désaffectations. Dans tous les cas :

  • Lorsqu’un appelant de NdisFreeMemoryWithTagPriority libère la mémoire contiguë, il doit être exécuté à IRQL = PASSIVE_LEVEL.
  • Lorsqu’un appelant de NdisFreeMemoryWithTagPriority libère de la mémoire non mise en cache, il doit s’exécuter sur irQL < DISPATCH_LEVEL.
  • Lorsqu’un appelant de NdisFreeMemoryWithTagPriority libère la mémoire qui n’est ni contiguë ni non mise en cache, elle doit s’exécuter à IRQL <= DISPATCH_LEVEL.

Configuration requise

   
Client minimal pris en charge Pris en charge dans NDIS 6.20 et versions ultérieures.
Plateforme cible Universal
En-tête ndis.h (include Ndis.h)
Bibliothèque Ndis.lib
IRQL Consultez la section Remarques.
Règles de conformité DDI NdisAllocateMemoryWithTagPriority_Cleanup(ndis), NdisAllocateMemoryWithTagPriority_InitFail(ndis)

Voir aussi

FilterAttach

MiniportInitializeEx

NdisAllocateMemoryWithTagPriority

NdisFRegisterFilterDriver

NdisMRegisterMiniportDriver

NdisOpenAdapterEx

NdisRegisterProtocolDriver