[PATCH] include: Update some members of KUSER_SHARED_DATA.
Huw Davies
huw at codeweavers.com
Thu Jul 9 10:15:40 CDT 2020
Signed-off-by: Huw Davies <huw at codeweavers.com>
---
include/ddk/wdm.h | 36 ++++++++++++++++++++++++++++++++----
server/mapping.c | 2 +-
2 files changed, 33 insertions(+), 5 deletions(-)
diff --git a/include/ddk/wdm.h b/include/ddk/wdm.h
index 23ac630f410..59af860708b 100644
--- a/include/ddk/wdm.h
+++ b/include/ddk/wdm.h
@@ -1246,6 +1246,7 @@ typedef struct _KUSER_SHARED_DATA {
ULONG SuiteMask; /* 0x2d0 */
BOOLEAN KdDebuggerEnabled; /* 0x2d4 */
UCHAR NXSupportPolicy; /* 0x2d5 */
+ USHORT CyclesPerYield; /* 0x2d6 */
volatile ULONG ActiveConsoleId; /* 0x2d8 */
volatile ULONG DismountCount; /* 0x2dc */
ULONG ComPlusPackage; /* 0x2e0 */
@@ -1253,16 +1254,43 @@ typedef struct _KUSER_SHARED_DATA {
ULONG NumberOfPhysicalPages; /* 0x2e8 */
BOOLEAN SafeBootMode; /* 0x2ec */
UCHAR VirtualizationFlags; /* 0x2ed */
- ULONG TraceLogging; /* 0x2f0 */
+ union {
+ ULONG SharedDataFlags; /* 0x2f0 */
+ struct {
+ ULONG DbgErrorPortPresent : 1;
+ ULONG DbgElevationEnabed : 1;
+ ULONG DbgVirtEnabled : 1;
+ ULONG DbgInstallerDetectEnabled : 1;
+ ULONG DbgLkgEnabled : 1;
+ ULONG DbgDynProcessorEnabled : 1;
+ ULONG DbgConsoleBrokerEnabled : 1;
+ ULONG DbgSecureBootEnabled : 1;
+ ULONG DbgMultiSessionSku : 1;
+ ULONG DbgMultiUsersInSessionSku : 1;
+ ULONG DbgStateSeparationEnabled : 1;
+ ULONG SpareBits : 21;
+ } DUMMYSTRUCTNAME2;
+ } DUMMYUNIONNAME2;
+ ULONG DataFlagsPad[1]; /* 0x2f4 */
ULONGLONG TestRetInstruction; /* 0x2f8 */
- ULONG SystemCall; /* 0x300 */
- ULONG SystemCallReturn; /* 0x304 */
- ULONGLONG SystemCallPad[3]; /* 0x308 */
+ LONGLONG QpcFrequency; /* 0x300 */
+ ULONG SystemCall; /* 0x308 */
+ union {
+ ULONG AllFlags; /* 0x30c */
+ struct {
+ ULONG Win32Process : 1;
+ ULONG Sgx2Enclave : 1;
+ ULONG VbsBasicEnclave : 1;
+ ULONG SpareBits : 29;
+ } DUMMYSTRUCTNAME;
+ } UserCetAvailableEnvironments;
+ ULONGLONG SystemCallPad[2]; /* 0x310 */
union {
volatile KSYSTEM_TIME TickCount; /* 0x320 */
volatile ULONG64 TickCountQuad;
} DUMMYUNIONNAME;
ULONG Cookie; /* 0x330 */
+ ULONG CookiePad[1]; /* 0x334 */
LONGLONG ConsoleSessionForegroundProcessId; /* 0x338 */
ULONGLONG TimeUpdateLock; /* 0x340 */
ULONGLONG BaselineSystemTimeQpc; /* 0x348 */
diff --git a/server/mapping.c b/server/mapping.c
index ce70b696bd5..db0debe0af5 100644
--- a/server/mapping.c
+++ b/server/mapping.c
@@ -967,7 +967,7 @@ struct object *create_user_data_mapping( struct object *root, const struct unico
if (ptr != MAP_FAILED)
{
user_shared_data = ptr;
- user_shared_data->SystemCallPad[0] = 1;
+ user_shared_data->SystemCall = 1;
}
return &mapping->obj;
}
--
2.23.0
More information about the wine-devel
mailing list