Partager via


DXGKDDI_PROTECTED_CALLBACK fonction de rappel (dispmprt.h)

La routine de rappel DxgkProtectedCallback est implémentée par le pilote de miniport d’affichage et est appelée par DxgkCbExcludeAdapterAccess pendant un état protégé lorsque tout accès à la carte graphique est empêché.

Syntaxe

DXGKDDI_PROTECTED_CALLBACK DxgkddiProtectedCallback;

void DxgkddiProtectedCallback(
  [in] IN_CONST_PVOID MiniportDeviceContext,
  [in] PVOID ProtectedCallbackContext,
  [in] NTSTATUS ProtectionStatus
)
{...}

Paramètres

[in] MiniportDeviceContext

Handle d’un bloc de contexte associé à un adaptateur d’affichage. La fonction DxgkDdiAddDevice du pilote miniport d’affichage a précédemment fourni ce handle au sous-système du noyau graphique DirectX.

[in] ProtectedCallbackContext

Pointeur vers les informations définies par le pilote qui ont été spécifiées dans un appel précédent à DxgkCbExcludeAdapterAccess.

[in] ProtectionStatus

État de l’état protégé de l’adaptateur d’affichage. Si STATUS_SUCCESS, l’adaptateur a été correctement protégé contre l’accès. Un échec status code indique que l’adaptateur n’est pas protégé.

Valeur de retour

None

Remarques

DxgkProtectedCallback doit être appelé uniquement lorsque tous les accès à l’adaptateur d’affichage ont été interrompus, comme indiqué par le paramètre de status ProtectionStatus.

Le pilote doit s’assurer que les conditions suivantes sont remplies pendant la routine de rappel :

  • Toutes les interruptions sur l’appareil sont désactivées, et toutes les interruptions restantes en attente sont gérées, y compris les DPC qui ont pu être mis en file d’attente sur n’importe quel processeur, mais qui n’ont pas encore été pris en charge.
  • Toutes les mémoires combinées en écriture et tous les autres états liés au cache ont été vidés.
  • Les événements ACPI ou BIOS/SMI qui se produisent n’accèdent pas au matériel.
  • La cohérence est obtenue entre tous les adaptateurs dans une configuration d’état d’adaptateur lié.
  • L’adaptateur, y compris ses registres et son mode d’affichage, est maintenu dans l’état approprié pour gérer la mémoire tampon DMA qui se produit lors du retour de la routine DxgkProtectedCallback . Le pilote ne doit pas modifier l’état visible ou les fonctionnalités d’une application.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista
Plateforme cible Desktop (Expérience utilisateur)
En-tête dispmprt.h (include Dispmprt.h)
IRQL PASSIVE_LEVEL

Voir aussi

DxgkCbExcludeAdapterAccess