KeConvertAuxiliaryCounterToPerformanceCounter function (wdm.h)

The KeConvertAuxiliaryCounterToPerformanceCounter routine converts the specified auxiliary counter value into a performance counter value.

Syntax

NTSTATUS KeConvertAuxiliaryCounterToPerformanceCounter(
  [in]            ULONG64  AuxiliaryCounterValue,
  [out]           PULONG64 PerformanceCounterValue,
  [out, optional] PULONG64 ConversionError
);

Parameters

[in] AuxiliaryCounterValue

The auxiliary counter value to convert.

[out] PerformanceCounterValue

A pointer to the variable that contains the converted performance counter value.

[out, optional] ConversionError

A pointer to a variable that contains the estimated conversion error in units of nanosecond.

Return value

KeConvertAuxiliaryCounterToPerformanceCounter can return one of the following:

Return code Description
STATUS_SUCCESS
The conversion succeeded.
STATUS_NOT_SUPPORTED
Auxiliary counter is not supported.
STATUS_INVALID_PARAMETER
The AuxiliaryCounterValue value is not valid. For example, the value is earlier than the last system boot/recovery, or is out of the +/- 10s range compared to the current auxiliary counter value.
STATUS_UNSUCCESSFUL
The routine cannot convert the specified value with acceptable accuracy.

Remarks

Make sure that the specified auxiliary counter value is within +/- 10s compared to the current value.

Requirements

Requirement Value
Minimum supported client Available starting with Windows 10.
Target Platform Universal
Header wdm.h
Library Ntoskrnl.lib
DLL Hal.dll
IRQL Any level

See also

KeConvertPerformanceCounterToAuxiliaryCounter