forked from xt-sys/exectos
Saving processor features in the processor control block
Fixed correct AMD Family 25 model detection Fixed procedure for saving processor vendor name (previously corrupted) Added a debugging print of the processor identification
This commit is contained in:
@@ -204,6 +204,13 @@ typedef struct _CPU_IDENTIFICATION
|
||||
UCHAR VendorName[13];
|
||||
} CPU_IDENTIFICATION, *PCPU_IDENTIFICATION;
|
||||
|
||||
/* Processor features */
|
||||
typedef struct _CPU_FEATURES
|
||||
{
|
||||
CPUID_FEATURES Ecx;
|
||||
CPUID_FEATURES Edx;
|
||||
} CPU_FEATURES, *PCPU_FEATURES;
|
||||
|
||||
/* CPUID registers */
|
||||
typedef struct _CPUID_REGISTERS
|
||||
{
|
||||
|
@@ -498,6 +498,7 @@ typedef struct _KPROCESSOR_CONTROL_BLOCK
|
||||
ULONG64 RspBase;
|
||||
ULONG_PTR SetMember;
|
||||
CPU_IDENTIFICATION CpuId;
|
||||
CPU_FEATURES CpuFeatures;
|
||||
KPROCESSOR_STATE ProcessorState;
|
||||
KSPIN_LOCK_QUEUE LockQueue[MaximumLock];
|
||||
KDPC_DATA DpcData[2];
|
||||
|
@@ -21,6 +21,7 @@ typedef enum _PAGE_SIZE PAGE_SIZE, *PPAGE_SIZE;
|
||||
/* Architecture-specific structures forward references */
|
||||
typedef struct _CONTEXT CONTEXT, *PCONTEXT;
|
||||
typedef struct _CPU_IDENTIFICATION CPU_IDENTIFICATION, *PCPU_IDENTIFICATION;
|
||||
typedef struct _CPU_FEATURES CPU_FEATURES, *PCPU_FEATURES;
|
||||
typedef struct _CPUID_REGISTERS CPUID_REGISTERS, *PCPUID_REGISTERS;
|
||||
typedef struct _CPUID_SIGNATURE CPUID_SIGNATURE, *PCPUID_SIGNATURE;
|
||||
typedef struct _FLOATING_SAVE_AREA FLOATING_SAVE_AREA, *PFLOATING_SAVE_AREA;
|
||||
|
@@ -155,6 +155,13 @@ typedef struct _CPU_IDENTIFICATION
|
||||
UCHAR VendorName[13];
|
||||
} CPU_IDENTIFICATION, *PCPU_IDENTIFICATION;
|
||||
|
||||
/* Processor features */
|
||||
typedef struct _CPU_FEATURES
|
||||
{
|
||||
CPUID_FEATURES Ecx;
|
||||
CPUID_FEATURES Edx;
|
||||
} CPU_FEATURES, *PCPU_FEATURES;
|
||||
|
||||
/* CPUID registers */
|
||||
typedef struct _CPUID_REGISTERS
|
||||
{
|
||||
|
@@ -456,6 +456,7 @@ typedef struct _KPROCESSOR_CONTROL_BLOCK
|
||||
UCHAR Number;
|
||||
ULONG_PTR SetMember;
|
||||
CPU_IDENTIFICATION CpuId;
|
||||
CPU_FEATURES CpuFeatures;
|
||||
KPROCESSOR_STATE ProcessorState;
|
||||
KSPIN_LOCK_QUEUE LockQueue[MaximumLock];
|
||||
ULONG_PTR MultiThreadProcessorSet;
|
||||
|
@@ -21,6 +21,7 @@ typedef enum _PAGE_SIZE PAGE_SIZE, *PPAGE_SIZE;
|
||||
/* Architecture-specific structures forward references */
|
||||
typedef struct _CONTEXT CONTEXT, *PCONTEXT;
|
||||
typedef struct _CPU_IDENTIFICATION CPU_IDENTIFICATION, *PCPU_IDENTIFICATION;
|
||||
typedef struct _CPU_FEATURES CPU_FEATURES, *PCPU_FEATURES;
|
||||
typedef struct _CPUID_REGISTERS CPUID_REGISTERS, *PCPUID_REGISTERS;
|
||||
typedef struct _CPUID_SIGNATURE CPUID_SIGNATURE, *PCPUID_SIGNATURE;
|
||||
typedef struct _FN_SAVE_FORMAT FN_SAVE_FORMAT, *PFN_SAVE_FORMAT;
|
||||
|
Reference in New Issue
Block a user