qemu/target
Thomas Huth 21be74a9a5 target/s390x/tcg: Fix and improve the SACF instruction
The SET ADDRESS SPACE CONTROL FAST instruction is not privileged, it can be
used from problem space, too. Just the switching to the home address space
is privileged and should still generate a privilege exception. This bug is
e.g. causing programs like Java that use the "getcpu" vdso kernel function
to crash (see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=990417#26 ).

While we're at it, also check if DAT is not enabled. In that case the
instruction is supposed to generate a special operation exception.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/655
Message-Id: <20221201184443.136355-1-thuth@redhat.com>
Reviewed-by: Ilya Leoshkevich <iii@linux.ibm.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
2022-12-03 22:04:40 +01:00
..
alpha accel/tcg: Remove will_exit argument from cpu_restore_state 2022-11-01 08:31:41 +11:00
arm target/arm: Set TCGCPUOps.restore_state_to_opc for v7m 2022-11-29 18:15:26 -05:00
avr target/avr: Convert to tcg_ops restore_state_to_opc 2022-10-26 11:11:28 +10:00
cris accel/tcg: Remove will_exit argument from cpu_restore_state 2022-11-01 08:31:41 +11:00
hexagon target/hexagon: Convert to tcg_ops restore_state_to_opc 2022-10-26 11:11:28 +10:00
hppa target/hppa: Convert to tcg_ops restore_state_to_opc 2022-10-26 11:11:28 +10:00
i386 target/i386: hardcode R_EAX as destination register for LAHF/SAHF 2022-11-15 09:34:42 +10:00
loongarch target/loongarch: Fix return value of CHECK_FPE 2022-11-07 10:54:11 +08:00
m68k target/m68k: Rename qregs.def -> qregs.h.inc 2022-11-05 20:35:45 +01:00
microblaze accel/tcg: Remove will_exit argument from cpu_restore_state 2022-11-01 08:31:41 +11:00
mips target/mips: Don't check COP1X for 64 bit FP mode 2022-11-08 01:04:25 +01:00
nios2 accel/tcg: Remove will_exit argument from cpu_restore_state 2022-11-01 08:31:41 +11:00
openrisc accel/tcg: Remove will_exit argument from cpu_restore_state 2022-11-01 08:31:41 +11:00
ppc target/ppc: Fix build warnings when building with 'disable-tcg' 2022-11-17 11:28:04 -03:00
riscv Revert incorrect cflags initialization. 2022-10-26 10:53:41 -04:00
rx Revert incorrect cflags initialization. 2022-10-26 10:53:41 -04:00
s390x target/s390x/tcg: Fix and improve the SACF instruction 2022-12-03 22:04:40 +01:00
sh4 target/sh4: Convert to tcg_ops restore_state_to_opc 2022-10-26 11:11:28 +10:00
sparc target/sparc: Convert to tcg_ops restore_state_to_opc 2022-10-26 11:11:28 +10:00
tricore target/tricore: Rename csfr.def -> csfr.h.inc 2022-11-05 20:35:45 +01:00
xtensa accel/tcg: Remove will_exit argument from cpu_restore_state 2022-11-01 08:31:41 +11:00
Kconfig hw/loongarch: Add support loongson3 virt machine type. 2022-06-06 18:09:03 +00:00
meson.build target/loongarch: Add target build suport 2022-06-06 18:09:03 +00:00