diff -r bbceb6297329 -r ce879248b675 src/arch/x86/tlb.cc --- a/src/arch/x86/tlb.cc Sun Apr 15 12:35:49 2012 -0700 +++ b/src/arch/x86/tlb.cc Tue Apr 17 05:35:34 2012 -0700 @@ -106,6 +106,12 @@ newEntry = freeList.front(); freeList.pop_front(); + TlbEntry *oldEntry; + while ((oldEntry = trie.remove(vpn)) != NULL) { + freeList.push_back(oldEntry); + oldEntry->trieHandle = NULL; + } + *newEntry = entry; newEntry->lruSeq = nextSeq(); newEntry->vaddr = vpn;