Message ID | 20170609133426.11447-2-david@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 06/09/2017 06:34 AM, David Hildenbrand wrote: > The PSW in the old PSW has to point at the next instruction, as > specification exceptions are defined to be "suppressing or completed", > but not nullified. > > Signed-off-by: David Hildenbrand <david@redhat.com> > --- > target/s390x/helper.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/target/s390x/helper.c b/target/s390x/helper.c > index a8d20c5..42a2465 100644 > --- a/target/s390x/helper.c > +++ b/target/s390x/helper.c > @@ -737,6 +737,6 @@ void s390x_cpu_do_unaligned_access(CPUState *cs, vaddr addr, > if (retaddr) { > cpu_restore_state(cs, retaddr); > } > - program_interrupt(env, PGM_SPECIFICATION, ILEN_LATER); > + program_interrupt(env, PGM_SPECIFICATION, ILEN_LATER_INC); I folded this into your following patch to use ILEN_AUTO. r~
diff --git a/target/s390x/helper.c b/target/s390x/helper.c index a8d20c5..42a2465 100644 --- a/target/s390x/helper.c +++ b/target/s390x/helper.c @@ -737,6 +737,6 @@ void s390x_cpu_do_unaligned_access(CPUState *cs, vaddr addr, if (retaddr) { cpu_restore_state(cs, retaddr); } - program_interrupt(env, PGM_SPECIFICATION, ILEN_LATER); + program_interrupt(env, PGM_SPECIFICATION, ILEN_LATER_INC); } #endif /* CONFIG_USER_ONLY */
The PSW in the old PSW has to point at the next instruction, as specification exceptions are defined to be "suppressing or completed", but not nullified. Signed-off-by: David Hildenbrand <david@redhat.com> --- target/s390x/helper.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)