[PATCH 01/17] KVM: PPC: Fix machine checks on 32-bit Book3S
Alexander Graf
agraf at suse.de
Fri Jul 1 20:08:51 EST 2011
On 29.06.2011, at 12:16, Paul Mackerras wrote:
> Commit 69acc0d3ba ("KVM: PPC: Resolve real-mode handlers through
> function exports") resulted in vcpu->arch.trampoline_lowmem and
> vcpu->arch.trampoline_enter ending up with kernel virtual addresses
> rather than physical addresses. This is OK on 64-bit Book3S machines,
> which ignore the top 4 bits of the effective address in real mode,
> but on 32-bit Book3S machines, accessing these addresses in real mode
> causes machine check interrupts, as the hardware uses the whole
> effective address as the physical address in real mode.
>
> This fixes the problem by using __pa() to convert these addresses
> to physical addresses.
Ouch. Thanks for the catch! I really need to include book3s_32 in my automated testing :(.
Alex
More information about the Linuxppc-dev
mailing list