[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-ppc] Power9 VRMA emulation
From: |
Amol Surati |
Subject: |
[Qemu-ppc] Power9 VRMA emulation |
Date: |
Fri, 17 May 2019 09:56:57 +0530 |
User-agent: |
Mutt/1.11.4 (2019-03-13) |
Hello,
IIUC, with ISA3.0b, VPM0 is considered to be functionally always 1,
even though its value in the LPCR register may remain/be fixed at 0,
as it does by default.
Does this not warrant a change in functions ppc_hash64_handle_mmu_fault,
ppc_hash64_update_vrma, and others?
For instance, under the conditions described in ISA3.0b section 5.7.3.3,
ppc_hash64_handle_mmu_fault raises a HISI without querying the
VRMA SLB because it finds VPM0 as 0 and so skips that query altogether.
*799 if (env->spr[SPR_LPCR] & LPCR_VPM0) {
800 slb = &env->vrma_slb;
...
808 } else if (raddr < env->rmls) {
...
811 } else {
812 /* The access failed, generate the approriate interrupt */
813 if (rwx == 2) {
*814 ppc_hash64_set_isi(cs, SRR1_PROTFAULT);
...
823 }
Am I misunderstanding the ISA?
Thank you,
Amol
- [Qemu-ppc] Power9 VRMA emulation,
Amol Surati <=