Changeset 346b12a2 in mainline for kernel/generic
- Timestamp:
- 2016-08-31T17:51:04Z (9 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- fb63c06
- Parents:
- 38dc82d
- Location:
- kernel/generic
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/include/mm/page.h
r38dc82d r346b12a2 49 49 void (* mapping_remove)(as_t *, uintptr_t); 50 50 bool (* mapping_find)(as_t *, uintptr_t, bool, pte_t *); 51 void (* mapping_update)(as_t *, uintptr_t, bool, pte_t *); 51 52 void (* mapping_make_global)(uintptr_t, size_t); 52 53 } page_mapping_operations_t; … … 61 62 extern void page_mapping_remove(as_t *, uintptr_t); 62 63 extern bool page_mapping_find(as_t *, uintptr_t, bool, pte_t *); 64 extern void page_mapping_update(as_t *, uintptr_t, bool, pte_t *); 63 65 extern void page_mapping_make_global(uintptr_t, size_t); 64 66 extern pte_t *page_table_create(unsigned int); -
kernel/generic/src/mm/page.c
r38dc82d r346b12a2 156 156 } 157 157 158 /** Update mapping for virtual page. 159 * 160 * Use only to update accessed and modified/dirty bits. 161 * 162 * @param as Address space to which page belongs. 163 * @param page Virtual page. 164 * @param nolock True if the page tables need not be locked. 165 * @param pte New PTE. 166 */ 167 NO_TRACE void page_mapping_update(as_t *as, uintptr_t page, bool nolock, 168 pte_t *pte) 169 { 170 ASSERT(nolock || page_table_locked(as)); 171 172 ASSERT(page_mapping_operations); 173 ASSERT(page_mapping_operations->mapping_find); 174 175 page_mapping_operations->mapping_update(as, 176 ALIGN_DOWN(page, PAGE_SIZE), nolock, pte); 177 } 178 158 179 /** Make the mapping shared by all page tables (not address spaces). 159 180 *
Note:
See TracChangeset
for help on using the changeset viewer.