> * Pavel Dovgalyuk ([email protected]) wrote: > > > From: Dr. David Alan Gilbert [mailto:[email protected]] > > > * Pavel Dovgalyuk ([email protected]) wrote: > > > > HPET saves its state by calculating the current time and recovers timer > > > > offset using this calculated value. But these calculations include > > > > divisions and multiplications. Therefore the timer state cannot be > > > > recovered > > > > precise enough. > > > > This patch introduces saving of the original value of the offset to > > > > preserve the determinism of the timer. > > > > > > Please put the extra data in a subsection and tie the subsection to a > > > property enabled by the machine type. That avoids breaking backwards > > > migration compatibility. > > > > I thought about it and haven't found how to preserve the backward migration > > compatibility > > without breaking everything else. > > Loading old (or compatible) snapshot without changing the version will > > corrupt the offset in > > post_load. > > There are lots of ways; for example you could initialise hpet_offset to > a dummy value in a pre-load and spot that in the post-load instead of > the version_id, or set a flag in a post-load on the subsection.
Thanks. Please check the second version. Pavel Dovgalyuk
