Author: tkreuzer Date: Sun Aug 24 20:30:57 2008 New Revision: 35622
URL: http://svn.reactos.org/svn/reactos?rev=35622&view=rev Log: Move some Pcr init code into KiInitializePcr, use __sldt instead of Ke386SetLocaldescriptorTable, enable KdInitSystem
Modified: branches/ros-amd64-bringup/reactos/ntoskrnl/ke/amd64/kiinit.c
Modified: branches/ros-amd64-bringup/reactos/ntoskrnl/ke/amd64/kiinit.c URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/ntoskr... ============================================================================== --- branches/ros-amd64-bringup/reactos/ntoskrnl/ke/amd64/kiinit.c [iso-8859-1] (original) +++ branches/ros-amd64-bringup/reactos/ntoskrnl/ke/amd64/kiinit.c [iso-8859-1] Sun Aug 24 20:30:57 2008 @@ -378,6 +378,10 @@
/* Setup the processor set */ Pcr->Prcb.MultiThreadProcessorSet = Pcr->Prcb.SetMember; + + /* Clear DR6/7 to cleanup bootloader debugging */ + Pcr->Prcb.ProcessorState.SpecialRegisters.KernelDr6 = 0; + Pcr->Prcb.ProcessorState.SpecialRegisters.KernelDr7 = 0; }
VOID @@ -701,10 +705,6 @@ /* Set us as the current process */ InitialThread->ApcState.Process = &KiInitialProcess.Pcb;
- /* Clear DR6/7 to cleanup bootloader debugging */ - Pcr->Prcb.ProcessorState.SpecialRegisters.KernelDr6 = 0; - Pcr->Prcb.ProcessorState.SpecialRegisters.KernelDr7 = 0; - /* Setup the IDT */ KeInitExceptions();
@@ -714,7 +714,7 @@ // Ke386SetFs(KGDT_32_R3_TEB | RPL_MASK);
/* LDT is unused */ - Ke386SetLocalDescriptorTable(0); + __sldt(0);
/* Save NMI and double fault traps */ // RtlCopyMemory(&NmiEntry, &Idt[2], sizeof(KIDTENTRY)); @@ -753,7 +753,7 @@ if (Cpu == 0) { /* Initialize debugging system */ -// KdInitSystem(0, KeLoaderBlock); + KdInitSystem(0, KeLoaderBlock);
/* Check for break-in */ // if (KdPollBreakIn()) DbgBreakPointWithStatus(1);