systemc: When resetting a process, clear suspended ready.
authorGabe Black <gabeblack@google.com>
Sat, 6 Oct 2018 11:31:04 +0000 (04:31 -0700)
committerGabe Black <gabeblack@google.com>
Tue, 16 Oct 2018 01:04:24 +0000 (01:04 +0000)
When resetting a process which is ready pending coming out of suspend,
clear that state since the process is about to run in service of the
reset.

Change-Id: Iade3ec4b2f3eadd372cce456dca66850d37ed5fd
Reviewed-on: https://gem5-review.googlesource.com/c/13316
Reviewed-by: Gabe Black <gabeblack@google.com>
Maintainer: Gabe Black <gabeblack@google.com>

src/systemc/core/process.cc

index 7d21960bd4cec5036aa16451a5c4f980c00eb5b4..9f47bf94bfa91b318b68683188fd9ada1904e043 100644 (file)
@@ -183,6 +183,8 @@ Process::reset(bool inc_kids)
     if (_isUnwinding)
         return;
 
+    // Clear suspended ready since we're about to run regardless.
+    _suspendedReady = false;
 
     _resetEvent.notify();