FltOplockIsFastIoPossible function (fltkernel.h)

The FltOplockIsFastIoPossible routine checks a file's opportunistic lock (oplock) state to determine whether fast I/O can be performed on the file.

Syntax

BOOLEAN FLTAPI FltOplockIsFastIoPossible(
  [in] POPLOCK Oplock
);

Parameters

[in] Oplock

Opaque oplock pointer for the file. This pointer must have been initialized by a previous call to FltInitializeOplock.

Return value

FltOplockIsFastIoPossible returns FALSE if there are outstanding oplocks on the file that prevent fast I/O from being performed; TRUE otherwise.

Remarks

FltOplockIsFastIoPossible determines whether fast I/O can be performed on a file, according to the following conditions:

  • If the Oplock parameter is NULL, or if the value of **Oplock* is NULL, there are no outstanding oplocks on the file, and fast I/O can be performed on the file.
  • If an exclusive oplock was granted for the file, but no oplock break is in progress, fast I/O can be performed on the file.
For detailed information about opportunistic locks, see the Windows SDK documentation.

Requirements

Requirement Value
Target Platform Universal
Header fltkernel.h (include Fltkernel.h)
Library FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

See also

FSCTL_OPBATCH_ACK_CLOSE_PENDING

FSCTL_OPLOCK_BREAK_ACKNOWLEDGE

FSCTL_OPLOCK_BREAK_ACK_NO_2

FSCTL_OPLOCK_BREAK_NOTIFY

FSCTL_REQUEST_BATCH_OPLOCK

FSCTL_REQUEST_FILTER_OPLOCK

FSCTL_REQUEST_OPLOCK_LEVEL_1

FSCTL_REQUEST_OPLOCK_LEVEL_2

FltCheckOplock

FltCurrentBatchOplock

FltInitializeOplock

FltOplockFsctrl

FltUninitializeOplock

FsRtlOplockIsFastIoPossible