[REPOST PATCH] arm/arm64: KVM: Add PSCI version selection API

Auger Eric eric.auger at redhat.com
Mon Mar 5 12:37:08 PST 2018


Hi Peter,

On 05/03/18 17:31, Peter Maydell wrote:
> On 2 March 2018 at 12:26, Auger Eric <eric.auger at redhat.com> wrote:
>> Hi Marc,
>> On 02/03/18 12:11, Marc Zyngier wrote:
>>> On Fri, 02 Mar 2018 10:44:48 +0000,
>>> Auger Eric wrote:
>>>> I understand the get/set is called as part of the migration process.
>>>> So my understanding is the benefit of this series is migration fails in
>>>> those cases:
>>>>
>>>>> =0.2 source -> 0.1 destination
>>>> 0.1 source -> >=0.2 destination
>>>
>>> It also fails in the case where you migrate a 1.0 guest to something
>>> that cannot support it.
>>
>> That's because on the destination, the number of regs is less than on
>> source, right?
> 
> I think it fails because the KVM_REG_ARM_PSCI_VERSION register will be
> in the migration state but not in the destination's list of registers:
> the code in QEMU's target/arm/machine.c:cpu_post_load() function that
> checks "register in their list but not ours: fail migration" will
> catch this.

Thank you for the pointer. Yes at the time I reviewed the patch and just
focusing on the kernel code, this was not immediate to me.

> 
> That also means that we will fail migration from a new kernel where
> we've specifically asked for PSCI 0.2 to an old PSCI-0.2-only kernel
> (because the KVM_REG_ARM_PSCI_VERSION reg will appear in the migration
> stream even if its value is the one value that matches the old kernel
> behaviour). I don't know if we care about that.

Do you know when are we likely to force PSCI 0.2 on a new kernel? At
which layer is the decision supposed to be made and on which criteria?

Thanks

Eric
> 
> thanks
> -- PMM
> 



More information about the linux-arm-kernel mailing list