Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/ia32/src/pm.c

    rff586e06 rf4946de  
    7575        /* VESA Init descriptor */
    7676#ifdef CONFIG_FB
    77         { 0xffff, 0, VESA_INIT_SEGMENT >> 12, AR_PRESENT | AR_CODE | DPL_KERNEL, 0xf, 0, 0, 0, 0, 0 }
    78 #endif
     77        { 0xffff, 0, VESA_INIT_SEGMENT>>12, AR_PRESENT | AR_CODE | DPL_KERNEL, 0xf, 0, 0, 0, 0, 0 }
     78#endif 
    7979};
    8080
     
    8686
    8787/* gdtr is changed by kmp before next CPU is initialized */
    88 ptr_16_32_t gdtr = {
    89         .limit = sizeof(gdt),
    90         .base = (uintptr_t) gdt
    91 };
     88ptr_16_32_t bootstrap_gdtr = { .limit = sizeof(gdt), .base = KA2PA((uintptr_t) gdt) };
     89ptr_16_32_t gdtr = { .limit = sizeof(gdt), .base = (uintptr_t) gdt };
    9290
    9391void gdt_setbase(descriptor_t *d, uintptr_t base)
     
    130128
    131129                d->unused = 0;
    132                 d->selector = GDT_SELECTOR(KTEXT_DES);
     130                d->selector = gdtselector(KTEXT_DES);
    133131
    134132                if (i == VECTOR_SYSCALL) {
     
    285283         * to its own TSS. We just need to load the TR register.
    286284         */
    287         tr_load(GDT_SELECTOR(TSS_DES));
     285        tr_load(gdtselector(TSS_DES));
    288286       
    289287        clean_IOPL_NT_flags();    /* Disable I/O on nonprivileged levels and clear NT flag. */
Note: See TracChangeset for help on using the changeset viewer.