[kvmarm] [PATCH 10/15] KVM: ARM: World-switch implementation
Peter Maydell
peter.maydell at linaro.org
Tue Sep 25 13:15:50 EDT 2012
On 25 September 2012 18:00, Will Deacon <will.deacon at arm.com> wrote:
> On Sat, Sep 15, 2012 at 04:35:33PM +0100, Christoffer Dall wrote:
>> ENTRY(__kvm_tlb_flush_vmid)
>> + hvc #0 @ Switch to Hyp mode
>> + push {r2, r3}
>> +
>> + add r0, r0, #KVM_VTTBR
>> + ldrd r2, r3, [r0]
>> + mcrr p15, 6, r2, r3, c2 @ Write VTTBR
>> + isb
>> + mcr p15, 0, r0, c8, c3, 0 @ TLBIALLIS (rt ignored)
>> + dsb
>> + isb
>> + mov r2, #0
>> + mov r3, #0
>> + mcrr p15, 6, r2, r3, c2 @ Back to VMID #0
>> + isb
>
> Do you need this isb, given that you're about to do an hvc?
>
>> + pop {r2, r3}
>> + hvc #0 @ Back to SVC
>> bx lr
...you probably don't want to do the memory accesses involved
in the 'pop' under the wrong VMID ?
-- PMM
More information about the linux-arm-kernel
mailing list