diff options
Diffstat (limited to 'arch/riscv/kernel/vmem.c')
| -rw-r--r-- | arch/riscv/kernel/vmem.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/arch/riscv/kernel/vmem.c b/arch/riscv/kernel/vmem.c index e3680b3..45f6336 100644 --- a/arch/riscv/kernel/vmem.c +++ b/arch/riscv/kernel/vmem.c @@ -120,3 +120,13 @@ void unmap_vmem(struct vm_branch_t *branch, vm_t vaddr) if(pte) *pte = 0; } + +void flush_tlb(id_t cpu_id) +{ + __asm__("sfence.vma %0\n" :: "rk" (cpu_id) : "memory"); +} + +void flush_tlb_all() +{ + __asm__("sfence.vma\n" ::: "memory"); +} |
