PCLFS_CLIENT_LFF_HANDLER_COMPLETE_CALLBACK callback function (wdm.h)

The ClfsLogGrowthCompleteCallback function implements the actions that the client will take when space is freed in a log that had previously been full.

Syntax

PCLFS_CLIENT_LFF_HANDLER_COMPLETE_CALLBACK PclfsClientLffHandlerCompleteCallback;

void PclfsClientLffHandlerCompleteCallback(
  [in] PLOG_FILE_OBJECT LogFile,
  [in] NTSTATUS OperationStatus,
  [in] BOOLEAN LogIsPinned,
  [in] PVOID ClientData
)
{...}

Parameters

[in] LogFile

A pointer to a LOG_FILE_OBJECT structure that represents the CLFS log stream whose log has finished growing.

[in] OperationStatus

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.

[in] LogIsPinned

If TRUE, specifies that the log tail is currently pinned; FALSE if the log tail is not pinned.

[in] ClientData

A pointer to client-supplied information.

Return value

None

Remarks

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:

  1. If the value of the OperationStatus parameter is an error status, return.
  2. If the value of the OperationStatus parameter is STATUS_SUCCESS, create and queue a work item to inform the client that it can resume processing.
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.

Requirements

Requirement Value
Minimum supported client Supported in Windows Server 2003 R2, Windows Vista, and later versions of Windows.
Target Platform Desktop
Header wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
IRQL Called at IRQL <= APC_LEVEL

See also

ClfsMgmtHandleLogFileFull

ClfsMgmtRegisterManagedClient