On Tue, Mar 05, 2013 at 05:39:10PM +0800, Lei Li wrote: > This patch series attempts to add time resync support > to qemu-ga by introducing qemu-ga commands guest-get-time > and guest-set-time.
Thanks, applied to qga branch. > > Right now, when a guest is paused or migrated to a file > then loaded from that file, the guest OS has no idea that > there was a big gap in the time. Depending on how long the > gap was, NTP might not be able to resynchronize the guest. > So adding new guest-agent command that is called any time > a guest is resumed and which tells the guest to update its > own wall clock time based on the information from the host > will make it easier for a guest to resynchronize without > waiting for NTP. > > The previous RFC send for discussion and suggestion as link > here: > > http://article.gmane.org/gmane.comp.emulators.qemu/186126 > > The interface for these commands like: > > { 'command': 'guest-get-time', 'returns': 'int' } > > { 'command': 'guest-set-time', 'data': { 'time': int } } > > Notes: > For the implementition of win32-specific commands, I plan > to send it out in another thread later. > > Suggestions and comments are welcome! > > Changes since v4: > - Fix the missing error exit pointed by Eric. > - Doc improvement from Eric. > > Changes since v3: > - Doc improvement based on Eric's suggestions. > - Overflow check improve from Eric. > > Changes since v2: > - Get rid of utc-offset, and make it just pass single nanoseconds > relative to the Epoch in UTC/GMT according to Anthony and > Eric's comments. > - Make time argument mandatory. > - Fix the overflow check for year-2038 problem. > - Error handel improvment from Eric. > > Changes since v1: > - Squashed patches add support to get host time and add > guest-get-time command into one. > - Documents improvment based on the suggestions from > Eric and Mike. > - Change the name of 'HostTimeInfo' to 'TimeInfo'. > - Better use-case and logic for 'guest-set-time' > command suggested by Eric. > - Error handel improvment from Luiz. > > Lei Li (2): > qga: add guest-get-time command > qga: add guest-set-time command >