1 #include <sys/mm/tlb.h>
2 #include <lunaix/process.h>
5 tlb_flush_mm(struct proc_mm* mm, ptr_t addr)
7 __tlb_flush_asid(procvm_asid(mm), addr);
11 tlb_flush_mm_range(struct proc_mm* mm, ptr_t addr, unsigned int npages)
13 tlb_flush_asid_range(procvm_asid(mm), addr, npages);
18 tlb_flush_vmr(struct mm_region* vmr, ptr_t va)
20 __tlb_flush_asid(procvm_asid(vmr->proc_vms), va);
24 tlb_flush_vmr_all(struct mm_region* vmr)
26 tlb_flush_asid_range(procvm_asid(vmr->proc_vms),
27 vmr->start, leaf_count(vmr->end - vmr->start));
31 tlb_flush_vmr_range(struct mm_region* vmr, ptr_t addr, unsigned int npages)
33 tlb_flush_asid_range(procvm_asid(vmr->proc_vms), addr, npages);