Lines 2797-2803
pmap_update_pde_invalidate(pmap_t pmap, vm_offset_t va, pd_entry_t newpde)
Link Here
|
2797 |
|
2797 |
|
2798 |
if ((newpde & PG_PS) == 0) |
2798 |
if ((newpde & PG_PS) == 0) |
2799 |
/* Demotion: flush a specific 2MB page mapping. */ |
2799 |
/* Demotion: flush a specific 2MB page mapping. */ |
2800 |
invlpg(va); |
2800 |
invlpgXX(va); |
2801 |
else if ((newpde & PG_G) == 0) |
2801 |
else if ((newpde & PG_G) == 0) |
2802 |
/* |
2802 |
/* |
2803 |
* Promotion: flush every 4KB page mapping from the TLB |
2803 |
* Promotion: flush every 4KB page mapping from the TLB |
Lines 3136-3142
pmap_invalidate_page_curcpu_cb(pmap_t pmap, vm_offset_t va,
Link Here
|
3136 |
vm_offset_t addr2 __unused) |
3136 |
vm_offset_t addr2 __unused) |
3137 |
{ |
3137 |
{ |
3138 |
if (pmap == kernel_pmap) { |
3138 |
if (pmap == kernel_pmap) { |
3139 |
invlpg(va); |
3139 |
invlpgXX(va); |
3140 |
} else if (pmap == PCPU_GET(curpmap)) { |
3140 |
} else if (pmap == PCPU_GET(curpmap)) { |
3141 |
invlpg(va); |
3141 |
invlpg(va); |
3142 |
pmap_invalidate_page_cb(pmap, va); |
3142 |
pmap_invalidate_page_cb(pmap, va); |
Lines 3228-3234
pmap_invalidate_range_curcpu_cb(pmap_t pmap, vm_offset_t sva, vm_offset_t eva)
Link Here
|
3228 |
|
3228 |
|
3229 |
if (pmap == kernel_pmap) { |
3229 |
if (pmap == kernel_pmap) { |
3230 |
for (addr = sva; addr < eva; addr += PAGE_SIZE) |
3230 |
for (addr = sva; addr < eva; addr += PAGE_SIZE) |
3231 |
invlpg(addr); |
3231 |
invlpgXX(addr); |
3232 |
} else if (pmap == PCPU_GET(curpmap)) { |
3232 |
} else if (pmap == PCPU_GET(curpmap)) { |
3233 |
for (addr = sva; addr < eva; addr += PAGE_SIZE) |
3233 |
for (addr = sva; addr < eva; addr += PAGE_SIZE) |
3234 |
invlpg(addr); |
3234 |
invlpg(addr); |
Lines 7651-7657
pmap_kenter_temporary(vm_paddr_t pa, int i)
Link Here
|
7651 |
|
7651 |
|
7652 |
va = (vm_offset_t)crashdumpmap + (i * PAGE_SIZE); |
7652 |
va = (vm_offset_t)crashdumpmap + (i * PAGE_SIZE); |
7653 |
pmap_kenter(va, pa); |
7653 |
pmap_kenter(va, pa); |
7654 |
invlpg(va); |
7654 |
invlpgXX(va); |
7655 |
return ((void *)crashdumpmap); |
7655 |
return ((void *)crashdumpmap); |
7656 |
} |
7656 |
} |
7657 |
|
7657 |
|
Lines 10354-10360
pmap_map_io_transient(vm_page_t page[], vm_offset_t vaddr[], int count,
Link Here
|
10354 |
page[i]->md.pat_mode, 0); |
10354 |
page[i]->md.pat_mode, 0); |
10355 |
pte_store(pte, paddr | X86_PG_RW | X86_PG_V | |
10355 |
pte_store(pte, paddr | X86_PG_RW | X86_PG_V | |
10356 |
cache_bits); |
10356 |
cache_bits); |
10357 |
invlpg(vaddr[i]); |
10357 |
invlpgXX(vaddr[i]); |
10358 |
} |
10358 |
} |
10359 |
} |
10359 |
} |
10360 |
} |
10360 |
} |
Lines 10403-10409
pmap_quick_remove_page(vm_offset_t addr)
Link Here
|
10403 |
if (addr != qframe) |
10403 |
if (addr != qframe) |
10404 |
return; |
10404 |
return; |
10405 |
pte_store(vtopte(qframe), 0); |
10405 |
pte_store(vtopte(qframe), 0); |
10406 |
invlpg(qframe); |
10406 |
invlpgXX(qframe); |
10407 |
mtx_unlock_spin(&qframe_mtx); |
10407 |
mtx_unlock_spin(&qframe_mtx); |
10408 |
} |
10408 |
} |
10409 |
|
10409 |
|