Correct IDT address computation
And I'm suppose to be graduate for that...
This commit is contained in:
parent
9cd70a7046
commit
f18249fab6
4
idt.c
4
idt.c
@ -53,8 +53,8 @@ int idt_set_handler(int index, unsigned int addr, int priviledge)
|
|||||||
idte = idt + index;
|
idte = idt + index;
|
||||||
|
|
||||||
if (addr != (unsigned int)NULL) {
|
if (addr != (unsigned int)NULL) {
|
||||||
idte->offset_low = addr && 0xffff;
|
idte->offset_low = addr & 0xffff;
|
||||||
idte->offset_high = (addr >> 16) && 0xffff;
|
idte->offset_high = (addr >> 16) & 0xffff;
|
||||||
idte->dpl = priviledge;
|
idte->dpl = priviledge;
|
||||||
idte->present = 1;
|
idte->present = 1;
|
||||||
} else {
|
} else {
|
||||||
|
Loading…
Reference in New Issue
Block a user