EN
Este contenido no se encuentra disponible en su idioma, pero aquí tiene la versión en inglés.

StorPortIssueDpc routine

The StorPortIssueDpc routine issues a deferred procedure call (DPC).

Syntax


BOOLEAN StorPortIssueDpc(
  _In_  PVOID DeviceExtension,
  _In_  PSTOR_DPC Dpc,
  _In_  PVOID SystemArgument1,
  _In_  PVOID SystemArgument2
);

Parameters

DeviceExtension [in]

Pointer to the per-adapter device extension.

Dpc [in]

Pointer to a buffer containing an initialized DPC object of type STOR_DPC returned by the StorPortInitializeDpc routine.

SystemArgument1 [in]

Pointer to caller-supplied information that will be passed to the deferred routine.

SystemArgument2 [in]

Pointer to caller-supplied information that will be passed to the deferred routine.

Return value

The StorPortIssueDpc routine returns TRUE if the DPC was successfully inserted into the DPC queue, and FALSE otherwise.

Remarks

The StorPortIssueDpc routine calls the KeInsertQueueDpc kernel routine to queue the DPC. The KeInsertQueueDpc kernel routine does not allow a DPC to be queued multiple times. Thus, if the DPC object specified by the Dpc parameter is already in the DPC queue, KeInsertQueueDpc ignores the queue request. This ensures that a deferred routine initialized with StorPortInitializeDpc is always synchronized with itself. In other words, the caller does not need to sequentialize calls to the StorPortIssueDpc routine to ensure that multiple instances the routine do not run simultaneously.

If a miniport driver has multiple work-items that must be performed by the same DPC, the miniport driver must ensure that each work item completes before issuing the DPC for the next work item.

Requirements

Header

Storport.h (include Storport.h)

See also

KeInsertQueueDpc
StorPortInitializeDpc
STOR_DPC

 

 

Send comments about this topic to Microsoft

Mostrar:
© 2014 Microsoft