On Mon, Jun 12, 2017 at 11:02:35AM +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> > Reviewed-by: Suraj Jitindar Singh <sjitindarsi...@gmail.com>
I believe we shouldn't assume a particular existing state on the destination when processing an incoming stream (it's normally done immediatley after startup, but I'm not sure it has to be). So, we shouldn't only call configure_v3_mmu when patb_entry != 0. For the case of an incoming hash guest, I believe we should explicitly configure KVM to HPT mode, rather than assume it's there already. > --- > hw/ppc/spapr.c | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > > diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c > index c425499..b2217f3 100644 > --- a/hw/ppc/spapr.c > +++ b/hw/ppc/spapr.c > @@ -1443,6 +1443,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); > + bool radix = !!(spapr->patb_entry & PATBE1_GR); > + bool gtse = !!(cpu->env.spr[SPR_LPCR] & LPCR_GTSE); > + > + err = kvmppc_configure_v3_mmu(cpu, radix, gtse, spapr->patb_entry); > + if (err) { > + error_report("Process table config unsupported by the host"); > + return -EINVAL; > + } > + } > + > return err; > } > -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson
signature.asc
Description: PGP signature