// wdm.h
PCLFS_CLIENT_LFF_HANDLER_COMPLETE_CALLBACK PclfsClientLffHandlerCompleteCallback;
VOID PclfsClientLffHandlerCompleteCallback(
[in] PLOG_FILE_OBJECT LogFile,
[in] NTSTATUS OperationStatus,
[in] BOOLEAN LogIsPinned,
[in] PVOID ClientData
)
{...}
View the official Windows Driver Kit DDI referenceNo description available.
The ClfsLogGrowthCompleteCallback function implements the actions that the client will take when space is freed in a log that had previously been full.
LogFile [in]A pointer to a LOG_FILE_OBJECT structure that represents the CLFS log stream whose log has finished growing.
OperationStatus [in]The status of the client's earlier request to handle a log file full condition. This will be either STATUS_SUCCESS or an error status that indicates the reason that the request could not be completed successfully.
LogIsPinned [in]If TRUE, specifies that the log tail is currently pinned; FALSE if the log tail is not pinned.
ClientData [in]A pointer to client-supplied information.
Because a call to ClfsMgmtHandleLogFileFull completes asynchronously, any actions that the client will take when the log file full condition has been handled belong in the ClfsLogGrowthCompleteCallback function.
If a call to the ClfsMgmtHandleLogFileFull routine returned returns STATUS_PENDING, then the ClfsLogGrowthCompleteCallback function will be invoked when the operation completes. If a different status was returned, then the ClfsLogGrowthCompleteCallback function will not be invoked.
The ClfsLogGrowthCompleteCallback function should only perform a minimal amount of processing before returning. For example, the ClfsLogGrowthCompleteCallback function might follow the following procedure:
When a client uses the ClfsMgmtRegisterManagedClient routine to register with CLFS management, the client provides both a pointer to the ClfsLogGrowthCompleteCallback function and the custom data that will be passed as a parameter to the ClfsLogGrowthCompleteCallback function when this function is called.