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
//
// 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
//
@ -304,6 +315,26 @@ typedef struct _EX_RUNDOWN_WAIT_BLOCK
KEVENT RundownEvent;
} 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
//

View file

@ -619,31 +619,6 @@ typedef struct _COMPRESSED_DATA_INFO {
ULONG CompressedChunkSizes[ANYSIZE_ARRAY];
} 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 {
BYTE Value[6];
} SID_IDENTIFIER_AUTHORITY,*PSID_IDENTIFIER_AUTHORITY,*LPSID_IDENTIFIER_AUTHORITY;
@ -2186,6 +2161,7 @@ ExQueryPoolBlockSize (
#if (VER_PRODUCTBUILD >= 2600)
#ifndef __NTOSKRNL__
NTKERNELAPI
VOID
FASTCALL
@ -2244,6 +2220,7 @@ ExWaitForRundownProtectionRelease (
IN PEX_RUNDOWN_REF RunRef
);
#endif
#endif /* (VER_PRODUCTBUILD >= 2600) */
#define FlagOn(x, f) ((x) & (f))