Changes in kernel/arch/sparc64/src/mm/sun4v/tlb.c [9aed144:0ff03f3] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/sparc64/src/mm/sun4v/tlb.c
r9aed144 r0ff03f3 218 218 pte_t *t; 219 219 220 page_table_lock(AS, true); 220 221 t = page_mapping_find(AS, va, true); 221 222 … … 230 231 itsb_pte_copy(t); 231 232 #endif 233 page_table_unlock(AS, true); 232 234 } else { 233 235 /* … … 235 237 * handler. 236 238 */ 239 page_table_unlock(AS, true); 237 240 if (as_page_fault(va, PF_ACCESS_EXEC, istate) == AS_PF_FAULT) { 238 241 do_fast_instruction_access_mmu_miss_fault(istate, … … 271 274 } 272 275 276 page_table_lock(AS, true); 273 277 t = page_mapping_find(AS, va, true); 274 278 if (t) { … … 282 286 dtsb_pte_copy(t, true); 283 287 #endif 288 page_table_unlock(AS, true); 284 289 } else { 285 290 /* … … 287 292 * handler. 288 293 */ 294 page_table_unlock(AS, true); 289 295 if (as_page_fault(va, PF_ACCESS_READ, istate) == AS_PF_FAULT) { 290 296 do_fast_data_access_mmu_miss_fault(istate, page_and_ctx, … … 310 316 uint16_t ctx = DMISS_CONTEXT(page_and_ctx); 311 317 318 page_table_lock(AS, true); 312 319 t = page_mapping_find(AS, va, true); 313 320 if (t && PTE_WRITABLE(t)) { … … 324 331 dtsb_pte_copy(t, false); 325 332 #endif 333 page_table_unlock(AS, true); 326 334 } else { 327 335 /* … … 329 337 * handler. 330 338 */ 339 page_table_unlock(AS, true); 331 340 if (as_page_fault(va, PF_ACCESS_WRITE, istate) == AS_PF_FAULT) { 332 341 do_fast_data_access_protection_fault(istate, page_and_ctx,
Note:
See TracChangeset
for help on using the changeset viewer.