Changes in kernel/arch/abs32le/include/mm/page.h [7a0359b:d99c1d2] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/abs32le/include/mm/page.h
r7a0359b rd99c1d2 37 37 38 38 #include <arch/mm/frame.h> 39 #include <trace.h>40 39 41 40 #define PAGE_WIDTH FRAME_WIDTH … … 140 139 } __attribute__((packed)) pte_t; 141 140 142 NO_TRACE static inline unsigned int get_pt_flags(pte_t *pt, size_t i) 143 REQUIRES_ARRAY_MUTABLE(pt, PTL0_ENTRIES_ARCH) 141 static inline unsigned int get_pt_flags(pte_t *pt, size_t i) 144 142 { 145 143 pte_t *p = &pt[i]; 146 144 147 return ( 148 ((unsigned int) (!p->page_cache_disable) << PAGE_CACHEABLE_SHIFT) | 149 ((unsigned int) (!p->present) << PAGE_PRESENT_SHIFT) | 150 ((unsigned int) p->uaccessible << PAGE_USER_SHIFT) | 151 (1 << PAGE_READ_SHIFT) | 152 ((unsigned int) p->writeable << PAGE_WRITE_SHIFT) | 153 (1 << PAGE_EXEC_SHIFT) | 154 ((unsigned int) p->global << PAGE_GLOBAL_SHIFT) 155 ); 145 return ((!p->page_cache_disable) << PAGE_CACHEABLE_SHIFT | 146 (!p->present) << PAGE_PRESENT_SHIFT | 147 p->uaccessible << PAGE_USER_SHIFT | 148 1 << PAGE_READ_SHIFT | 149 p->writeable << PAGE_WRITE_SHIFT | 150 1 << PAGE_EXEC_SHIFT | 151 p->global << PAGE_GLOBAL_SHIFT); 156 152 } 157 153 158 NO_TRACE static inline void set_pt_flags(pte_t *pt, size_t i, int flags) 159 WRITES(ARRAY_RANGE(pt, PTL0_ENTRIES_ARCH)) 160 REQUIRES_ARRAY_MUTABLE(pt, PTL0_ENTRIES_ARCH) 154 static inline void set_pt_flags(pte_t *pt, size_t i, int flags) 161 155 { 162 156 pte_t *p = &pt[i]; … … 176 170 177 171 extern void page_arch_init(void); 178 extern void page_fault( unsignedint, istate_t *);172 extern void page_fault(int, istate_t *); 179 173 180 174 #endif /* KERNEL */
Note:
See TracChangeset
for help on using the changeset viewer.