Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
IOMMU_PASID_DEVICE_CREATE verwendet ein IOMMU_DMA_DEVICE-Token und spawns ein neues PASID-Untergerät, das die neu zugewiesene ASID darstellt.
Syntax
IOMMU_PASID_DEVICE_CREATE IommuPasidDeviceCreate;
NTSTATUS IommuPasidDeviceCreate(
PIOMMU_DMA_DEVICE DmaDevice,
PIOMMU_DMA_PASID_DEVICE *PasidDeviceOut,
PULONG AsidOut
)
{...}
Die Parameter
DmaDevice
[in] Zeigen Sie auf das IOMMU_DMA_DEVICE-Token, aus dem Untergeräte spawniert werden.
[in] Zeigen Sie auf das IOMMU_DMA_DEVICE-Token, aus dem Untergeräte spawniert werden.
PasidDeviceOut
[out] Zeiger auf eine undurchsichtige IOMMU_DMA_PASID_DEVICE Struktur, die das neu erstellte IOMMU DMA PASID-Untergerät darstellt.
AsidOut
[out] Zeiger zum Halten der vom System zugewiesenen PASID.
Rückgabewert
IOMMU_PASID_DEVICE_CREATE gibt einen NTSTATUS-Wert zurück. Mögliche Werte sind:
| Rückgabecode | BESCHREIBUNG |
|---|---|
| STATUS_SUCCESS | Das Untergerät wurde erfolgreich erstellt. PasidDeviceOut gibt einen gültigen Zeiger zurück. |
| STATUS_INVALID_PARAMETER_1 | Das bereitgestellte Gerätetoken ist für PASID-tagged DMA oder PASIDs nicht unterstützt. |
| STATUS_INSUFFICIENT_RESOURCES | Nicht genügend Arbeitsspeicher, um eine IOMMU_DMA_PASID_DEVICE Struktur zuzuweisen. |
| STATUS_NONE_MAPPED | Eine ASID konnte nicht zugewiesen werden. |
Anforderungen
| Anforderung | Wert |
|---|---|
| Überschrift | wdm.h |
| IRQL | PASSIVE_LEVEL |