1. 06 10月, 2008 4 次提交
    • A
      Introduce v3 of savevm protocol · 9366f418
      aliguori 提交于
      The current savevm/loadvm protocol has some draw backs.  It does not support
      the ability to do progressive saving which means it cannot be used for live
      checkpointing or migration.  The sections sizes are 32-bit integers which
      means that it will not function when using more than 4GB of memory for a guest.
      It attempts to seek within the output file which means it cannot be streamed.
      The current protocol also is pretty lax about how it supports forward
      compatibility.  If a saved section version is greater than what the restore
      code support, the restore code generally treats the saved data as being in
      whatever version it supports.  This means that restoring a saved VM on an older
      version of QEMU will likely result in silent guest failure.
      
      This patch introduces a new version of the savevm protocol.  It has the
      following features:
      
       * Support for progressive save of sections (for live checkpoint/migration)
       * An asynchronous API for doing save
       * Support for interleaving multiple progressive save sections
         (for future support of memory hot-add/storage migration)
       * Fully streaming format
       * Strong section version checking
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      
      
      
      git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5434 c046a42c-6fe2-441c-8c8c-71466251a162
      9366f418
    • A
      Add dirty tracking for live migration · 74576198
      aliguori 提交于
      This patch adds a dirty tracking bit for live migration.  We use 0x08 because
      kqemu uses 0x04.
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      
      
      
      git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5433 c046a42c-6fe2-441c-8c8c-71466251a162
      74576198
    • A
      Add bdrv_flush_all() · c6ca28d6
      aliguori 提交于
      This patch adds a bdrv_flush_all() function.  It's necessary to ensure that all
      IO operations have been flushed to disk before completely a live migration.
      
      N.B. we don't actually use this now.  We really should flush the block drivers
      using an live savevm callback to avoid unnecessary guest down time.
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      
      
      
      git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5432 c046a42c-6fe2-441c-8c8c-71466251a162
      c6ca28d6
    • A
      Allow the monitor to be suspended during non-blocking op · d8f44609
      aliguori 提交于
      Live migration happens in the background, but it is useful to make the monitor
      command appear as if it's blocking.  This allows a management tool to
      immediately know when the live migration has completed without having to poll
      the migration status.
      
      This patch allows the monitor to be suspended from a monitor callback which
      will prevent new monitor commands from being executed.
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      
      
      
      git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5431 c046a42c-6fe2-441c-8c8c-71466251a162
      d8f44609
  2. 05 10月, 2008 13 次提交
  3. 04 10月, 2008 13 次提交
  4. 03 10月, 2008 10 次提交