Use the correct structure in SetInterruptGate.
Modified: trunk/reactos/hal/halx86/mp/apic.c
_____
Modified: trunk/reactos/hal/halx86/mp/apic.c
--- trunk/reactos/hal/halx86/mp/apic.c 2005-06-29 18:26:30 UTC (rev
16326)
+++ trunk/reactos/hal/halx86/mp/apic.c 2005-06-29 18:33:39 UTC (rev
16327)
@@ -905,12 +905,13 @@
VOID
SetInterruptGate(ULONG index, ULONG address)
{
- KDESCRIPTOR *idt;
+ KIDTENTRY *idt;
- idt = (KDESCRIPTOR*)((ULONG)KeGetCurrentKPCR()->IDT + index *
sizeof(KDESCRIPTOR));
- idt->Pad = address & 0xffff;
- idt->Limit = KERNEL_CS;
- idt->Base = 0x8e00 + (address & 0xffff0000);
+ idt = (KIDTENTRY*)((ULONG)KeGetCurrentKPCR()->IDT + index *
sizeof(KIDTENTRY));
+ idt->Offset = address & 0xffff;
+ idt->Selector = KERNEL_CS;
+ idt->Access = 0x8e00;
+ idt->ExtendedOffset = address >> 16;
}
VOID HaliInitBSP(VOID)