Condividi tramite


Macro KeReleaseSpinLockFromDpcLevel (wdm.h)

Il KeReleaseSpinLockFromDpcLevel routine rilascia un blocco spin esecutivo senza modificare IRQL.

Sintassi

VOID KeReleaseSpinLockFromDpcLevel(
  [in, out] PKSPIN_LOCK SpinLock
);

Parametri

[in, out] SpinLock

Puntatore a un dirigente KSPIN_LOCK blocco spin per il quale il chiamante fornisce lo spazio di archiviazione.

Valore restituito

Nessuno

Osservazioni

I driver chiamano KeReleaseSpinLockFromDpcLevel per rilasciare un blocco spin acquisito chiamando KeAcquireSpinLockAtDpcLevel.

È un errore chiamare KeReleaseSpinLockFromDpcLevel se il blocco di selezione specificato è stato acquisito chiamando KeAcquireSpinLock perché il runtime irQL originale del chiamante non viene ripristinato, che può causare deadlock o errori di pagina irreversibili.

Per altre informazioni sui blocchi di selezione, vedere Spin Locks.

Fabbisogno

Requisito Valore
piattaforma di destinazione Universale
intestazione wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
libreria NtosKrnl.lib
dll NtosKrnl.exe
IRQL LIVELLO_DI_GESTIONE
regole di conformità DDI HwStorPortProhibitedDDDIs(storport), IrqlDispatch(storport), SpinLockSafe(storport)

Vedere anche

KeAcquireInStackQueuedSpinLockAtDpcLevel

KeAcquireSpinLock

KeAcquireSpinLockAtDpcLevel

KefReleaseSpinLockFromDpcLevel

KeInitializeSpinLock

KeReleaseSpinLock

KeTryToAcquireSpinLockAtDpcLevel

blocchi di selezione