Condividi tramite


Funzione StorPortAllocateMdl (storport.h)

La routine StorPortAllocateMdl alloca un MDL per descrivere la memoria del pool non di paging specificata.

Sintassi

ULONG StorPortAllocateMdl(
  [in]  PVOID HwDeviceExtension,
  [in]  PVOID BufferPointer,
  [in]  ULONG NumberOfBytes,
  [out] PVOID *Mdl
);

Parametri

[in] HwDeviceExtension

Puntatore all'estensione del dispositivo hardware per la scheda bus host (HBA).

[in] BufferPointer

Puntatore all'indirizzo virtuale di base del buffer che deve essere descritto da MDL.

[in] NumberOfBytes

Questo parametro specifica la lunghezza, espressa in byte, del buffer che deve essere descritto dal file MDL.

[out] Mdl

Puntatore per ricevere il file MDL allocato.

Valore restituito

StorPortAllocateMdl restituisce uno dei codici di stato seguenti:

Codice restituito Descrizione
STOR_STATUS_NOT_IMPLEMENTED
Questa funzione non viene implementata nel sistema operativo attivo.
STOR_STATUS_SUCCESS
Indica che la routine allocata correttamente al file MDL.
STOR_STATUS_INVALID_PARAMETER
Il puntatore per ricevere il file MDL è NULL.

Il puntatore al buffer è NULL.

STOR_STATUS_INVALID_IRQL
La chiamata è stata effettuata in un IRQL non valido.
STOR_STATUS_INSUFFICIENT_RESOURCES
Impossibile allocare MDL per descrivere il buffer specificato.

Osservazioni

Un driver miniport chiama la routine StorPortAllocateMdl per allocare un file MDL per descrivere un blocco di memoria dal pool non di paging. Per liberare il file MDL, il driver miniport chiama la routine storPortFreeMdl.

Fabbisogno

Requisito Valore
piattaforma di destinazione Universale
intestazione storport.h (include Storport.h)
IRQL <=DISPATCH_LEVEL
regole di conformità DDI storPortIrql(storport)