ruby: Fix CacheMemory allocate leak
authorJoel Hestness <jthestness@gmail.com>
Tue, 29 Sep 2015 14:28:26 +0000 (09:28 -0500)
committerJoel Hestness <jthestness@gmail.com>
Tue, 29 Sep 2015 14:28:26 +0000 (09:28 -0500)
commitc05d268cfabbe26d032d73abcea6dc921c49e549
tree9a868b284e3e7e1a45dfdb6d31338e0139fa048e
parent0ecaab4ea8039f707a95f5e3efcc68591dbcd407
ruby: Fix CacheMemory allocate leak

If a cache entry permission was previously set to NotPresent, but the entry was
not deleted, a following cache allocation can cause the entry to be leaked by
setting the entry pointer to a newly allocated entry. To eliminate this
possibility, check if the new entry is different from the old one, and if so,
delete the old one.
src/mem/ruby/structures/CacheMemory.cc