summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/python/m5/event.py3
-rw-r--r--src/sim/eventq.cc6
2 files changed, 5 insertions, 4 deletions
diff --git a/src/python/m5/event.py b/src/python/m5/event.py
index 5d50448e7..2b43e578e 100644
--- a/src/python/m5/event.py
+++ b/src/python/m5/event.py
@@ -26,6 +26,7 @@
#
# Authors: Nathan Binkert
+import m5
import internal.event
from internal.event import PythonEvent, SimLoopExitEvent as SimExit
@@ -41,7 +42,7 @@ class Event(PythonEvent):
def __init__(self, priority=None):
if priority is None:
priority = internal.event.Event.Default_Pri
- super(PythonEvent, self).__init__(self, priority)
+ super(Event, self).__init__(self, priority)
class ProgressEvent(Event):
def __init__(self, eventq, period):
diff --git a/src/sim/eventq.cc b/src/sim/eventq.cc
index f4fa0ac8b..dfff760a0 100644
--- a/src/sim/eventq.cc
+++ b/src/sim/eventq.cc
@@ -209,7 +209,8 @@ Event::serialize(std::ostream &os)
void
Event::unserialize(Checkpoint *cp, const string &section)
{
- assert(!scheduled() && "we used to deschedule these events");
+ if (scheduled())
+ mainEventQueue.deschedule(this);
UNSERIALIZE_SCALAR(_when);
UNSERIALIZE_SCALAR(_priority);
@@ -223,8 +224,7 @@ Event::unserialize(Checkpoint *cp, const string &section)
if (wasScheduled) {
DPRINTF(Config, "rescheduling at %d\n", _when);
- panic("need to figure out how to unserialize scheduled events");
- //schedule(_when);
+ mainEventQueue.schedule(this, _when);
}
}