On Thu, Jul 07, 2016 at 12:15:24PM -0400, Paolo Bonzini wrote:
On Thu, Jul 07, 2016 at 04:00:40PM +0200, Paolo Bonzini wrote:
Currently the MTRRs and MSR_IA32_FEATURE_CONTROL are not restored on S3 resume. Because these have to be applied to all processors, SMP setup has to be added to S3 resume.
There are two differences between the boot and resume paths. First, romfile_* is not usable in the resume paths so we move the call out of smp_setup and into a new function smp_boot_setup. Second, smp_msr has to be walked on the BSP as well, so we extract that out of handle_smp and into a new function smp_write_msrs. Then, resume can call smp_write_msrs on the BSP followed by smp_setup to initialize the APs.
In general, looks good to me. Are you okay with the slightly modified patch below? Three differences - check CONFIG_QEMU in smp_resume(), only modify MaxCountCPUs during the init phase, and only export smp_setup() and smp_resume() from smp.c.
Yes, of course. Thanks! Gerd, can you get this in QEMU 2.7 too?
Thanks. I committed this change to master.
-Kevin