Vérification de l’état Oplock d’une opération de IRP_MJ_WRITE
Les conditions d’arrêt d’opération suivantes s’appliquent lorsqu’un flux est en cours d’écriture et que l’écriture n’est pas une E/S de pagination.
Conditions pour un type de requête de niveau 2 :
Toujours arrêter sur Aucun.
Aucun accusé de réception n’est requis ; l’opération se poursuit immédiatement.
Conditions pour tous les autres types de requêtes :
Arrêt sur IRP_MJ_WRITE lorsque l’opération d’écriture se produit sur un FILE_OBJECT avec une clé oplock qui diffère de la clé du FILE_OBJECT propriétaire de l’oplock. Si l’oplock est rompu, passez à Aucun.
Les exigences relatives à l’accusé de réception varient comme suit :
Demande de lecture : aucun accusé de réception n’est requis ; l’opération se poursuit immédiatement.
Read-Handle demande : bien que l’accusé de réception de l’arrêt soit requis, l’opération se poursuit immédiatement (par exemple, sans attendre l’accusé de réception).
Niveau 1, Batch, Filter, Read-Write et Read-Write-Handle demandes : un accusé de réception doit être reçu avant que l’opération ne se poursuive.