On 02/02/2017 11:40, Mark Cave-Ayland wrote: > On 02/02/17 09:13, Laurent Vivier wrote: > >> On 02/02/2017 09:37, Mark Cave-Ayland wrote: >>> On 02/02/17 05:14, David Gibson wrote: >>> >> ... >>> Hi David/Laurent, >> >> Hi Mark, >> >>> I just noticed this in your pull request today - this looks like it is >>> along similar lines to the prototype patch I proposed last year as part >>> of the decrementer migration thread discussion, i.e. use a >>> vm_change_state_handler() to sync the clock on pause/resume. >>> >>> Am I right in thinking this now solves the timebase migration problem, >>> and so the only part required is to encode the decrementer relative to >>> the timebase during migration to ensure its value is also migrated >>> correctly? >> >> Do you have a link to this thread discussion? >> >> The main purpose of this patch was only to stop the clock (TBR) while >> the machine is paused, so I'd like to know what is the problem you are >> speaking about. > > Hi Laurent, > > Yes indeed. The discussion spanned a couple of threads last year, but > the start of it was my patch to migrate the decrementer to fix an issue > I was seeing when migrating Darwin images on the Mac machines under TCG: > > https://lists.gnu.org/archive/html/qemu-devel/2016-01/msg00544.html > > This then eventually became a separate thread here: > > https://lists.gnu.org/archive/html/qemu-devel/2016-01/msg04622.html
I think adding the the PPCTimebase field and the VMSTATE_PPC_TIMEBASE_V macro to the PMac machines should fix your issue. Do you have a test case I can try? Laurent