40a205da41
32-bit binaries can run on a long mode processor even if the kernel is 64-bit, of course, and this can have slightly different behavior; for example, SYSCALL is allowed on Intel processors. Allow reporting LM to programs running under user mode emulation, so that "-cpu" can be used with named CPU models even for qemu-i386 and even without disabling LM by hand. Fortunately, most of the runtime code in QEMU has to depend on HF_LMA_MASK or on HF_CS64_MASK (which is anyway false for qemu-i386's 32-bit code segment) rather than TARGET_X86_64, therefore all that is needed is an update of linux-user's ring 0 setup. Fixes: https://gitlab.com/qemu-project/qemu/-/issues/1534 Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> |
||
---|---|---|
.. | ||
cpu_loop.c | ||
meson.build | ||
signal.c | ||
sockbits.h | ||
syscall_32.tbl | ||
syscall_nr.h | ||
syscallhdr.sh | ||
target_cpu.h | ||
target_elf.h | ||
target_errno_defs.h | ||
target_fcntl.h | ||
target_mman.h | ||
target_prctl.h | ||
target_resource.h | ||
target_signal.h | ||
target_structs.h | ||
target_syscall.h | ||
termbits.h |