Author: ion
Date: Sun Oct 1 19:22:42 2006
New Revision: 24344
URL:
http://svn.reactos.org/svn/reactos?rev=24344&view=rev
Log:
- 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.
Modified:
trunk/reactos/ntoskrnl/ke/i386/kiinit.c
Modified: trunk/reactos/ntoskrnl/ke/i386/kiinit.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/i386/kiinit.c?…
==============================================================================
--- trunk/reactos/ntoskrnl/ke/i386/kiinit.c (original)
+++ trunk/reactos/ntoskrnl/ke/i386/kiinit.c Sun Oct 1 19:22:42 2006
@@ -311,12 +311,11 @@
/* 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 @@
HalInitializeProcessor(Cpu, KeLoaderBlock);
/* Set active processors */
- KeActiveProcessors |= Pcr->SetMember;
+ KeActiveProcessors |= __readfsdword(KPCR_SET_MEMBER);
KeNumberProcessors++;
/* Check if this is the boot CPU */