Changes in kernel/genarch/src/mm/page_pt.c [de73242:e943ecf] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/genarch/src/mm/page_pt.c
rde73242 re943ecf 89 89 PAGE_NOT_PRESENT | PAGE_USER | PAGE_EXEC | PAGE_CACHEABLE | 90 90 PAGE_WRITE); 91 /*92 * Make sure that a concurrent hardware page table walk or93 * pt_mapping_find() will see the new PTL1 only after it is94 * fully initialized.95 */96 91 write_barrier(); 97 92 SET_PTL1_PRESENT(ptl0, PTL0_INDEX(page)); … … 108 103 PAGE_NOT_PRESENT | PAGE_USER | PAGE_EXEC | PAGE_CACHEABLE | 109 104 PAGE_WRITE); 110 /*111 * Make the new PTL2 visible only after it is fully initialized.112 */113 105 write_barrier(); 114 106 SET_PTL2_PRESENT(ptl1, PTL1_INDEX(page)); … … 125 117 PAGE_NOT_PRESENT | PAGE_USER | PAGE_EXEC | PAGE_CACHEABLE | 126 118 PAGE_WRITE); 127 /*128 * Make the new PTL3 visible only after it is fully initialized.129 */130 119 write_barrier(); 131 120 SET_PTL3_PRESENT(ptl2, PTL2_INDEX(page)); … … 136 125 SET_FRAME_ADDRESS(ptl3, PTL3_INDEX(page), frame); 137 126 SET_FRAME_FLAGS(ptl3, PTL3_INDEX(page), flags | PAGE_NOT_PRESENT); 138 /*139 * Make the new mapping visible only after it is fully initialized.140 */141 127 write_barrier(); 142 128 SET_FRAME_PRESENT(ptl3, PTL3_INDEX(page)); … … 310 296 311 297 #if (PTL1_ENTRIES != 0) 312 /*313 * Always read ptl2 only after we are sure it is present.314 */315 298 read_barrier(); 316 299 #endif … … 321 304 322 305 #if (PTL2_ENTRIES != 0) 323 /*324 * Always read ptl3 only after we are sure it is present.325 */326 306 read_barrier(); 327 307 #endif
Note:
See TracChangeset
for help on using the changeset viewer.