Fixes to kernel to get checkpoints to work again.
authorErik Hallnor <ehallnor@umich.edu>
Sat, 2 Oct 2004 16:34:54 +0000 (12:34 -0400)
committerErik Hallnor <ehallnor@umich.edu>
Sat, 2 Oct 2004 16:34:54 +0000 (12:34 -0400)
kern/kernel_stats.cc:
    Serialize idleProcess.
kern/system_events.cc:
    Remove the idle start event once it runs.

--HG--
extra : convert_revision : 05ac574558a88b86ccfce963e4ca9b037a1a8509

kern/kernel_stats.cc
kern/system_events.cc

index c08ee08f787f080180dde94800e65a51a78e87af..c0443aa90987b68af7a01f360cd2451382c50d80 100644 (file)
@@ -294,6 +294,7 @@ Statistics::serialize(ostream &os)
 {
     int exemode = themode;
     SERIALIZE_SCALAR(exemode);
+    SERIALIZE_SCALAR(idleProcess);
 }
 
 void
@@ -301,6 +302,7 @@ Statistics::unserialize(Checkpoint *cp, const string &section)
 {
     int exemode;
     UNSERIALIZE_SCALAR(exemode);
+    UNSERIALIZE_SCALAR(idleProcess);
     themode = (cpu_mode)exemode;
 }
 
index b6526d1939ba3399055a845e78d528ed58ff27b7..9acf2f65a38fd27ca35486233f8e4f611691ee6e 100644 (file)
@@ -70,6 +70,7 @@ void
 IdleStartEvent::process(ExecContext *xc)
 {
     xc->kernelStats->setIdleProcess(xc->regs.ipr[AlphaISA::IPR_PALtemp23]);
+    remove();
 }
 
 void