From 13e94de7b47964ff6143a4154cbdf26cc17d6f65 Mon Sep 17 00:00:00 2001 From: Philipp Oppermann Date: Fri, 27 May 2016 21:21:52 +0200 Subject: [PATCH] Make the load function safe --- src/interrupts/idt.rs | 4 ++-- src/interrupts/mod.rs | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/interrupts/idt.rs b/src/interrupts/idt.rs index f1700919..89922446 100644 --- a/src/interrupts/idt.rs +++ b/src/interrupts/idt.rs @@ -12,7 +12,7 @@ impl Idt { &mut self.0[entry as usize].options } - pub unsafe fn load(&'static self) { + pub fn load(&'static self) { use x86::dtables::{DescriptorTablePointer, lidt}; use core::mem::size_of; @@ -21,7 +21,7 @@ impl Idt { limit: (size_of::() - 1) as u16, }; - lidt(&ptr); + unsafe { lidt(&ptr) }; } } diff --git a/src/interrupts/mod.rs b/src/interrupts/mod.rs index cb8e804d..2a29469d 100644 --- a/src/interrupts/mod.rs +++ b/src/interrupts/mod.rs @@ -64,8 +64,8 @@ pub fn init() { GDT.table.load(); gdt::reload_segment_registers(GDT.selectors.code, GDT.selectors.data); gdt::load_ltr(GDT.selectors.tss); - IDT.load(); } + IDT.load(); } pub extern "C" fn divide_by_zero_handler() -> ! {