Subversion Repositories HelenOS-historic

Rev

Rev 1251 | Rev 1289 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1251 Rev 1252
Line 31... Line 31...
31
#include <arch/mm/page.h>
31
#include <arch/mm/page.h>
32
#include <arch/types.h>
32
#include <arch/types.h>
33
#include <arch/interrupt.h>
33
#include <arch/interrupt.h>
34
#include <arch/asm.h>
34
#include <arch/asm.h>
35
#include <interrupt.h>
35
#include <interrupt.h>
-
 
36
#include <mm/as.h>
36
 
37
 
37
#include <config.h>
38
#include <config.h>
38
 
39
 
39
#include <memstr.h>
40
#include <memstr.h>
40
#include <mm/slab.h>
41
#include <mm/slab.h>
Line 198... Line 199...
198
         * the heap hasn't been initialized so far.
199
         * the heap hasn't been initialized so far.
199
         */
200
         */
200
        tss_p = &tss;
201
        tss_p = &tss;
201
    }
202
    }
202
    else {
203
    else {
-
 
204
        /* We are going to use malloc, which may return
-
 
205
         * non boot-mapped pointer, initialize the CR3 register
-
 
206
         * ahead of page_init */
-
 
207
        write_cr3((__address) AS_KERNEL->page_table);
-
 
208
 
203
        tss_p = (struct tss *) malloc(sizeof(tss_t), FRAME_ATOMIC);
209
        tss_p = (struct tss *) malloc(sizeof(tss_t), FRAME_ATOMIC);
204
        if (!tss_p)
210
        if (!tss_p)
205
            panic("could not allocate TSS\n");
211
            panic("could not allocate TSS\n");
206
    }
212
    }
207
 
213