HvCreateEventLogBuffer function

The HvCreateEventLogBuffer function allocates a single event log buffer for the specified event log buffer group.

Syntax


HV_STATUS  HvCreateEventLogBuffer(
  _In_  HV_EVENTLOG_TYPE Type,
  _In_  HV_EVENTLOG_BUFFER_INDEX BufferIndex,
  _In_  HV_PROXIMITY_DOMAIN_INFO ProximityInfo
);

Parameters

Type [in]

A HV_EVENTLOG_TYPE value that specifies the type of the event log buffer group of which the buffer to create is a member.

BufferIndex [in]

An HV_EVENTLOG_BUFFER_INDEX value that specifies the buffer index number to assign to the created buffer.

ProximityInfo [in]

An HV_PROXIMITY_DOMAIN_INFO structure that specifies the NUMA proximity from which the buffer's pages are allocated. This parameter is mandatory when HvCreateEventLogBuffer allocates local buffers and is optional when the event log type uses global buffers. The proximity domain specifier is described in Resource Management Proximity Domains Data Types.

Return value

HvCreateEventLogBuffer returns one of the following values. In addition to these values, HvCreateEventLogBuffer can also return one of the values that are specified in Common Hypercall Status Codes.

Return codeDescription
HV_STATUS_SUCCESS

HvCreateEventLogBuffer successfully allocated a single event log buffer.

HV_STATUS_ACCESS_DENIED

The caller is not the root partition.

HV_STATUS_INVALID_PARAMETER

One of the following invalid parameter conditions exists:

  • The specified event log type is invalid.

  • The specified proximity domain information is invalid.

  • The specified buffer index is either already in use or is not within the limit as established at event log group initialization time.

HV_STATUS_OPERATION_DENIED

The event log buffer group that is associated with this type has not been initialized.

HV_STATUS_INSUFFICIENT_MEMORY

Insufficient memory exists for the call to succeed.

 

Remarks

The size of the buffer that HvCreateEventLogBuffer creates must have previously been established by a call to the HvInitializeEventLogBufferGroup function. For types that use local buffers, the hypervisor selects pages for the buffer from the NUMA node that the ProximityInfo parameter describes. The caller assigns the buffer a unique buffer index that cannot already be in use and which must be between 0 and the maximum (less one) established at buffer group initialization time.

HvCreateEventLogBuffer has the following restrictions:

  • The caller must be the root partition.

Native Interface

HvCreateEventLogBuffer [fast]

Call Code = 0x0062

Input Parameters

0

Type (4 bytes) BufferIndex (4 bytes)

8

ProximityInfo (8 bytes)

 

Requirements

Version

HvCreateEventLogBuffer is available in version 1.0 and later versions of the hypervisor.

Header

Hvgdk.h (include Hvgdk.h)

IRQL

Any level

See also

HV_EVENTLOG_TYPE
HV_PROXIMITY_DOMAIN_INFO
HvInitializeEventLogBufferGroup

 

 

Send comments about this topic to Microsoft

Build date: 11/16/2013

Show:
© 2014 Microsoft. All rights reserved.