On 05/03/18 20:37, Auger Eric wrote: > Hi Peter, > > On 05/03/18 17:31, Peter Maydell wrote: >> On 2 March 2018 at 12:26, Auger Eric <eric.auger@xxxxxxxxxx> 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? No decent SW should need this. But if you've written a guest that cannot work if it doesn't get "2" as response to PSCI_VERSION, you can override it. M. -- Jazz is not dead. It just smells funny... _______________________________________________ kvmarm mailing list kvmarm@xxxxxxxxxxxxxxxxxxxxx https://lists.cs.columbia.edu/mailman/listinfo/kvmarm