Author: sginsberg
Date: Wed Oct 14 20:07:29 2009
New Revision: 43462
URL: 
http://svn.reactos.org/svn/reactos?rev=43462&view=rev
Log:
- Remove a hack from KiGetMachineBootPointers and set the TSS selector properly in
KiRosPrepareForSystemStartup instead.
- Use KGDT_TSS in WinLdrSetProcessorContext instead of a hardcoded value.
Modified:
    trunk/reactos/boot/freeldr/freeldr/windows/wlmemory.c
    trunk/reactos/ntoskrnl/ke/freeldr.c
    trunk/reactos/ntoskrnl/ke/i386/kiinit.c
Modified: trunk/reactos/boot/freeldr/freeldr/windows/wlmemory.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/windo…
==============================================================================
--- trunk/reactos/boot/freeldr/freeldr/windows/wlmemory.c [iso-8859-1] (original)
+++ trunk/reactos/boot/freeldr/freeldr/windows/wlmemory.c [iso-8859-1] Wed Oct 14 20:07:29
2009
@@ -919,7 +919,7 @@
        Ke386SetLocalDescriptorTable(Ldt);
        // Load TSR
-       Ke386SetTr(0x28);
+       Ke386SetTr(KGDT_TSS);
        // Clear GS
        Ke386SetGs(0);
Modified: trunk/reactos/ntoskrnl/ke/freeldr.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/freeldr.c?rev=…
==============================================================================
--- trunk/reactos/ntoskrnl/ke/freeldr.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/ke/freeldr.c [iso-8859-1] Wed Oct 14 20:07:29 2009
@@ -1289,6 +1289,9 @@
     TssEntry->BaseLow = (USHORT)((ULONG_PTR)Tss & 0xFFFF);
     TssEntry->HighWord.Bytes.BaseMid = (UCHAR)((ULONG_PTR)Tss >> 16);
     TssEntry->HighWord.Bytes.BaseHi = (UCHAR)((ULONG_PTR)Tss >> 24);
+
+    /* Set the TSS selector */
+    Ke386SetTr(KGDT_TSS);
 #endif
 #if defined(_M_PPC)
@@ -1351,5 +1354,3 @@
     /* Do general System Startup */
     KiSystemStartupReal(NtLoaderBlock);
 }
-
-/* EOF */
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 [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/ke/i386/kiinit.c [iso-8859-1] Wed Oct 14 20:07:29 2009
@@ -621,7 +621,6 @@
     /* Get TSS and FS Selectors */
     Tr = Ke386GetTr();
-    if (Tr != KGDT_TSS) Tr = KGDT_TSS; // FIXME: HACKHACK
     Fs = Ke386GetFs();
     /* Get PCR Selector, mask it and get its GDT Entry */