Subversion Repositories HelenOS-historic

Rev

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)