StorPortPutScatterGatherList-Funktion (storport.h)
Die StorPortPutScatterGatherList-Routine gibt alle Ressourcen frei, die einer Scatter/Gather-Liste zugeordnet sind, die zuvor durch einen Aufruf der StorPortBuildScatterGatherList-Routine erstellt wurden.
Syntax
ULONG StorPortPutScatterGatherList(
[in] PVOID HwDeviceExtension,
[in] PSTOR_SCATTER_GATHER_LIST ScatterGatherList,
[in] BOOLEAN WriteToDevice
);
Parameter
[in] HwDeviceExtension
Ein Zeiger auf die Hardwaregeräteerweiterung für den Host Bus Adapter (HBA).
[in] ScatterGatherList
Ein Zeiger auf einen Puffer, der eine Scatter/Gather-Liste enthält, die zuvor durch einen Aufruf der StorPortBuildScatterGatherList-Routine erstellt wurde.
[in] WriteToDevice
Ein Wert, der die Richtung der abgeschlossenen DMA-Übertragung angibt. Der Wert TRUE gibt eine Übertragung vom Datenpuffer zum Gerät an, und FALSE gibt eine Übertragung vom Gerät an den Datenpuffer an.
Rückgabewert
StorPortPutScatterGatherList gibt einen der folgenden status-Codes zurück:
Rückgabecode | Beschreibung |
---|---|
|
Diese Funktion ist auf dem aktiven Betriebssystem nicht implementiert. |
|
Gibt an, dass die Routine die Scatter/Gather-Liste erfolgreich freigegeben hat. |
|
Das übergebene HwDeviceExtension war NULL. |
|
Der Aufruf wurde an einem ungültigen IRQL ausgeführt. |
Hinweise
Die StorPortPutScatterGatherList-Routine gibt den Pufferspeicher für die Scatter/Gather-Liste nicht frei, da der Miniporttreiber diesen Speicher zugewiesen hat.
Nachdem die StorPortPutScatterGatherList-Routine zurückgegeben wurde, kann der Miniporttreiber den Puffer wiederverwenden, um eine neue Scatter/Gather-Liste zu erstellen, indem storPortBuildScatterGatherList erneut aufgerufen wird. Wenn ein Miniporttreiber die Verwendung des Puffers für die Scatter/Gather-Liste abgeschlossen hat, sollte er den Speicher für den Puffer freigeben, nachdem die StorPortPutScatterGatherList-Routine zurückgegeben wird. Wenn der Miniporttreiber den Pufferspeicher der StorPortAllocatePool-Routine zuordnet, sollte er den Arbeitsspeicher durch Aufrufen der StorPortFreePool-Routine freigeben.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Universell |
Header | storport.h (einschließlich Storport.h) |
IRQL | DISPATCH_LEVEL |
DDI-Complianceregeln | StorPortIrql(storport) |