2010/10/2 Rudolf Mayerhofer <rm@eightyfive.net>
On Saturday 02 October 2010 08:15:46 Dmitry Timoshkov wrote:
> Rudolf Mayerhofer <rm@eightyfive.net> wrote:
> > ���/* 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;
>
> Where does this come from? At least the processor mask is supposed
> to be an ULONG_PTR.

You're right. Seem that i have missed that Processormask is ULONG_PTR, will
update that ASAP.

This is used in NTDLL and Kernel32 to provide an Implementation for kernel32's
GetLogicalProcessorInformation().


You should break long lines (like the ones on patch 3/3) into lines of 100 characters max