[PATCH1/3] include/winternl: Add Logical Processor Information to SYSTEM_CPU_INFORMATION

Rudolf Mayerhofer rm at eightyfive.net
Fri Oct 1 14:16:52 CDT 2010


Adds additional Information to SYSTEM_CPU_INFORMATION for use with 
kernel32/process.c:GetLogicalProcessorInformation();
-------------- next part --------------
From dd97a3a6d2a948e881a9a55cbff87d41f4c34045 Mon Sep 17 00:00:00 2001
From: Rudolf Mayerhofer <rm at eightyfive.net>
Date: Fri, 1 Oct 2010 20:39:25 +0200
Subject: include/winternl: Add Logical Processor Information to SYSTEM_CPU_INFORMATION
 	modified:   include/winternl.h

---
 include/winternl.h |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/include/winternl.h b/include/winternl.h
index ee3dd98..dd1b098 100644
--- a/include/winternl.h
+++ b/include/winternl.h
@@ -1093,6 +1093,10 @@ typedef struct _SYSTEM_BASIC_INFORMATION {
 } SYSTEM_BASIC_INFORMATION, *PSYSTEM_BASIC_INFORMATION;
 
 /* System Information Class 0x01 */
+typedef struct _SYSTEM_CPU_CACHE_INFORMATION {
+    ULONG ProcessorMask;
+    CACHE_DESCRIPTOR CacheInformation;   
+} SYSTEM_CPU_CACHE_INFORMATION, *PSYSTEM_CPU_CACHE_INFORMATION;
 
 typedef struct _SYSTEM_CPU_INFORMATION {
     WORD Architecture;
@@ -1100,6 +1104,10 @@ typedef struct _SYSTEM_CPU_INFORMATION {
     WORD Revision;       /* combination of CPU model and stepping */
     WORD Reserved;       /* always zero */
     DWORD FeatureSet;    /* see bit flags below */
+    ULONG Cores[64];	 /* Contains a Processormask for each physical core. Index is CoreID*/
+    ULONG ProcessorPackages[64]; /* Contains a Processormask for each processorpackage. Index is ProcessorPackage ID*/
+    ULONG NumaNodes[64];	 /* Contains a Processormask for each numa node. Index is NumaNodeNumber */
+    SYSTEM_CPU_CACHE_INFORMATION Caches[256];	/* Contains all cpu cache entries found */
 } SYSTEM_CPU_INFORMATION, *PSYSTEM_CPU_INFORMATION;
 
 /* definitions of bits in the Feature set for the x86 processors */
-- 
1.7.3



More information about the wine-patches mailing list