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 /exec.c | |
| parent | 09daed848c3de60b7979eda709dc4bae5195273d (diff) | |
| download | focaccia-qemu-33bde2e13f36b9331e35b6e531bc06e8567b4f64.tar.gz focaccia-qemu-33bde2e13f36b9331e35b6e531bc06e8567b4f64.zip | |
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>
Diffstat (limited to 'exec.c')
| -rw-r--r-- | exec.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/exec.c b/exec.c index cd931c1e8e..5e2d1211e7 100644 --- a/exec.c +++ b/exec.c @@ -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); } } |