1. 26 3月, 2019 1 次提交
  2. 13 3月, 2019 4 次提交
  3. 12 3月, 2019 1 次提交
  4. 07 3月, 2019 1 次提交
    • M
      slirp: use libslirp migration code · d8903441
      Marc-André Lureau 提交于
      slirp migration code uses QEMU vmstate so far, when building WITH_QEMU.
      
      Introduce slirp_state_{load,save,version}() functions to move the
      state saving handling to libslirp side.
      
      So far, the bitstream compatibility should remain equal with current
      QEMU, as this is effectively using the same code, with the same format
      etc. When libslirp is made standalone, we will need some mechanism to
      ensure bitstream compatibility regardless of the libslirp version
      installed. See the FIXME note in the code.
      Signed-off-by: NMarc-André Lureau <marcandre.lureau@redhat.com>
      Message-Id: <20190212162524.31504-3-marcandre.lureau@redhat.com>
      Signed-off-by: NSamuel Thibault <samuel.thibault@ens-lyon.org>
      d8903441
  5. 06 3月, 2019 15 次提交
  6. 05 3月, 2019 3 次提交
  7. 22 2月, 2019 1 次提交
  8. 23 1月, 2019 7 次提交
  9. 21 1月, 2019 1 次提交
  10. 18 1月, 2019 2 次提交
  11. 11 1月, 2019 1 次提交
    • P
      qemu/queue.h: leave head structs anonymous unless necessary · b58deb34
      Paolo Bonzini 提交于
      Most list head structs need not be given a name.  In most cases the
      name is given just in case one is going to use QTAILQ_LAST, QTAILQ_PREV
      or reverse iteration, but this does not apply to lists of other kinds,
      and even for QTAILQ in practice this is only rarely needed.  In addition,
      we will soon reimplement those macros completely so that they do not
      need a name for the head struct.  So clean up everything, not giving a
      name except in the rare case where it is necessary.
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      b58deb34
  12. 18 12月, 2018 1 次提交
    • D
      qmp hmp: Make system_wakeup check wake-up support and run state · fb064112
      Daniel Henrique Barboza 提交于
      The qmp/hmp command 'system_wakeup' is simply a direct call to
      'qemu_system_wakeup_request' from vl.c. This function verifies if
      runstate is SUSPENDED and if the wake up reason is valid before
      proceeding. However, no error or warning is thrown if any of those
      pre-requirements isn't met. There is no way for the caller to
      differentiate between a successful wakeup or an error state caused
      when trying to wake up a guest that wasn't suspended.
      
      This means that system_wakeup is silently failing, which can be
      considered a bug. Adding error handling isn't an API break in this
      case - applications that didn't check the result will remain broken,
      the ones that check it will have a chance to deal with it.
      
      Adding to that, the commit before previous created a new QMP API called
      query-current-machine, with a new flag called wakeup-suspend-support,
      that indicates if the guest has the capability of waking up from suspended
      state. Although such guest will never reach SUSPENDED state and erroring
      it out in this scenario would suffice, it is more informative for the user
      to differentiate between a failure because the guest isn't suspended versus
      a failure because the guest does not have support for wake up at all.
      
      All this considered, this patch changes qmp_system_wakeup to check if
      the guest is capable of waking up from suspend, and if it is suspended.
      After this patch, this is the output of system_wakeup in a guest that
      does not have wake-up from suspend support (ppc64):
      
      (qemu) system_wakeup
      wake-up from suspend is not supported by this guest
      (qemu)
      
      And this is the output of system_wakeup in a x86 guest that has the
      support but isn't suspended:
      
      (qemu) system_wakeup
      Unable to wake up: guest is not in suspended state
      (qemu)
      Reported-by: NBalamuruhan S <bala24@linux.vnet.ibm.com>
      Signed-off-by: NDaniel Henrique Barboza <danielhb413@gmail.com>
      Message-Id: <20181205194701.17836-4-danielhb413@gmail.com>
      Reviewed-by: NMarkus Armbruster <armbru@redhat.com>
      Acked-by: NEduardo Habkost <ehabkost@redhat.com>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NMarkus Armbruster <armbru@redhat.com>
      fb064112
  13. 14 12月, 2018 1 次提交
    • M
      qapi: add conditions to REPLICATION type/commands on the schema · 335d10cd
      Marc-André Lureau 提交于
      Add #if defined(CONFIG_REPLICATION) in generated code, and adjust the
      code accordingly.
      
      Made conditional:
      
      * xen-set-replication, query-xen-replication-status,
        xen-colo-do-checkpoint
      
        Before the patch, we first register the commands unconditionally in
        generated code (requires a stub), then conditionally unregister in
        qmp_unregister_commands_hack().
      
        Afterwards, we register only when CONFIG_REPLICATION.  The command
        fails exactly the same, with CommandNotFound.
      
        Improvement, because now query-qmp-schema is accurate, and we're one
        step closer to killing qmp_unregister_commands_hack().
      
      * enum BlockdevDriver value "replication" in command blockdev-add
      
      * BlockdevOptions variant @replication
      
      and related structures.
      Signed-off-by: NMarc-André Lureau <marcandre.lureau@redhat.com>
      Reviewed-by: NMarkus Armbruster <armbru@redhat.com>
      Message-Id: <20181213123724.4866-23-marcandre.lureau@redhat.com>
      Signed-off-by: NMarkus Armbruster <armbru@redhat.com>
      335d10cd
  14. 27 11月, 2018 1 次提交