diff options
author | Edgar E. Iglesias <edgar.iglesias@xilinx.com> | 2013-11-21 19:06:30 +0100 |
---|---|---|
committer | Edgar E. Iglesias <edgar.iglesias@xilinx.com> | 2014-02-11 22:56:43 +1000 |
commit | 33bde2e13f36b9331e35b6e531bc06e8567b4f64 (patch) | |
tree | add1e96c9534d347e3fd606c59efd13fe5d0e505 | |
parent | 09daed848c3de60b7979eda709dc4bae5195273d (diff) | |
download | hqemu-33bde2e13f36b9331e35b6e531bc06e8567b4f64.zip hqemu-33bde2e13f36b9331e35b6e531bc06e8567b4f64.tar.gz |
exec: On AS changes, only flush affected CPU TLBs
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
-rw-r--r-- | exec.c | 5 |
1 files changed, 5 insertions, 0 deletions
@@ -1828,6 +1828,11 @@ static void tcg_commit(MemoryListener *listener) CPU_FOREACH(cpu) { CPUArchState *env = cpu->env_ptr; + /* FIXME: Disentangle the cpu.h circular files deps so we can + directly get the right CPU from listener. */ + if (cpu->tcg_as_listener != listener) { + continue; + } tlb_flush(env, 1); } } |