diff options
| author | Ilya Leoshkevich | 2021-08-05 22:48:35 +0200 |
|---|---|---|
| committer | Richard Henderson | 2021-09-14 21:00:20 +0200 |
| commit | f025692c992c1ed6cc54ac2802cff14e9052c0d3 (patch) | |
| tree | 01931a3394d5f38e9f237de94ac0b82fcce8ff22 /include/exec/exec-all.h | |
| parent | accel/tcg: Add DisasContextBase argument to translator_ld* (diff) | |
| download | qemu-f025692c992c1ed6cc54ac2802cff14e9052c0d3.tar.gz qemu-f025692c992c1ed6cc54ac2802cff14e9052c0d3.tar.xz qemu-f025692c992c1ed6cc54ac2802cff14e9052c0d3.zip | |
accel/tcg: Clear PAGE_WRITE before translation
translate_insn() implementations fetch instruction bytes piecemeal,
which can cause qemu-user to generate inconsistent translations if
another thread modifies them concurrently [1].
Fix by making pages containing translated instruction non-writable
right before loading instruction bytes from them.
[1] https://lists.nongnu.org/archive/html/qemu-devel/2021-08/msg00644.html
Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Message-Id: <20210805204835.158918-1-iii@linux.ibm.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'include/exec/exec-all.h')
0 files changed, 0 insertions, 0 deletions
