Patchwork [09/12] target-lm32: flush tlb after clearing env

login
register
mail settings
Submitter Michael Walle
Date March 6, 2013, 10 p.m.
Message ID <1362607209-12232-10-git-send-email-michael@walle.cc>
Download mbox | patch
Permalink /patch/225671/
State New
Headers show

Comments

Michael Walle - March 6, 2013, 10 p.m.
The tlb data is stored within the CPU env. Therefore, the initialization
has to be done after we clear the environment. Otherwise the tlb will have
a valid entry for address 0x0.

Signed-off-by: Michael Walle <michael@walle.cc>
---
 target-lm32/cpu.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

Patch

diff --git a/target-lm32/cpu.c b/target-lm32/cpu.c
index a2badb5..5e1ab80 100644
--- a/target-lm32/cpu.c
+++ b/target-lm32/cpu.c
@@ -36,10 +36,10 @@  static void lm32_cpu_reset(CPUState *s)
 
     lcc->parent_reset(s);
 
-    tlb_flush(env, 1);
-
     /* reset cpu state */
     memset(env, 0, offsetof(CPULM32State, breakpoints));
+
+    tlb_flush(env, 1);
 }
 
 static void lm32_cpu_realizefn(DeviceState *dev, Error **errp)