update for HEAD-2003091401
[reactos.git] / ntoskrnl / ke / i386 / gdt.c
index f0a052c..5a1ede9 100644 (file)
@@ -95,7 +95,7 @@ KiInitializeGdt(PKPCR Pcr)
   if (Gdt == NULL)
     {
       DbgPrint("No GDT (%d)\n", Pcr->ProcessorNumber);
-      KeBugCheck(0);
+      KEBUGCHECK(0);
     }
 
   /*
@@ -178,6 +178,31 @@ KeSetBaseGdtSelector(ULONG Entry,
 }
 
 VOID 
+KeSetGdtSelector(ULONG Entry,
+                 ULONG Value1,
+                 ULONG Value2)
+{
+   KIRQL oldIrql;
+   PULONG Gdt = (PULONG) KeGetCurrentKPCR()->GDT;
+   
+   DPRINT("KeSetGdtSelector(Entry %x, Value1 %x, Value2 %x)\n",
+          Entry, Value1, Value2);
+   
+   KeAcquireSpinLock(&GdtLock, &oldIrql);
+   
+   Entry = (Entry & (~0x3)) / 4;
+
+   Gdt[Entry] = Value1;
+   Gdt[Entry + 1] = Value2;
+
+   DPRINT("%x %x\n", 
+          Gdt[Entry + 0],
+          Gdt[Entry + 1]);
+   
+   KeReleaseSpinLock(&GdtLock, oldIrql);
+}
+
+VOID 
 KeDumpGdtSelector(ULONG Entry)
 {
    USHORT a, b, c, d;