Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/amd64/src/mm/page.c

    r44a7ee5 ra35b458  
    5757        unsigned int identity_flags =
    5858            PAGE_GLOBAL | PAGE_CACHEABLE | PAGE_EXEC | PAGE_WRITE | PAGE_READ;
    59                
     59
    6060        page_mapping_operations = &pt_mapping_operations;
    61                
     61
    6262        page_table_lock(AS_KERNEL, true);
    63                
     63
    6464        /*
    6565         * PA2KA(identity) mapping for all low-memory frames.
     
    6868            cur += FRAME_SIZE)
    6969                page_mapping_insert(AS_KERNEL, PA2KA(cur), cur, identity_flags);
    70                
     70
    7171        page_table_unlock(AS_KERNEL, true);
    72                
     72
    7373        exc_register(VECTOR_PF, "page_fault", true, (iroutine_t) page_fault);
    7474        write_cr3((uintptr_t) AS_KERNEL->genarch.page_table);
     
    7878{
    7979        uintptr_t badvaddr = read_cr2();
    80        
     80
    8181        if (istate->error_word & PFERR_CODE_RSVD)
    8282                panic("Reserved bit set in page table entry.");
    83        
     83
    8484        pf_access_t access;
    85        
     85
    8686        if (istate->error_word & PFERR_CODE_RW)
    8787                access = PF_ACCESS_WRITE;
     
    9090        else
    9191                access = PF_ACCESS_READ;
    92        
     92
    9393        (void) as_page_fault(badvaddr, access, istate);
    9494}
Note: See TracChangeset for help on using the changeset viewer.