- Use __readfsdword instead of de-referencing the Boot PCR, which is not queried for Application CPUs. (And put the Goto back where it was). Thanks to Thomas Weidenmueller for noticing.

svn path=/trunk/; revision=24344
This commit is contained in:
Alex Ionescu 2006-10-01 15:22:42 +00:00
parent 41ecee90f7
commit 4f1804b0c0

View file

@ -311,13 +311,12 @@ KiSystemStartup(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
/* Initialize the machine type */
KiInitializeMachineType();
/* Skip initial setup if this isn't the Boot CPU */
if (Cpu) goto AppCpuInit;
/* Get GDT, IDT, PCR and TSS pointers */
KiGetMachineBootPointers(&Gdt, &Idt, &Pcr, &Tss);
/* Skip initial setup if this isn't the Boot CPU */
if (Cpu)
goto AppCpuInit;
/* Setup the TSS descriptors and entries */
Ki386InitializeTss(Tss, Idt, Gdt);
@ -361,7 +360,7 @@ AppCpuInit:
HalInitializeProcessor(Cpu, KeLoaderBlock);
/* Set active processors */
KeActiveProcessors |= Pcr->SetMember;
KeActiveProcessors |= __readfsdword(KPCR_SET_MEMBER);
KeNumberProcessors++;
/* Check if this is the boot CPU */