diff --git a/arch/x86/kernel/irq.c b/arch/x86/kernel/irq.c index 2fb0347d..d4de077c 100644 --- a/arch/x86/kernel/irq.c +++ b/arch/x86/kernel/irq.c @@ -138,66 +138,66 @@ static int irq_install(void) { irq_remap(); - idt_set_gate(32, (unsigned)irq0, KERNEL_CODE_SELECTOR, + idt_set_gate(32, (size_t)irq0, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(33, (unsigned)irq1, KERNEL_CODE_SELECTOR, + idt_set_gate(33, (size_t)irq1, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(34, (unsigned)irq2, KERNEL_CODE_SELECTOR, + idt_set_gate(34, (size_t)irq2, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(35, (unsigned)irq3, KERNEL_CODE_SELECTOR, + idt_set_gate(35, (size_t)irq3, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(36, (unsigned)irq4, KERNEL_CODE_SELECTOR, + idt_set_gate(36, (size_t)irq4, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(37, (unsigned)irq5, KERNEL_CODE_SELECTOR, + idt_set_gate(37, (size_t)irq5, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(38, (unsigned)irq6, KERNEL_CODE_SELECTOR, + idt_set_gate(38, (size_t)irq6, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(39, (unsigned)irq7, KERNEL_CODE_SELECTOR, + idt_set_gate(39, (size_t)irq7, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(40, (unsigned)irq8, KERNEL_CODE_SELECTOR, + idt_set_gate(40, (size_t)irq8, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(41, (unsigned)irq9, KERNEL_CODE_SELECTOR, + idt_set_gate(41, (size_t)irq9, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(42, (unsigned)irq10, KERNEL_CODE_SELECTOR, + idt_set_gate(42, (size_t)irq10, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(43, (unsigned)irq11, KERNEL_CODE_SELECTOR, + idt_set_gate(43, (size_t)irq11, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(44, (unsigned)irq12, KERNEL_CODE_SELECTOR, + idt_set_gate(44, (size_t)irq12, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(45, (unsigned)irq13, KERNEL_CODE_SELECTOR, + idt_set_gate(45, (size_t)irq13, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(46, (unsigned)irq14, KERNEL_CODE_SELECTOR, + idt_set_gate(46, (size_t)irq14, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(47, (unsigned)irq15, KERNEL_CODE_SELECTOR, + idt_set_gate(47, (size_t)irq15, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); if (has_apic()) { - idt_set_gate(48, (unsigned)irq16, KERNEL_CODE_SELECTOR, + idt_set_gate(48, (size_t)irq16, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(49, (unsigned)irq17, KERNEL_CODE_SELECTOR, + idt_set_gate(49, (size_t)irq17, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(50, (unsigned)irq18, KERNEL_CODE_SELECTOR, + idt_set_gate(50, (size_t)irq18, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(51, (unsigned)irq19, KERNEL_CODE_SELECTOR, + idt_set_gate(51, (size_t)irq19, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(52, (unsigned)irq20, KERNEL_CODE_SELECTOR, + idt_set_gate(52, (size_t)irq20, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(53, (unsigned)irq21, KERNEL_CODE_SELECTOR, + idt_set_gate(53, (size_t)irq21, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(54, (unsigned)irq22, KERNEL_CODE_SELECTOR, + idt_set_gate(54, (size_t)irq22, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(55, (unsigned)irq23, KERNEL_CODE_SELECTOR, + idt_set_gate(55, (size_t)irq23, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(123, (unsigned)apic_timer, KERNEL_CODE_SELECTOR, + idt_set_gate(123, (size_t)apic_timer, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(124, (unsigned)apic_lint0, KERNEL_CODE_SELECTOR, + idt_set_gate(124, (size_t)apic_lint0, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(125, (unsigned)apic_lint1, KERNEL_CODE_SELECTOR, + idt_set_gate(125, (size_t)apic_lint1, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(126, (unsigned)apic_error, KERNEL_CODE_SELECTOR, + idt_set_gate(126, (size_t)apic_error, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); - idt_set_gate(127, (unsigned)apic_svr, KERNEL_CODE_SELECTOR, + idt_set_gate(127, (size_t)apic_svr, KERNEL_CODE_SELECTOR, IDT_FLAG_PRESENT|IDT_FLAG_RING0|IDT_FLAG_32BIT|IDT_FLAG_INTTRAP); } diff --git a/mm/memory.c b/mm/memory.c index 1739d894..8b12f4f3 100644 --- a/mm/memory.c +++ b/mm/memory.c @@ -56,23 +56,23 @@ atomic_int32_t total_available_pages = ATOMIC_INIT(0); extern const void kernel_start; extern const void kernel_end; -inline static int page_marked(unsigned int i) +inline static int page_marked(size_t i) { - unsigned int index = i >> 3; - unsigned int mod = i & 0x7; + size_t index = i >> 3; + size_t mod = i & 0x7; return (bitmap[index] & (1 << mod)); } -inline static int page_unmarked(unsigned int i) +inline static int page_unmarked(size_t i) { return !page_marked(i); } -inline static void page_set_mark(unsigned int i) +inline static void page_set_mark(size_t i) { - unsigned int index = i >> 3; - unsigned int mod = i & 0x7; + size_t index = i >> 3; + size_t mod = i & 0x7; //if (page_marked(i)) // kprintf("page %u is alread marked\n", i); @@ -80,10 +80,10 @@ inline static void page_set_mark(unsigned int i) bitmap[index] = bitmap[index] | (1 << mod); } -inline static void page_clear_mark(unsigned int i) +inline static void page_clear_mark(size_t i) { - unsigned int index = i / 8; - unsigned int mod = i % 8; + size_t index = i / 8; + size_t mod = i % 8; if (page_unmarked(i)) kprintf("page %u is already unmarked\n", i);