qemu-e2k/target/i386/tcg
Paolo Bonzini b04dc92e01 target-i386: mmu: fix handling of noncanonical virtual addresses
mmu_translate is supposed to return an error code for page faults; it is
not able to handle other exceptions.  The #GP case for noncanonical
virtual addresses is not handled correctly, and incorrectly raised as
a page fault with error code 1.  Since it cannot happen for nested
page tables, move it directly to handle_mmu_fault, even before the
invocation of mmu_translate.

Fixes: #676
Fixes: 661ff4879e ("target/i386: extract mmu_translate", 2021-05-11)
Cc: qemu-stable@nongnu.org
Tested-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2021-11-08 08:55:20 +01:00
..
sysemu target-i386: mmu: fix handling of noncanonical virtual addresses 2021-11-08 08:55:20 +01:00
user target/i386: Implement x86_cpu_record_sigsegv 2021-11-02 07:00:52 -04:00
bpt_helper.c target/i386: fix exceptions for MOV to DR 2021-07-09 18:21:34 +02:00
cc_helper.c i386: move TCG cpu class initialization to tcg/ 2020-12-16 15:50:33 -05:00
cc_helper_template.h
excp_helper.c target/i386: Mark some helpers as noreturn 2021-05-19 12:17:11 -05:00
fpu_helper.c target/i386: Correct implementation for FCS, FIP, FDS and FDP 2021-07-13 08:13:19 -07:00
helper-tcg.h target/i386: Implement x86_cpu_record_sigsegv 2021-11-02 07:00:52 -04:00
int_helper.c i386: move TCG cpu class initialization to tcg/ 2020-12-16 15:50:33 -05:00
mem_helper.c target/i386: Use MO_128 for 16 byte atomics 2021-10-13 07:58:00 -07:00
meson.build i386: split svm_helper into sysemu and stub-only user 2021-05-10 15:41:51 -04:00
misc_helper.c target/i386: Drop check for singlestep_enabled 2021-10-15 16:39:14 -07:00
mpx_helper.c i386: move TCG cpu class initialization to tcg/ 2020-12-16 15:50:33 -05:00
seg_helper.c target/i386: Move x86_cpu_exec_interrupt() under sysemu/ folder 2021-09-14 12:00:21 -07:00
seg_helper.h i386: split seg_helper into user-only and sysemu parts 2021-05-10 15:41:52 -04:00
tcg-cpu.c target/i386: Implement x86_cpu_record_sigsegv 2021-11-02 07:00:52 -04:00
tcg-cpu.h target/i386: Move X86XSaveArea into TCG 2021-07-06 08:33:51 +02:00
tcg-stub.c
translate.c target/i386: Drop check for singlestep_enabled 2021-10-15 16:39:14 -07:00