Move pushlock definition. It is gone from MS headers now.

svn path=/trunk/; revision=20430
This commit is contained in:
Alex Ionescu 2005-12-29 18:45:00 +00:00
parent c505e93418
commit d71e6cd026
2 changed files with 33 additions and 25 deletions

View file

@ -100,6 +100,17 @@ extern ULONG NTSYSAPI NtBuildNumber;
// //
#define MAXIMUM_HARDERROR_PARAMETERS 4 #define MAXIMUM_HARDERROR_PARAMETERS 4
//
// Pushlock bits
//
#define EX_PUSH_LOCK_LOCK_V ((ULONG_PTR)0x0)
#define EX_PUSH_LOCK_LOCK ((ULONG_PTR)0x1)
#define EX_PUSH_LOCK_WAITING ((ULONG_PTR)0x2)
#define EX_PUSH_LOCK_WAKING ((ULONG_PTR)0x4)
#define EX_PUSH_LOCK_MULTIPLE_SHARED ((ULONG_PTR)0x8)
#define EX_PUSH_LOCK_SHARE_INC ((ULONG_PTR)0x10)
#define EX_PUSH_LOCK_PTR_BITS ((ULONG_PTR)0xf)
// //
// Pushlock Wait Block Flags // Pushlock Wait Block Flags
// //
@ -304,6 +315,26 @@ typedef struct _EX_RUNDOWN_WAIT_BLOCK
KEVENT RundownEvent; KEVENT RundownEvent;
} EX_RUNDOWN_WAIT_BLOCK, *PEX_RUNDOWN_WAIT_BLOCK; } EX_RUNDOWN_WAIT_BLOCK, *PEX_RUNDOWN_WAIT_BLOCK;
//
// Executive Pushlock
//
typedef struct _EX_PUSH_LOCK
{
union
{
struct
{
ULONG_PTR Locked:1;
ULONG_PTR Waiting:1;
ULONG_PTR Waking:1;
ULONG_PTR MultipleShared:1;
ULONG_PTR Shared:sizeof (ULONG_PTR) * 8 - 4;
};
ULONG_PTR Value;
PVOID Ptr;
};
} EX_PUSH_LOCK, *PEX_PUSH_LOCK;
// //
// Executive Pushlock Wait Block // Executive Pushlock Wait Block
// //

View file

@ -619,31 +619,6 @@ typedef struct _COMPRESSED_DATA_INFO {
ULONG CompressedChunkSizes[ANYSIZE_ARRAY]; ULONG CompressedChunkSizes[ANYSIZE_ARRAY];
} COMPRESSED_DATA_INFO, *PCOMPRESSED_DATA_INFO; } COMPRESSED_DATA_INFO, *PCOMPRESSED_DATA_INFO;
#define EX_PUSH_LOCK_LOCK_V ((ULONG_PTR)0x0)
#define EX_PUSH_LOCK_LOCK ((ULONG_PTR)0x1)
#define EX_PUSH_LOCK_WAITING ((ULONG_PTR)0x2)
#define EX_PUSH_LOCK_WAKING ((ULONG_PTR)0x4)
#define EX_PUSH_LOCK_MULTIPLE_SHARED ((ULONG_PTR)0x8)
#define EX_PUSH_LOCK_SHARE_INC ((ULONG_PTR)0x10)
#define EX_PUSH_LOCK_PTR_BITS ((ULONG_PTR)0xf)
typedef struct _EX_PUSH_LOCK
{
union
{
struct
{
ULONG_PTR Locked:1;
ULONG_PTR Waiting:1;
ULONG_PTR Waking:1;
ULONG_PTR MultipleShared:1;
ULONG_PTR Shared:sizeof (ULONG_PTR) * 8 - 4;
};
ULONG_PTR Value;
PVOID Ptr;
};
} EX_PUSH_LOCK, *PEX_PUSH_LOCK;
typedef struct _SID_IDENTIFIER_AUTHORITY { typedef struct _SID_IDENTIFIER_AUTHORITY {
BYTE Value[6]; BYTE Value[6];
} SID_IDENTIFIER_AUTHORITY,*PSID_IDENTIFIER_AUTHORITY,*LPSID_IDENTIFIER_AUTHORITY; } SID_IDENTIFIER_AUTHORITY,*PSID_IDENTIFIER_AUTHORITY,*LPSID_IDENTIFIER_AUTHORITY;
@ -2186,6 +2161,7 @@ ExQueryPoolBlockSize (
#if (VER_PRODUCTBUILD >= 2600) #if (VER_PRODUCTBUILD >= 2600)
#ifndef __NTOSKRNL__
NTKERNELAPI NTKERNELAPI
VOID VOID
FASTCALL FASTCALL
@ -2244,6 +2220,7 @@ ExWaitForRundownProtectionRelease (
IN PEX_RUNDOWN_REF RunRef IN PEX_RUNDOWN_REF RunRef
); );
#endif
#endif /* (VER_PRODUCTBUILD >= 2600) */ #endif /* (VER_PRODUCTBUILD >= 2600) */
#define FlagOn(x, f) ((x) & (f)) #define FlagOn(x, f) ((x) & (f))