What does Windows error code 801 (ERROR_CANNOT_GRANT_REQUESTED_OPLOCK) mean?

 
Previous Next
ERROR_OPLOCK_SWITCHED_TO_NEW_HANDLE ERROR_CANNOT_BREAK_OPLOCK

ERROR_CANNOT_GRANT_REQUESTED_OPLOCK

The requested caching level is unavailable, although a lower oplock may be possible

Modern Windows oplocks express separate read, write, and handle-caching intentions. A request can be too strong for the current open/share state while a less permissive combination remains compatible. This warning therefore carries more information than a generic denial: the request did not receive the exact level requested, but the output buffer may describe the level that can be supported.

Read REQUEST_OPLOCK_OUTPUT_BUFFER instead of treating every nonzero result as identical. A cache manager may accept the lower level, issue a new request that reflects its actual needs, or continue without caching. Do not keep write-behind or handle caching enabled merely because part of the request succeeded. Also inspect directory versus file semantics, because directory oplocks support a narrower set of levels.

What to inspect

  • Inspect NewOplockLevel and the returned flags.
  • Map each granted bit to the cache behavior it actually permits.
  • Fall back cleanly when write or handle caching is unavailable.

References


Looking for a different code? Search another status or error code.