On 09.04.2018 13:30, David Hildenbrand wrote: > If we already triggered another exception, don't overwrite it with a > protection exception. > > Signed-off-by: David Hildenbrand <da...@redhat.com> > --- > target/s390x/mmu_helper.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/target/s390x/mmu_helper.c b/target/s390x/mmu_helper.c > index 1deeb6e6e4..a25deef5dd 100644 > --- a/target/s390x/mmu_helper.c > +++ b/target/s390x/mmu_helper.c > @@ -325,7 +325,7 @@ static int mmu_translate_asce(CPUS390XState *env, > target_ulong vaddr, > > r = mmu_translate_region(env, vaddr, asc, asce, level, raddr, flags, rw, > exc); > - if (rw == MMU_DATA_STORE && !(*flags & PAGE_WRITE)) { > + if (!r && rw == MMU_DATA_STORE && !(*flags & PAGE_WRITE)) { > trigger_prot_fault(env, vaddr, asc, rw, exc); > return -1; > }
Looks right. Reviewed-by: Thomas Huth <th...@redhat.com>