<br><br><div class="gmail_quote">2010/10/2 Rudolf Mayerhofer <span dir="ltr">&lt;<a href="mailto:rm@eightyfive.net">rm@eightyfive.net</a>&gt;</span><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div><div></div><div class="h5">On Saturday 02 October 2010 08:15:46 Dmitry Timoshkov wrote:<br>
&gt; Rudolf Mayerhofer &lt;<a href="mailto:rm@eightyfive.net">rm@eightyfive.net</a>&gt; wrote:<br>
&gt; &gt;  /* System Information Class 0x01 */<br>
&gt; &gt;<br>
&gt; &gt; +typedef struct _SYSTEM_CPU_CACHE_INFORMATION {<br>
&gt; &gt; +    ULONG ProcessorMask;<br>
&gt; &gt; +    CACHE_DESCRIPTOR CacheInformation;<br>
&gt; &gt; +} SYSTEM_CPU_CACHE_INFORMATION, *PSYSTEM_CPU_CACHE_INFORMATION;<br>
&gt; &gt;<br>
&gt; &gt;  typedef struct _SYSTEM_CPU_INFORMATION {<br>
&gt; &gt;<br>
&gt; &gt;      WORD Architecture;<br>
&gt; &gt;<br>
&gt; &gt; @@ -1100,6 +1104,10 @@ typedef struct _SYSTEM_CPU_INFORMATION {<br>
&gt; &gt;<br>
&gt; &gt;      WORD Revision;       /* combination of CPU model and stepping */<br>
&gt; &gt;      WORD Reserved;       /* always zero */<br>
&gt; &gt;      DWORD FeatureSet;    /* see bit flags below */<br>
&gt; &gt;<br>
&gt; &gt; +    ULONG Cores[64];        /* Contains a Processormask for each physical<br>
&gt; &gt; core. Index is CoreID*/ +    ULONG ProcessorPackages[64]; /* Contains a<br>
&gt; &gt; Processormask for each processorpackage. Index is ProcessorPackage ID*/<br>
&gt; &gt; +    ULONG NumaNodes[64];    /* Contains a Processormask for each numa<br>
&gt; &gt; node. Index is NumaNodeNumber */ +    SYSTEM_CPU_CACHE_INFORMATION<br>
&gt; &gt; Caches[256];        /* Contains all cpu cache entries found */<br>
&gt; &gt;<br>
&gt; &gt;  } SYSTEM_CPU_INFORMATION, *PSYSTEM_CPU_INFORMATION;<br>
&gt;<br>
&gt; Where does this come from? At least the processor mask is supposed<br>
&gt; to be an ULONG_PTR.<br>
<br>
</div></div>You&#39;re right. Seem that i have missed that Processormask is ULONG_PTR, will<br>
update that ASAP.<br>
<br>
This is used in NTDLL and Kernel32 to provide an Implementation for kernel32&#39;s<br>
GetLogicalProcessorInformation().<br>
<br>
<br>
</blockquote></div>You should break long lines (like the ones on patch 3/3) into lines of 100 characters max<br>