FSCTL_OPLOCK_BREAK_ACKNOWLEDGE 제어 코드
FSCTL_OPLOCK_BREAK_ACKNOWLEDGE 제어 코드는 파일에 대한 배타적(수준 1, 일괄 처리 또는 필터) 기회 잠금(oplock)이 끊어졌다는 알림에 응답합니다.
클라이언트 애플리케이션은 oplock 중단을 승인하고 oplock이 수준 2로 손상된 수준 1 oplock인 경우 수준 2 oplock을 원한다는 것을 나타내기 위해 이 컨트롤 코드를 보냅니다.
이 제어 코드를 처리하기 위해 미니필터는 다음 매개 변수를 사용하여 FltOplockFsctrl 을 호출합니다. 파일 시스템 또는 레거시 필터 드라이버는 FsRtlOplockFsctrl을 호출합니다.
기회 잠금 및 FSCTL_OPLOCK_BREAK_ACKNOWLEDGE 제어 코드에 대한 자세한 내용은 Microsoft Windows SDK 설명서를 참조하세요.
매개 변수
Oplock: 파일에 대한 불투명 불투명 개체 포인터입니다.
CallbackData: FltOplockFsctrl 만 해당합니다. IRP_MJ_FILE_SYSTEM_CONTROL FSCTL 요청에 대한 콜백 데이터(FLT_CALLBACK_DATA) 구조입니다. 작업에 대한 FsControlCode 매개 변수는 FSCTL_OPLOCK_BREAK_ACKNOWLEDGE 합니다.
Irp: FsRtlOplockFsctrl 만 해당합니다. IRP_MJ_FILE_SYSTEM_CONTROL FSCTL 요청에 대한 IRP입니다. 작업에 대한 FsControlCode 매개 변수는 FSCTL_OPLOCK_BREAK_ACKNOWLEDGE 합니다.
OpenCount: 이 작업에 사용되지 않습니다. 를 0으로 설정합니다.
상태 블록
수준 1 oplock이 수준 2로 손상되고 수준 2 oplock이 부여되면 FltOplockFsctrl은 이 작업에 대한 FLT_PREOP_PENDING 반환합니다. 그렇지 않으면 FLT_PREOP_COMPLETE 반환합니다.
FsRtlOplockFsctrl 은 이 작업에 대해 다음 NTSTATUS 값 중 하나를 반환합니다.
코드 | 의미 |
---|---|
STATUS_SUCCESS | oplock 중단이 승인됩니다. 남은 oplock은 유지되지 않습니다. |
STATUS_INVALID_OPLOCK_PROTOCOL | 이 핸들에서 oplock을 보유하지 않았거나 oplock 중단이 현재 진행 중이 아닙니다. 오류 코드입니다. |
STATUS_PENDING | oplock 중단이 승인됩니다. 반환할 때 FSCTL_OPLOCK_BREAK_ACKNOWLEDGE 제어 코드의 보낸 사람에게는 수준 2 oplock이 있습니다. 성공 코드입니다. |
요구 사항
요구 사항 유형 | 요구 사항 |
---|---|
헤더 | Ntifs.h ( Ntifs.h 또는 Fltkernel.h 포함) |
추가 정보
IRP_MJ_FILE_SYSTEM_CONTROL 대한 FLT_PARAMETERS