diff options
Diffstat (limited to 'src/arch/x86/tlb.cc')
-rw-r--r-- | src/arch/x86/tlb.cc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/arch/x86/tlb.cc b/src/arch/x86/tlb.cc index 208dec177..ae8fcf9be 100644 --- a/src/arch/x86/tlb.cc +++ b/src/arch/x86/tlb.cc @@ -171,6 +171,11 @@ TLB::invalidateNonGlobal() void TLB::demapPage(Addr va, uint64_t asn) { + EntryList::iterator entry = lookupIt(va, false); + if (entry != entryList.end()) { + freeList.push_back(*entry); + entryList.erase(entry); + } } template<class TlbFault> |