On Mon, Mar 17, 2014 at 07:35:43PM +0000, Peter Maydell wrote: > [another resend for qemu-devel...] > > On 27 February 2014 07:16, Pranavkumar Sawargaonkar > <pranavku...@linaro.org> wrote: > > On 27 February 2014 12:21, Pranavkumar Sawargaonkar > > <pranavku...@linaro.org> wrote: > >> Latest linux kernel supports in-kernel emulation of PSCI v0.2 but > >> to enable it we need to select KVM_ARM_VCPU_PSCI_0_2 feature using > >> KVM_ARM_VCPU_INIT ioctl. > >> > >> Also, we can use KVM_ARM_VCPU_PSCI_0_2 feature for VCPU only when > >> linux kernel has KVM_CAP_ARM_PSCI_0_2 capability. > >> > >> This patch updates kvm_arch_init_vcpu() to enable KVM_ARM_VCPU_PSCI_0_2 > >> feature for VCPU when KVM ARM/ARM64 has KVM_CAP_ARM_PSCI_0_2 capability. > > I think this has implications for migration. What happens > if you migrate a VM from a host system where the host > kernel supports this capability to one where it doesn't? > (Presumably the answer is "it won't work" and we need > to ensure we don't allow that.) > Conversely, is it OK to migrate a guest from a host > which didn't support PSCI 0.2 to one which does? Does > that work even if the destination has PSCI 0.2 enabled > for the vCPUs, or do we need to support starting a > VM with 0.2 disabled even on 0.2-capable hosts, for > use as a migration target?
The init feature should be a switch, turn 0.2 on or off, if off, we're emulating 0.1. If 0.2 is on, 0.1 call numbers should generate errors. You're right, we need to fix this for migration. > > Also we still don't seem to have done anything about > migration of the PSCI CPU powerup/down state. > We need to create a card for this in Linaro. Thought I would deal with it when working through migration for ARMv8. Thanks! -Christoffer