On Fri, May 19, 2017 at 11:10:39AM +0530, Bharata B Rao wrote: > Fix migration of radix guests by ensuring that we issue > KVM_PPC_CONFIGURE_V3_MMU for radix case post migration. > > Reported-by: Nageswara R Sastry <rnsas...@linux.vnet.ibm.com> > Signed-off-by: Bharata B Rao <bhar...@linux.vnet.ibm.com> > --- > hw/ppc/spapr.c | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > > diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c > index daf335c..8f20f14 100644 > --- a/hw/ppc/spapr.c > +++ b/hw/ppc/spapr.c > @@ -1400,6 +1400,18 @@ static int spapr_post_load(void *opaque, int > version_id) > err = spapr_rtc_import_offset(&spapr->rtc, spapr->rtc_offset); > } > > + if (spapr->patb_entry) { > + PowerPCCPU *cpu = POWERPC_CPU(first_cpu); > + if (kvmppc_has_cap_mmu_radix() && kvm_enabled()) { > + err = kvmppc_configure_v3_mmu(cpu, SPAPR_PROC_TABLE_RADIX, > + ((cpu->env.spr[SPR_LPCR] & LPCR_GTSE) ? > SPAPR_PROC_TABLE_GTSE : > + 0), spapr->patb_entry);
Better to use explicit 'true' and 'false' in the above call. Here is the updated patch: >From 937c51cac73b4211ef153c1f5940215960383494 Mon Sep 17 00:00:00 2001 From: Bharata B Rao <bhar...@linux.vnet.ibm.com> Date: Tue, 16 May 2017 12:19:54 +0530 Subject: [RFC PATCH v2.1 4/4] spapr: Fix migration of Radix guests Fix migration of radix guests by ensuring that we issue KVM_PPC_CONFIGURE_V3_MMU for radix case post migration. Reported-by: Nageswara R Sastry <rnsas...@linux.vnet.ibm.com> Signed-off-by: Bharata B Rao <bhar...@linux.vnet.ibm.com> --- hw/ppc/spapr.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c index daf335c..69e184b 100644 --- a/hw/ppc/spapr.c +++ b/hw/ppc/spapr.c @@ -1400,6 +1400,18 @@ static int spapr_post_load(void *opaque, int version_id) err = spapr_rtc_import_offset(&spapr->rtc, spapr->rtc_offset); } + if (spapr->patb_entry) { + PowerPCCPU *cpu = POWERPC_CPU(first_cpu); + if (kvmppc_has_cap_mmu_radix() && kvm_enabled()) { + err = kvmppc_configure_v3_mmu(cpu, true, + ((cpu->env.spr[SPR_LPCR] & LPCR_GTSE) ? true : false), + spapr->patb_entry); + } else { + error_report("Radix guest is unsupported by the host"); + return -EINVAL; + } + } + return err; } -- 2.7.4