qemu/target/s390x
David Hildenbrand becf8217de target/s390x: rework PGM interrupt psw.addr handling
We can tell from the program interrupt code, whether a program interrupt
has to forward the address in the PGM new PSW
(suppressing/terminated/completed) to point at the next instruction, or
if it is nullifying and the PSW address does not have to be incremented.

So let's not modify the PSW address outside of the injection path and
handle this internally. We just have to handle instruction length
auto detection if no valid instruction length can be provided.

This should fix various program interrupt injection paths, where the
PSW was not properly forwarded.

Signed-off-by: David Hildenbrand <david@redhat.com>
Message-Id: <20170609142156.18767-3-david@redhat.com>
Signed-off-by: Richard Henderson <rth@twiddle.net>
2017-06-13 11:09:39 -07:00
..
arch_dump.c s390x/arch_dump: pass cpuid into notes sections 2017-02-24 10:15:18 +01:00
cc_helper.c
cpu_features_def.h
cpu_features.c
cpu_features.h
cpu_models.c s390x: misc fixes 2017-06-13 09:27:17 +01:00
cpu_models.h s390x/cpumodel: take care of the cpuid format bit for KVM 2017-06-06 10:50:40 +02:00
cpu-qom.h
cpu.c migration: Remove unneeded includes of migration/vmstate.h 2017-06-01 18:49:22 +02:00
cpu.h target/s390x: rework PGM interrupt psw.addr handling 2017-06-13 11:09:39 -07:00
fpu_helper.c target/s390x: implement COMPARE AND SIGNAL 2017-06-06 15:20:38 -07:00
gdbstub.c * QOM interface fix (Eduardo) 2017-01-20 16:42:07 +00:00
gen-features.c
helper.c target/s390x: rework PGM interrupt psw.addr handling 2017-06-13 11:09:39 -07:00
helper.h target/s390x: implement STORE PAIR TO QUADWORD 2017-06-06 15:25:14 -07:00
insn-data.def target/s390x: implement STORE PAIR TO QUADWORD 2017-06-06 15:25:14 -07:00
insn-format.def
int_helper.c target-s390x: Avoid a loop for popcnt 2017-01-10 08:48:57 -08:00
interrupt.c
ioinst.c s390x/css: fence off MIDA 2017-06-06 10:17:11 +02:00
kvm.c s390x/cpumodel: take care of the cpuid format bit for KVM 2017-06-06 10:50:40 +02:00
machine.c target/s390x: Implement EXECUTE via new TranslationBlock 2017-06-06 14:34:32 -07:00
Makefile.objs makefile: merge GENERATED_HEADERS & GENERATED_SOURCES variables 2017-03-16 11:51:15 +08:00
mem_helper.c target/s390x: check alignment in CDSG in the !CONFIG_ATOMIC128 case 2017-06-06 15:25:14 -07:00
misc_helper.c target/s390x: rework PGM interrupt psw.addr handling 2017-06-13 11:09:39 -07:00
mmu_helper.c target/s390x: rework PGM interrupt psw.addr handling 2017-06-13 11:09:39 -07:00
trace-events
translate.c target/s390x: rework PGM interrupt psw.addr handling 2017-06-13 11:09:39 -07:00