qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] target/s390x: Move trans_exc_code update to do_program_inter


From: Richard Henderson
Subject: Re: [PATCH] target/s390x: Move trans_exc_code update to do_program_interrupt
Date: Mon, 31 Jul 2023 07:55:52 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0

On 7/31/23 01:26, Ilya Leoshkevich wrote:
+    case PGM_PROTECTION:
+    case PGM_TRANS_SPEC:
+        assert(env->int_pgm_code == env->tlb_fill_exc);
+        set_trans_exc_code = true;
+        advance = true;
+        break;

These exceptions came from seeing an early kernel fault, grepping for
the set of
exceptions raised in mmu_helper.c, and eliminating PGM_ADDRESSING per
the first hunk.

Does POp specify that the CPU stores Translation-Exception
Identification on Translation-Specification Exceptions
(PGM_TRANS_SPEC)? I re-read the 0xA8 documentation a few times, but
could not find it.

Neither could I.

It's also interesting what the kernel was attempting when it got
PGM_TRANS_SPEC and recovered from it. Maybe something else is wrong?

I think the kernel was testing PGM_PROTECTION, to see if LowCore protection 
worked.

But since that one wasn't listed for 0xA8 either, I preserved previous behaviour in setting trans_exc_code for all mmu exceptions except for PGM_ADDRESSING.


r~



reply via email to

[Prev in Thread] Current Thread [Next in Thread]