1. 20 10月, 2011 6 次提交
  2. 16 4月, 2011 1 次提交
  3. 24 1月, 2011 1 次提交
    • G
      add migration state change notifiers · 99a0db9b
      Gerd Hoffmann 提交于
      This patch adds functions to register and unregister notifiers for
      migration state changes and a function to query the migration state.
      The notifier is called on every state change.  Once after establishing a
      new migration object (which is in active state then) and once when the
      state changes from active to completed, canceled or error.
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      99a0db9b
  4. 23 6月, 2010 2 次提交
  5. 04 6月, 2010 1 次提交
  6. 20 2月, 2010 2 次提交
  7. 04 2月, 2010 2 次提交
  8. 19 12月, 2009 1 次提交
  9. 12 12月, 2009 1 次提交
  10. 04 12月, 2009 1 次提交
  11. 17 11月, 2009 1 次提交
    • L
      Block live migration · c163b5ca
      lirans@il.ibm.com 提交于
      This patch introduces block migration called during live migration. Block
      are being copied to the destination in an async way. First the code will
      transfer the whole disk and then transfer all dirty blocks accumulted during
      the migration.
      Still need to improve transition from the iterative phase of migration to the
      end phase. For now transition will take place when all blocks transfered once,
      all the dirty blocks will be transfered during the end phase (guest is
      suspended).
      
      Changes from v4:
      - Global variabels moved to a global state structure allocated dynamically.
      - Minor coding style issues.
      - Poll block.c for tracking of dirty blocks instead of manage it here.
      Signed-off-by: NLiran Schour <lirans@il.ibm.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      c163b5ca
  12. 28 10月, 2009 3 次提交
  13. 04 9月, 2009 3 次提交
  14. 28 8月, 2009 1 次提交
  15. 24 8月, 2009 1 次提交
    • C
      Migration via unix sockets. · 4951f65b
      Chris Lalancette 提交于
      Implement migration via unix sockets.  While you can fake this using
      exec and netcat, this involves forking another process and is
      generally not very nice.  By doing this directly in qemu, we can avoid
      the copy through the external nc command.  This is useful for
      implementations (such as libvirt) that want to do "secure" migration;
      we pipe the data on the sending side into the unix socket, libvirt
      picks it up, encrypts it, and transports it, and then on the remote
      side libvirt decrypts it, dumps it to another unix socket, and
      feeds it into qemu.
      
      The implementation is straightforward and looks very similar to
      migration-exec.c and migration-tcp.c
      Signed-off-by: NChris Lalancette <clalance@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      4951f65b
  16. 17 6月, 2009 2 次提交
    • G
      set migration max downtime · 2ea42952
      Glauber Costa 提交于
      provide a monitor command to allow one to set the maximum
      downtime he is willing to suffer during migration, in seconds.
      "ms", "us", "ns" and "s" are accepted as modifiers.
      
      This parameter will be used by ram_save_live() code to determine
      a safe moment to enter stage 3
      Signed-off-by: NGlauber Costa <glommer@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      2ea42952
    • G
      add non-arbitrary migration stop condition · a0a3fd60
      Glauber Costa 提交于
      Currently, we're entering migration's stage 3 when
      a treshold of 10 pages remain to be transferred in the system.
      
      This has hurt some users. However, any proposed threshold is
      arbitrary by nature, and would only shift the annoyance.
      
      The proposal of this patch is to define a max_downtime variable,
      which represents the maximum downtime a migration user is willing
      to suffer. Then, based on the bandwidth of last iteration, we
      calculate how much data we can transfer in such a window of time.
      
      Whenever we reach that value (or lower), we know is safe to enter
      stage3.
      
      This has largely improved the situation for me.
      On localhost migrations, where one would expect things to go as
      quickly as me running away from the duty of writting software for
      windows, a kernel compile was enough to get the migration stuck.
      
      It takes 20 ~ 30 iterations now.
      Signed-off-by: NGlauber Costa <glommer@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      a0a3fd60
  17. 06 3月, 2009 2 次提交
    • A
      monitor: Decouple terminals (Jan Kiszka) · 731b0364
      aliguori 提交于
      Currently all registered (and activate) monitor terminals work in
      broadcast mode: Everyone sees what someone else types on some other
      terminal and what the monitor reports back. This model is broken when
      you have a management monitor terminal that is automatically operated
      and some other terminal used for independent guest inspection. Such
      additional terminals can be multiplexed device channels or a gdb
      frontend connected to QEMU's stub.
      
      Therefore, this patch decouples the buffers and states of all monitor
      terminals, allowing the user to operate them independently. It finally
      starts to use the 'mon' parameter that was introduced earlier with the
      API rework. It also defines the default monitor: the first instantance
      that has the MONITOR_IS_DEFAULT flag set, and that is the monitor
      created via the "-monitor" command line switch (or "vc" if none is
      given).
      
      As the patch requires to rework the monitor suspension interface, it
      also takes the freedom to make it "truely" suspending (so far suspending
      meant suppressing the prompt, but inputs were still processed).
      Signed-off-by: NJan Kiszka <jan.kiszka@siemens.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      
      
      git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6715 c046a42c-6fe2-441c-8c8c-71466251a162
      731b0364
    • A
      monitor: Rework API (Jan Kiszka) · 376253ec
      aliguori 提交于
      Refactor the monitor API and prepare it for decoupled terminals:
      term_print functions are renamed to monitor_* and all monitor services
      gain a new parameter (mon) that will once refer to the monitor instance
      the output is supposed to appear on. However, the argument remains
      unused for now. All monitor command callbacks are also extended by a mon
      parameter so that command handlers are able to pass an appropriate
      reference to monitor output services.
      
      For the case that monitor outputs so far happen without clearly
      identifiable context, the global variable cur_mon is introduced that
      shall once provide a pointer either to the current active monitor (while
      processing commands) or to the default one. On the mid or long term,
      those use case will be obsoleted so that this variable can be removed
      again.
      
      Due to the broad usage of the monitor interface, this patch mostly deals
      with converting users of the monitor API. A few of them are already
      extended to pass 'mon' from the command handler further down to internal
      functions that invoke monitor_printf.
      
      At this chance, monitor-related prototypes are moved from console.h to
      a new monitor.h. The same is done for the readline API.
      Signed-off-by: NJan Kiszka <jan.kiszka@siemens.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      
      
      git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6711 c046a42c-6fe2-441c-8c8c-71466251a162
      376253ec
  18. 13 12月, 2008 1 次提交
  19. 12 11月, 2008 1 次提交
  20. 13 10月, 2008 2 次提交