Commit 9861b71f authored by Peter Maydell's avatar Peter Maydell
Browse files

Merge remote-tracking branch 'remotes/juanquintela/tags/migration/20150707' into staging



migration/next for 20150707

# gpg: Signature made Tue Jul  7 13:56:30 2015 BST using RSA key ID 5872D723
# gpg: Good signature from "Juan Quintela <quintela@redhat.com>"
# gpg:                 aka "Juan Quintela <quintela@trasno.org>"

* remotes/juanquintela/tags/migration/20150707: (28 commits)
  migration: extend migration_bitmap
  migration: protect migration_bitmap
  check_section_footers: Check the correct section_id
  migration: Add migration events on target side
  migration: Make events a capability
  migration: create migration event
  migration: No need to call trace_migrate_set_state()
  migration: Use always helper to set state
  migration: ensure we start in NONE state
  migration: Use cmpxchg correctly
  migration: Add configuration section
  vmstate: Create optional sections
  global_state: Make section optional
  migration: create new section to store global state
  runstate: migration allows more transitions now
  runstate: Add runstate store
  Fix older machine type compatibility on power with section footers
  Fail more cleanly in mismatched RAM cases
  Sanity check RDMA remote data
  Sort destination RAMBlocks to be the same as the source
  ...

Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
parents f2562fbb dd631697
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -473,6 +473,20 @@ Example:
{ "timestamp": {"seconds": 1290688046, "microseconds": 417172},
  "event": "SPICE_MIGRATE_COMPLETED" }

MIGRATION
---------

Emitted when a migration event happens

Data: None.

 - "status": migration status
     See MigrationStatus in ~/qapi-schema.json for possible values

Example:

{"timestamp": {"seconds": 1432121972, "microseconds": 744001},
 "event": "MIGRATION", "data": {"status": "completed"}}

STOP
----
+5 −0
Original line number Diff line number Diff line
@@ -1414,6 +1414,11 @@ static ram_addr_t ram_block_add(RAMBlock *new_block, Error **errp)
        }
    }

    new_ram_size = MAX(old_ram_size,
              (new_block->offset + new_block->max_length) >> TARGET_PAGE_BITS);
    if (new_ram_size > old_ram_size) {
        migration_bitmap_extend(old_ram_size, new_ram_size);
    }
    /* Keep the list sorted from biggest to smallest block.  Unlike QTAILQ,
     * QLIST (which has an RCU-friendly variant) does not have insertion at
     * tail, so save the last element in last_block.
+2 −0
Original line number Diff line number Diff line
@@ -312,6 +312,8 @@ static void pc_compat_2_3(MachineState *machine)
    if (kvm_enabled()) {
        pcms->smm = ON_OFF_AUTO_OFF;
    }
    global_state_set_optional();
    savevm_skip_configuration();
}

static void pc_compat_2_2(MachineState *machine)
+2 −0
Original line number Diff line number Diff line
@@ -295,6 +295,8 @@ static void pc_compat_2_3(MachineState *machine)
    if (kvm_enabled()) {
        pcms->smm = ON_OFF_AUTO_OFF;
    }
    global_state_set_optional();
    savevm_skip_configuration();
}

static void pc_compat_2_2(MachineState *machine)
+3 −0
Original line number Diff line number Diff line
@@ -34,6 +34,7 @@
#include "sysemu/cpus.h"
#include "sysemu/kvm.h"
#include "kvm_ppc.h"
#include "migration/migration.h"
#include "mmu-hash64.h"
#include "qom/cpu.h"

@@ -1851,6 +1852,8 @@ static const TypeInfo spapr_machine_info = {

static void spapr_compat_2_3(Object *obj)
{
    savevm_skip_section_footers();
    global_state_set_optional();
}

static void spapr_compat_2_2(Object *obj)
Loading