Проверка состояния Oplock операции IRP_MJ_LOCK_CONTROL
Следующие условия прерывания операции блокировки применяются к каждой операции блокировки диапазона байтов в заданном потоке.
Условия для типа запроса уровня 2
Всегда прервусь на Нет.
Подтверждение не требуется; операция выполняется немедленно.
Условия для типа запроса фильтра
Блокировка не нарушена.
Подтверждение не требуется, и операция выполняется немедленно.
Условия для типов запросов уровня 1, пакетной обработки, чтения, чтения, чтения и записи и обработки
Прервите IRP_MJ_LOCK_CONTROL, когда операция блокировки выполняется на FILE_OBJECT с помощью клавиши oplock, отличной от ключа FILE_OBJECT, которому принадлежит блокировка. Если блокировка не работает, прервите ее на Нет.
Требования к подтверждению различаются следующим образом:
Запрос на чтение: подтверждение не требуется; операция выполняется немедленно.
Read-Handle и запросы read-write-handle. Хотя подтверждение разрыва требуется, операция продолжается немедленно (например, не дожидаясь подтверждения).
Уровень 1, пакетные и Read-Write запросы. Подтверждение должно быть получено до продолжения операций.