Skip to content

Latest commit

 

History

History
87 lines (68 loc) · 2.7 KB

nc-storport-hw_workitem.md

File metadata and controls

87 lines (68 loc) · 2.7 KB
UID title description old-location tech.root ms.date keywords ms.keywords req.header req.include-header req.target-type req.target-min-winverclnt req.target-min-winversvr req.kmdf-ver req.umdf-ver req.ddi-compliance req.unicode-ansi req.idl req.max-support req.namespace req.assembly req.type-library req.lib req.dll req.irql targetos req.typenames f1_keywords topic_type api_type api_location api_name
NC:storport.HW_WORKITEM
HW_WORKITEM (storport.h)
A miniport-provided callback function for processing a Storport work item request.
storage\hwstorworkitem.htm
storage
03/29/2018
HW_WORKITEM callback function
HW_WORKITEM, HwStorWorkItem, HwStorWorkItem routine [Storage Devices], storage.hwstorworkitem, storport/HwStorWorkItem
storport.h
Storport.h
Universal
Available in Windows 8 and later versions of Windows.
PASSIVE_LEVEL
Windows
HW_WORKITEM
storport/HW_WORKITEM
APIRef
kbSyntax
UserDefined
storport.h
HW_WORKITEM

HW_WORKITEM callback function

-description

A miniport-provided callback function for processing a Storport work item request.

-parameters

-param HwDeviceExtension [in]

A pointer to the miniport driver's per-HBA storage area.

-param Context [in, optional]

Optional context provided by the miniport in the Callback parameter of StorPortQueueWorkItem.

-param Worker [in]

A pointer to an opaque buffer that holds context information for the work item returned by StorPortInitializeWorker.

-remarks

If needed, a work item can be queued within HwStorWorkItem. Call StorPortQueueWorkItem with the current work item to reuse it. Otherwise, call StorPortFreeWorker to release the work item.

No locks are acquired by Storport when the callback is invoked. The miniport is responsible for any synchronization required in the callback routine.

The name HwStorWorkItem is just a placeholder for the miniport function that is pointed to by the Callback parameter of StorPortQueueWorkItem. The actual prototype of this routine is defined in Storport.h as follows:

typedef
VOID
HW_WORKITEM (
    _In_     PVOID HwDeviceExtension,
    _In_Opt_ PVOID Context,
    _In_     PVOID Worker,
    );

-see-also

StorPortFreeWorker

StorPortInitializeWorker

StorPortQueueWorkItem