diff options
author | Erik Hallnor <ehallnor@umich.edu> | 2004-10-02 12:34:54 -0400 |
---|---|---|
committer | Erik Hallnor <ehallnor@umich.edu> | 2004-10-02 12:34:54 -0400 |
commit | 810dcca1d105aade81156c8adf0a91b641d35590 (patch) | |
tree | 3ce4a210be34c805372a137d47be19943b071449 | |
parent | 72276af49f1113649e97074b5b492ad7b5e25837 (diff) | |
download | gem5-810dcca1d105aade81156c8adf0a91b641d35590.tar.xz |
Fixes to kernel to get checkpoints to work again.
kern/kernel_stats.cc:
Serialize idleProcess.
kern/system_events.cc:
Remove the idle start event once it runs.
--HG--
extra : convert_revision : 05ac574558a88b86ccfce963e4ca9b037a1a8509
-rw-r--r-- | kern/kernel_stats.cc | 2 | ||||
-rw-r--r-- | kern/system_events.cc | 1 |
2 files changed, 3 insertions, 0 deletions
diff --git a/kern/kernel_stats.cc b/kern/kernel_stats.cc index c08ee08f7..c0443aa90 100644 --- a/kern/kernel_stats.cc +++ b/kern/kernel_stats.cc @@ -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 §ion) { int exemode; UNSERIALIZE_SCALAR(exemode); + UNSERIALIZE_SCALAR(idleProcess); themode = (cpu_mode)exemode; } diff --git a/kern/system_events.cc b/kern/system_events.cc index b6526d193..9acf2f65a 100644 --- a/kern/system_events.cc +++ b/kern/system_events.cc @@ -70,6 +70,7 @@ void IdleStartEvent::process(ExecContext *xc) { xc->kernelStats->setIdleProcess(xc->regs.ipr[AlphaISA::IPR_PALtemp23]); + remove(); } void |