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/ntosk…
==============================================================================
--- 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);