blob: 4ce43426dc12c993e922a0fb11626664d4c5e354 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
graphic: 0.618
device: 0.461
semantic: 0.421
instruction: 0.377
other: 0.331
socket: 0.287
network: 0.285
boot: 0.261
vnc: 0.244
mistranslation: 0.148
assembly: 0.125
KVM: 0.105
[riscv/regression] Missing tlb flush introduced in refactoring
Hello,
In qemu-system-riscv64, following a QEMU update, I get all sort of weird and not easily reproducible crashes in my risc-v guest.
I have bissected this issue to commit c7b951718815694284501ed01fec7acb8654db7b.
Some TLB flushes were removed in the following places:
target/riscv/cpu_helper.c: `csr_write_helper(env, s, CSR_MSTATUS);` -> `env->mstatus = s;` (twice)
target/riscv/op_helper.c: `csr_write_helper(env, s, CSR_MSTATUS);` -> `env->mstatus = s;` (twice)
Adding TLB flushes in all 4 places fixes the issues for me.
Hello,
Thanks for reporting a bug.
Can you please include details to reproduce the problems that you are seeing? This includes images and command line arguments.
Do you also mind including the diff of what fixes the problem for you?
Alistair
It has been solved thanks to the mailing-list members.
|