diff options
Diffstat (limited to 'src/cpu')
-rw-r--r-- | src/cpu/base.cc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/cpu/base.cc b/src/cpu/base.cc index 905785631..c8c8ac571 100644 --- a/src/cpu/base.cc +++ b/src/cpu/base.cc @@ -432,6 +432,8 @@ BaseCPU::takeOverFrom(BaseCPU *oldCPU) old_dtb_port->unbind(); new_dtb_port->bind(slavePort); } + newTC->getITBPtr()->takeOverFrom(oldTC->getITBPtr()); + newTC->getDTBPtr()->takeOverFrom(oldTC->getDTBPtr()); // Checker whether or not we have to transfer CheckerCPU // objects over in the switch @@ -447,6 +449,9 @@ BaseCPU::takeOverFrom(BaseCPU *oldCPU) BaseMasterPort *new_checker_dtb_port = newChecker->getDTBPtr()->getMasterPort(); + newChecker->getITBPtr()->takeOverFrom(oldChecker->getITBPtr()); + newChecker->getDTBPtr()->takeOverFrom(oldChecker->getDTBPtr()); + // Move over any table walker ports if they exist for checker if (new_checker_itb_port) { assert(!new_checker_itb_port->isConnected()); |