#include "arch/memory/mmu.hpp" #include "kapi/memory.hpp" #include "arch/cpu/registers.hpp" namespace arch::memory { auto tlb_flush(kapi::memory::linear_address address) -> void { asm volatile("invlpg (%[input])" : /* no output from call */ : [input] "r"(address) : "memory"); } auto tlb_flush_all() -> void { auto paging_root = cpu::cr3::read(); cpu::cr3::write(paging_root); } } // namespace arch::memory