gem5/src
Andreas Sandberg 3e200455bd dev, arm: Add draining to the GIC model
The GIC model currently adds a delay to interrupts when posting them
to a target CPU. This means that an interrupt signal will be
represented by an event for a short period of time. We currently
ignore this when draining and serialize the tick when the interrupt
will fire. Upon loading the checkpoint, the simulated GIC reschedules
the pending events. This behaviour is undesirable when we implement
support for switching between in-kernel GIC emulation and gem5 GIC
emulation. In that case, the (kernel) GIC model gets a lot simpler if
we don't need to worry about in-flight interrupts from the gem5 GIC.

This changeset adds a draining check to force the GIC into a state
where all interrupts have been delivered prior to checkpointing/CPU
switching. It also removes the now redundant serialization of
interrupt events.

Change-Id: I8b8b080aa291ca029a3a7bdd1777f1fcd5b01179
Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-by: Curtis Dunham <curtis.dunham@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/2331
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
2017-03-13 12:10:52 +00:00
..
arch syscall-emul: Ignore unimplemented system calls 2017-03-09 22:42:45 +00:00
base style: Correct some style issues 2017-03-09 22:42:45 +00:00
cpu syscall_emul: [PATCH 15/22] add clone/execve for threading and multiprocess simulations 2017-02-27 14:10:15 -05:00
dev dev, arm: Add draining to the GIC model 2017-03-13 12:10:52 +00:00
doc sim: Adding support for power models 2016-06-06 17:16:44 +01:00
doxygen MEM: Put memory system document into doxygen 2012-09-25 11:49:41 -05:00
gpu-compute syscall-emul: Move memState into its own file 2017-03-09 19:19:38 +00:00
kern syscall-emul: Add functionality to open syscalls 2017-03-09 22:42:45 +00:00
mem misc: add missing copyright/author information in previous commit 2017-03-09 17:22:52 +00:00
proto proto: Fix warnings for protoc v3 2017-01-27 15:07:20 -06:00
python base: Refactor logging to make log level selection cleaner 2017-02-27 11:25:01 +00:00
sim style: change NULL to nullptr in syscall files 2017-03-09 22:42:45 +00:00
unittest misc: Update #!env calls for python to explicit version 2017-02-10 10:00:18 -05:00
Doxyfile Doxygen: Update the version of the Doxyfile 2012-10-11 06:38:42 -04:00
SConscript python: Move native wrappers to the _m5 namespace 2017-01-27 12:40:01 +00:00