Ignore:
Timestamp:
2018-03-21T19:32:48Z (6 years ago)
Author:
Jiří Zárevúcky <zarevucky.jiri@…>
Children:
1c7a170
Parents:
973be387
Message:

Change the way page flags work. TODO description

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/abs32le/include/arch/mm/page.h

    r973be387 r94d211e  
    9292        get_pt_flags((pte_t *) (ptl0), (size_t) (i))
    9393#define GET_PTL2_FLAGS_ARCH(ptl1, i) \
    94         PAGE_PRESENT
     94        PAGE_NEXT_LEVEL_PT
    9595#define GET_PTL3_FLAGS_ARCH(ptl2, i) \
    96         PAGE_PRESENT
     96        PAGE_NEXT_LEVEL_PT
    9797#define GET_FRAME_FLAGS_ARCH(ptl3, i) \
    9898        get_pt_flags((pte_t *) (ptl3), (size_t) (i))
     
    121121#define PTE_GET_FRAME_ARCH(p) \
    122122        ((p)->frame_address << FRAME_WIDTH)
     123#define PTE_READABLE_ARCH(p) \
     124        1
    123125#define PTE_WRITABLE_ARCH(p) \
    124126        ((p)->writeable != 0)
    125 #define PTE_EXECUTABLE_ARCH(p)  1
     127#define PTE_EXECUTABLE_ARCH(p) \
     128        1
    126129
    127130#include <mm/mm.h>
     
    154157        return (
    155158            ((unsigned int) (!p->page_cache_disable) << PAGE_CACHEABLE_SHIFT) |
    156             ((unsigned int) (!p->present) << PAGE_PRESENT_SHIFT) |
     159            ((unsigned int) (!p->present) << PAGE_NOT_PRESENT_SHIFT) |
    157160            ((unsigned int) p->uaccessible << PAGE_USER_SHIFT) |
    158161            (1 << PAGE_READ_SHIFT) |
     
    172175        p->present = !(flags & PAGE_NOT_PRESENT);
    173176        p->uaccessible = (flags & PAGE_USER) != 0;
    174         p->writeable = (flags & PAGE_WRITE) != 0;
     177        p->writeable = (flags & _PAGE_WRITE) != 0;
    175178        p->global = (flags & PAGE_GLOBAL) != 0;
    176179
Note: See TracChangeset for help on using the changeset viewer.