Hi,
It probably does since the bug is in the configuration scripts which are
unaffected by the changeset. I don't use them myself and I don't really
know what triggered the bug, so I suggest that someone who is affected
by the bug solves it in the right place (i.e., fixes their scripts).
//Andreas
On 06/20/2013 08:51 PM, Rio Xiangyu Dong wrote:
Hi Andreas S,
Does this reversion mean we re-introduce the "early termination" bug?
Best,
Rio Xiangyu
-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf
Of Andreas Sandberg
Sent: Tuesday, June 11, 2013 12:33 AM
To: [email protected]
Subject: [gem5-dev] changeset in gem5: sim: Revert [34e3295b0e39] (sim: Fix
early te...
changeset 4e1f22617336 in /z/repo/gem5
details: http://repo.gem5.org/gem5?cmd=changeset;node=4e1f22617336
description:
sim: Revert [34e3295b0e39] (sim: Fix early termination in mult...)
HG changset 34e3295b0e39 introduced a check in the main simulation
loop that discards exit events that happen at the same tick as
another
exit event. This was supposed to fix a problem where a simulation
script got confused by multiple exit events. This obviously breaks
the
simulator since it can hide important simulation events, such as a
simulation failure, that happen at the same time as a non-fatal
simulation event.
diffstat:
src/sim/simulate.cc | 14 --------------
1 files changed, 0 insertions(+), 14 deletions(-)
diffs (31 lines):
diff -r cffb82b745cf -r 4e1f22617336 src/sim/simulate.cc
--- a/src/sim/simulate.cc Tue Jun 11 09:18:25 2013 +0200
+++ b/src/sim/simulate.cc Tue Jun 11 09:24:10 2013 +0200
@@ -44,10 +44,6 @@
* terminate the loop. Exported to Python via SWIG.
* @return The SimLoopExitEvent that caused the loop to exit.
*/
-
-// record the clock cycle for last exit event -Tick lastExitTick = 0;
-
SimLoopExitEvent *
simulate(Tick num_cycles)
{
@@ -71,16 +67,6 @@
Event *exit_event = mainEventQueue.serviceOne();
if (exit_event != NULL) {
- /*
- * if there are multiple exit events in the same cycle, drain
the
- * following exit events since gem5 only allows one * exit
event in
- * a cycle
- */
- if (lastExitTick == curTick())
- continue;
- else
- lastExitTick = curTick();
-
// hit some kind of exit event; return to Python
// event must be subclass of SimLoopExitEvent...
SimLoopExitEvent *se_event;
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev