I need your help to understand the concept around oplock.
While working on oplock I have found that the call FltOplockFsctrl() is returning FLT_PREOP_PENDING.
But it remains so for over 600sec ,in end the status of IRP (FSCTL) is seen to the CANCELLED on Process monitor.
The requsted code is FSCTL_REQUEST_OPLOCK , that is called by a process on local matchine.
Also there is no parallel access , the reference count is 1 on FCB.
though FltCurrentOplock() returns TRUE for the Oplock pointer.
The product is shadow file object based encryption driver.
The code for this fsctl callback is matching with the sample "fastfat".
please help me to understand the problem.
Thanks in advance.