summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCurtis Dunham <Curtis.Dunham@arm.com>2014-02-05 16:17:41 -0600
committerCurtis Dunham <Curtis.Dunham@arm.com>2014-02-05 16:17:41 -0600
commit04d1f61ae8f2a40cfe61aaf0c0271b212da0c314 (patch)
tree4162eb5ec4f6cbd82ee6a52c614665652d8a78a2
parent4a3abf30200d89965c1b5138179e5e3c1560bb84 (diff)
downloadgem5-04d1f61ae8f2a40cfe61aaf0c0271b212da0c314.tar.xz
sim: bump checkpoint version for multiple event queues
This patch adds a fix for older checkpoints before support for multiple event queues were added in changeset 2cce74fe359e. The change in checkpoint version should really hav ebeen part of the aforementioned changeset.
-rw-r--r--src/sim/serialize.hh2
-rwxr-xr-xutil/cpt_upgrader.py7
2 files changed, 8 insertions, 1 deletions
diff --git a/src/sim/serialize.hh b/src/sim/serialize.hh
index 05cb7c50f..2bf85bdf5 100644
--- a/src/sim/serialize.hh
+++ b/src/sim/serialize.hh
@@ -58,7 +58,7 @@ class EventQueue;
* SimObject shouldn't cause the version number to increase, only changes to
* existing objects such as serializing/unserializing more state, changing sizes
* of serialized arrays, etc. */
-static const uint64_t gem5CheckpointVersion = 0x000000000000000b;
+static const uint64_t gem5CheckpointVersion = 0x000000000000000c;
template <class T>
void paramOut(std::ostream &os, const std::string &name, const T &param);
diff --git a/util/cpt_upgrader.py b/util/cpt_upgrader.py
index 914de02b4..df3604754 100755
--- a/util/cpt_upgrader.py
+++ b/util/cpt_upgrader.py
@@ -569,6 +569,12 @@ def from_A(cpt):
else:
continue
+# The change between versions C and D is the addition of support for multiple
+# event queues, so for old checkpoints we must specify that there's only one.
+def from_B(cpt):
+ cpt.set('Globals', 'numMainEventQueues', '1')
+
+
migrations = []
migrations.append(from_0)
migrations.append(from_1)
@@ -581,6 +587,7 @@ migrations.append(from_7)
migrations.append(from_8)
migrations.append(from_9)
migrations.append(from_A)
+migrations.append(from_B)
verbose_print = False