Rev 534 | Rev 799 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 534 | Rev 576 | ||
---|---|---|---|
Line 29... | Line 29... | ||
29 | #include <arch/pm.h> |
29 | #include <arch/pm.h> |
30 | #include <arch/mm/page.h> |
30 | #include <arch/mm/page.h> |
31 | #include <arch/types.h> |
31 | #include <arch/types.h> |
32 | #include <arch/interrupt.h> |
32 | #include <arch/interrupt.h> |
33 | #include <arch/asm.h> |
33 | #include <arch/asm.h> |
- | 34 | #include <interrupt.h> |
|
34 | 35 | ||
35 | #include <config.h> |
36 | #include <config.h> |
36 | 37 | ||
37 | #include <memstr.h> |
38 | #include <memstr.h> |
38 | #include <mm/heap.h> |
39 | #include <mm/heap.h> |
Line 172... | Line 173... | ||
172 | */ |
173 | */ |
173 | d->dpl |= PL_USER; |
174 | d->dpl |= PL_USER; |
174 | } |
175 | } |
175 | 176 | ||
176 | idt_setoffset(d, ((__address) interrupt_handlers) + i*interrupt_handler_size); |
177 | idt_setoffset(d, ((__address) interrupt_handlers) + i*interrupt_handler_size); |
177 | trap_register(i, null_interrupt); |
178 | exc_register(i, "undef", null_interrupt); |
178 | } |
179 | } |
179 | trap_register(13, gp_fault); |
180 | exc_register(13, "gp_fault", gp_fault); |
180 | trap_register( 7, nm_fault); |
181 | exc_register( 7, "nm_fault", nm_fault); |
181 | trap_register(12, ss_fault); |
182 | exc_register(12, "ss_fault", ss_fault); |
182 | } |
183 | } |
183 | 184 | ||
184 | 185 | ||
185 | /* Clean IOPL(12,13) and NT(14) flags in EFLAGS register */ |
186 | /* Clean IOPL(12,13) and NT(14) flags in EFLAGS register */ |
186 | static void clean_IOPL_NT_flags(void) |
187 | static void clean_IOPL_NT_flags(void) |