cpu: Prevent suspended TimingSimple CPUs from fetching next instructions
authorTuan Ta <qtt2@cornell.edu>
Mon, 2 Apr 2018 19:18:57 +0000 (15:18 -0400)
committerTuan Ta <qtt2@cornell.edu>
Thu, 14 Jun 2018 22:42:16 +0000 (22:42 +0000)
commit642a563cf08171f1a89ae67229e93187cae28bd8
tree980800270fd015745c9ba8914a88e4ef2d96ad70
parent7341f14f147337810325b19bac20db095b162911
cpu: Prevent suspended TimingSimple CPUs from fetching next instructions

In TimingSimpleCPU model, when a CPU is suspended by a syscall (e.g.,
futex(FUTEX_WAIT)), the CPU waits for another CPU to wake it up
(e.g., FUTEX_WAKE operation). While staying Idle, the suspended CPU
should not try to fetch next instructions after the syscall.

This patch added a status check before a CPU schedule a fetch event
after a fault is handled.

Change-Id: I0cc953135686c9b35afe94942aa1d0b245ec60a2
Reviewed-on: https://gem5-review.googlesource.com/8181
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
Maintainer: Brandon Potter <Brandon.Potter@amd.com>
src/cpu/simple/timing.cc