diff options
Diffstat (limited to 'src/mem')
-rw-r--r-- | src/mem/page_table.cc | 10 | ||||
-rw-r--r-- | src/mem/physical.cc | 8 |
2 files changed, 2 insertions, 16 deletions
diff --git a/src/mem/page_table.cc b/src/mem/page_table.cc index 88cfdfeb7..bcaf5582a 100644 --- a/src/mem/page_table.cc +++ b/src/mem/page_table.cc @@ -223,15 +223,5 @@ PageTable::unserialize(Checkpoint *cp, const std::string §ion) pTable[vaddr] = *entry; ++i; } - - process->M5_pid = pTable[vaddr].asn; - -#if THE_ISA == ALPHA_ISA - // The IPR_DTB_ASN misc reg must be set in Alpha for the tlb to work - // correctly - int id = process->contextIds[0]; - ThreadContext *tc = process->system->getThreadContext(id); - tc->setMiscRegNoEffect(IPR_DTB_ASN, process->M5_pid << 57); -#endif } diff --git a/src/mem/physical.cc b/src/mem/physical.cc index 121a6e447..081fbb4cb 100644 --- a/src/mem/physical.cc +++ b/src/mem/physical.cc @@ -540,12 +540,8 @@ PhysicalMemory::unserialize(Checkpoint *cp, const string §ion) /* Only copy bytes that are non-zero, so we don't give the VM system hell */ while (curSize < params()->range.size()) { bytesRead = gzread(compressedMem, tempPage, chunkSize); - if (bytesRead != chunkSize && - bytesRead != params()->range.size() - curSize) - fatal("Read failed on physical memory checkpoint file '%s'" - " got %d bytes, expected %d or %d bytes\n", - filename, bytesRead, chunkSize, - params()->range.size() - curSize); + if (bytesRead == 0) + break; assert(bytesRead % sizeof(long) == 0); |