16#undef ExInterlockedAddUlong
17#undef ExInterlockedInsertHeadList
18#undef ExInterlockedInsertTailList
19#undef ExInterlockedRemoveHeadList
20#undef ExInterlockedPopEntryList
21#undef ExInterlockedPushEntryList
22#undef ExInterlockedIncrementLong
23#undef ExInterlockedDecrementLong
24#undef ExInterlockedExchangeUlong
25#undef ExInterlockedCompareExchange64
41 KxAcquireSpinLock(
Lock);
53 KxReleaseSpinLock(
Lock);
126 FirstEntry = ListHead->
Flink;
135 return (FirstEntry == ListHead) ?
NULL : FirstEntry;
152 LastEntry = ListHead->
Blink;
161 return (LastEntry == ListHead) ?
NULL : LastEntry;
239 OldListEntry = ListHead->
Next;
293ExfInterlockedAddUlong(
319ExfInterlockedInsertHeadList(
331 FirstEntry = ListHead->
Flink;
340 return (FirstEntry == ListHead) ?
NULL : FirstEntry;
345ExfInterlockedInsertTailList(
357 LastEntry = ListHead->
Blink;
366 return (LastEntry == ListHead) ?
NULL : LastEntry;
372ExfInterlockedRemoveHeadList(
407ExfInterlockedPopEntryList(
433ExfInterlockedPushEntryList(
445 OldListEntry = ListHead->
Next;
459Exi386InterlockedIncrementLong(
472Exfi386InterlockedIncrementLong(
485Exi386InterlockedDecrementLong(
498Exfi386InterlockedDecrementLong(
511Exi386InterlockedExchangeUlong(
520Exfi386InterlockedExchangeUlong(
540ExfInterlockedCompareExchange64(
#define InsertTailList(ListHead, Entry)
#define InsertHeadList(ListHead, Entry)
#define IsListEmpty(ListHead)
#define RemoveHeadList(ListHead)
IN OUT PLONG IN OUT PLONG Addend IN OUT PLONG IN LONG Increment
ULONG NTAPI ExInterlockedAddUlong(IN OUT PULONG Addend, IN ULONG Increment, IN OUT PKSPIN_LOCK Lock)
PSINGLE_LIST_ENTRY NTAPI ExInterlockedPopEntryList(IN OUT PSINGLE_LIST_ENTRY ListHead, IN OUT PKSPIN_LOCK Lock)
PLIST_ENTRY NTAPI ExInterlockedInsertHeadList(IN OUT PLIST_ENTRY ListHead, IN OUT PLIST_ENTRY ListEntry, IN OUT PKSPIN_LOCK Lock)
PLIST_ENTRY NTAPI ExInterlockedInsertTailList(IN OUT PLIST_ENTRY ListHead, IN OUT PLIST_ENTRY ListEntry, IN OUT PKSPIN_LOCK Lock)
LARGE_INTEGER NTAPI ExInterlockedAddLargeInteger(IN OUT PLARGE_INTEGER Addend, IN LARGE_INTEGER Increment, IN OUT PKSPIN_LOCK Lock)
FORCEINLINE BOOLEAN _ExiDisableInterruptsAndAcquireSpinlock(IN OUT PKSPIN_LOCK Lock)
FORCEINLINE VOID _ExiReleaseSpinLockAndRestoreInterrupts(IN OUT PKSPIN_LOCK Lock, BOOLEAN Enable)
PSINGLE_LIST_ENTRY NTAPI ExInterlockedPushEntryList(IN OUT PSINGLE_LIST_ENTRY ListHead, IN OUT PSINGLE_LIST_ENTRY ListEntry, IN OUT PKSPIN_LOCK Lock)
PLIST_ENTRY NTAPI ExInterlockedRemoveHeadList(IN OUT PLIST_ENTRY ListHead, IN OUT PKSPIN_LOCK Lock)
long __cdecl _InterlockedIncrement(_Interlocked_operand_ long volatile *_Addend)
__int64 _InterlockedCompareExchange64(_Interlocked_operand_ __int64 volatile *_Destination, __int64 _Exchange, __int64 _Comparand)
long __cdecl _InterlockedExchange(_Interlocked_operand_ long volatile *_Target, long _Value)
long __cdecl _InterlockedDecrement(_Interlocked_operand_ long volatile *_Addend)
_In_ PUNICODE_STRING _Inout_ PUNICODE_STRING Destination
struct _SINGLE_LIST_ENTRY * PSINGLE_LIST_ENTRY
__GNU_EXTENSION typedef __int64 * PLONGLONG
_In_ ULONGLONG _In_ ULONGLONG _In_ BOOLEAN Enable
FORCEINLINE BOOLEAN KeDisableInterrupts(VOID)
FORCEINLINE VOID KeRestoreInterrupts(BOOLEAN WereEnabled)
struct _LIST_ENTRY * Blink
struct _LIST_ENTRY * Flink
struct _SINGLE_LIST_ENTRY * Next
struct _LIST_ENTRY * PLIST_ENTRY
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT _Inout_opt_ PUNICODE_STRING Value
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFWAITLOCK * Lock
_At_(*)(_In_ PWSK_CLIENT Client, _In_opt_ PUNICODE_STRING NodeName, _In_opt_ PUNICODE_STRING ServiceName, _In_opt_ ULONG NameSpace, _In_opt_ GUID *Provider, _In_opt_ PADDRINFOEXW Hints, _Outptr_ PADDRINFOEXW *Result, _In_opt_ PEPROCESS OwningProcess, _In_opt_ PETHREAD OwningThread, _Inout_ PIRP Irp Result)(Mem)) NTSTATUS(WSKAPI *PFN_WSK_GET_ADDRESS_INFO
#define ExInterlockedAddLargeStatistic(Addend, Increment)
#define ExInterlockedExchangeUlong(Target, Value, Lock)
#define ExInterlockedDecrementLong(Addend, Lock)
#define ExInterlockedIncrementLong(Addend, Lock)
enum _INTERLOCKED_RESULT INTERLOCKED_RESULT
#define ExInterlockedCompareExchange64(Destination, Exchange, Comperand, Lock)
FORCEINLINE VOID PushEntryList(_Inout_ PSINGLE_LIST_ENTRY ListHead, _Inout_ __drv_aliasesMem PSINGLE_LIST_ENTRY Entry)
FORCEINLINE PSINGLE_LIST_ENTRY PopEntryList(_Inout_ PSINGLE_LIST_ENTRY ListHead)