VideoPortAcquireSpinLockAtDpcLevel function (video.h)

The VideoPortAcquireSpinLockAtDpcLevel function acquires a spin lock when the caller is already running at IRQL = DISPATCH_LEVEL.

Syntax

VIDEOPORT_API VOID VideoPortAcquireSpinLockAtDpcLevel(
  [in, out] PVOID      HwDeviceExtension,
  [in]      PSPIN_LOCK SpinLock
);

Parameters

[in, out] HwDeviceExtension

Pointer to the miniport driver's device extension.

[in] SpinLock

Pointer to a memory location that contains the spin lock.

Return value

None

Remarks

Miniport drivers call VideoPortAcquireSpinLockAtDpcLevel instead of VideoPortAcquireSpinLock for better driver performance if and only if they are already running at IRQL = DISPATCH_LEVEL.

If a miniport driver is running at IRQL < DISPATCH_LEVEL, it should call VideoPortAcquireSpinLock to have IRQL raised by that routine. VideoPortAcquireSpinLockAtDpcLevel requires the caller to be running already at IRQL = DISPATCH_LEVEL, so no raise is necessary.

The caller should release the spin lock with VideoPortReleaseSpinLockFromDpcLevel as quickly as possible.

Requirements

Requirement Value
Minimum supported client Available in Windows XP and later versions of the Windows operating systems.
Target Platform Desktop
Header video.h (include Video.h)
Library Videoprt.lib
DLL Videoprt.sys
IRQL DISPATCH_LEVEL (see Remarks section)

See also

VideoPortAcquireSpinLock

VideoPortReleaseSpinLockFromDpcLevel