qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Peter Xu <peterx@redhat.com>
To: qemu-devel@nongnu.org
Cc: drjones@redhat.com, lersek@redhat.com, armbru@redhat.com,
	peterx@redhat.com, lcapitulino@redhat.com, famz@redhat.com,
	pbonzini@redhat.com
Subject: [Qemu-devel] [PATCH v3 00/12] Add basic "detach" support for dump-guest-memory
Date: Mon, 30 Nov 2015 19:32:08 +0800	[thread overview]
Message-ID: <1448883140-20249-1-git-send-email-peterx@redhat.com> (raw)

v3 changes (patch number corresponds to v2 patch set):
- patch 1
  - fix commit message. no memory leak, only code cleanup [Fam]
- patch 2
  - better documentation for "dump-guest-memory" (new patch 9) [Fam]
- patch 3
  - remove rcu lock/unlock in dump_init() [Fam, Paolo]
  - embed mr pointer into GuestPhysBlock [Paolo]
  - remove global dump state [Paolo]
- patch 4
  - fix memory leak for error [Fam]
  - evt DUMP_COMPLETED data: change to an optional "*error" [Paolo]
- patch 5
  - fix documents [Fam]
  - change "dump-query" to "query-dump", HMP to "info dump" [Paolo]
- patch 6
  - for query-dump command: define enum for DumpStatus, use "int"
    for written/total [Paolo]
- all
  - reorder the commits as suggested, no fake values [Paolo]
  - split big commit into smaller ones [me]

v2 changes:
- fixed English errors [Drew]
- reordered the "detach" field, first make it optional, then make sure
  it's order is consistent [Drew, Fam]
- added doc for new detach flag [Eric]
- collected error msg even detached [Drew]
- added qmp event DUMP_COMPLETED to notify user [Eric, Fam]
- added "dump-query" QMP & HMP commands to query dump status [Eric]
- "stop" is not allowed when dump in background (also include
  "cont" and "dump-guest-memory") [Fam]
- added codes to calculate how many dump work finished, which could
  be queried from "dump-query" [Laszlo]
- added list to track all used MemoryRegion objects, also ref before
  use [Paolo]
- dump-guest-memory will be forbidden during incoming migrate [Paolo]
- taking rcu lock when collecting memory info [Paolo]

Test Done:
- QMP & HMP
  - test default dump (sync), work as usual
  - test detached dump, command return immediately. When dump
    finished, will receive event DUMP_COMPLETED with a message. 
  - test query-dump before/during/after dump
  - test kdump with zlib compression, w/ and w/o detach
- libvirt
  - test "virsh dump --memory-only" with default format and
    kdump-zlib format, work as usual

Peter Xu (12):
  dump-guest-memory: cleanup: removing dump_{error|cleanup}().
  dump-guest-memory: add "detach" flag for QMP/HMP interfaces.
  dump-guest-memory: using static DumpState, add DumpStatus
  dump-guest-memory: add dump_in_progress() helper function
  dump-guest-memory: introduce dump_process() helper function.
  dump-guest-memory: disable dump when in INMIGRATE state
  dump-guest-memory: add "detach" support
  dump-guest-memory: add qmp event DUMP_COMPLETED
  DumpState: adding total_size and written_size fields
  Dump: add qmp command "query-dump"
  Dump: add hmp command "info dump"
  Dump: enhance the documentations.

 docs/qmp-events.txt             |  14 +++
 dump.c                          | 218 ++++++++++++++++++++++++++++++----------
 hmp-commands-info.hx            |  14 +++
 hmp-commands.hx                 |   5 +-
 hmp.c                           |  27 ++++-
 hmp.h                           |   1 +
 include/qemu-common.h           |   4 +
 include/sysemu/dump.h           |  15 +++
 include/sysemu/memory_mapping.h |   4 +
 memory_mapping.c                |   3 +
 qapi-schema.json                |  58 ++++++++++-
 qapi/event.json                 |  10 ++
 qmp-commands.hx                 |  34 ++++++-
 qmp.c                           |  14 +++
 14 files changed, 357 insertions(+), 64 deletions(-)

-- 
2.4.3

             reply	other threads:[~2015-11-30 11:32 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-30 11:32 Peter Xu [this message]
2015-11-30 11:32 ` [Qemu-devel] [PATCH v3 01/12] dump-guest-memory: cleanup: removing dump_{error|cleanup}() Peter Xu
2015-11-30 11:32 ` [Qemu-devel] [PATCH v3 02/12] dump-guest-memory: add "detach" flag for QMP/HMP interfaces Peter Xu
2015-11-30 22:05   ` Eric Blake
2015-12-01  2:18     ` Peter Xu
2015-12-01 15:09       ` Paolo Bonzini
2015-12-02  2:31         ` Peter Xu
2015-11-30 11:32 ` [Qemu-devel] [PATCH v3 03/12] dump-guest-memory: using static DumpState, add DumpStatus Peter Xu
2015-11-30 13:00   ` Paolo Bonzini
2015-12-01  2:57     ` Peter Xu
2015-11-30 22:08   ` Eric Blake
2015-12-01  3:04     ` Peter Xu
2015-11-30 11:32 ` [Qemu-devel] [PATCH v3 04/12] dump-guest-memory: add dump_in_progress() helper function Peter Xu
2015-11-30 11:32 ` [Qemu-devel] [PATCH v3 05/12] dump-guest-memory: introduce dump_process() " Peter Xu
2015-11-30 12:55   ` Paolo Bonzini
2015-12-01  3:12     ` Peter Xu
2015-11-30 11:32 ` [Qemu-devel] [PATCH v3 06/12] dump-guest-memory: disable dump when in INMIGRATE state Peter Xu
2015-11-30 11:32 ` [Qemu-devel] [PATCH v3 07/12] dump-guest-memory: add "detach" support Peter Xu
2015-11-30 11:32 ` [Qemu-devel] [PATCH v3 08/12] dump-guest-memory: add qmp event DUMP_COMPLETED Peter Xu
2015-11-30 22:12   ` Eric Blake
2015-12-01  3:27     ` Peter Xu
2015-11-30 11:32 ` [Qemu-devel] [PATCH v3 09/12] DumpState: adding total_size and written_size fields Peter Xu
2015-11-30 11:32 ` [Qemu-devel] [PATCH v3 10/12] Dump: add qmp command "query-dump" Peter Xu
2015-11-30 12:56   ` Paolo Bonzini
2015-12-01  3:57     ` Peter Xu
2015-12-01  9:54       ` Paolo Bonzini
2015-12-01 12:32         ` Peter Xu
2015-12-01 12:37           ` Paolo Bonzini
2015-12-01 12:45             ` Peter Xu
2015-12-01 12:47               ` Paolo Bonzini
2015-12-01 13:03                 ` Peter Xu
2015-11-30 22:17   ` Eric Blake
2015-12-01  4:40     ` Peter Xu
2015-12-01 13:43       ` Eric Blake
2015-11-30 11:32 ` [Qemu-devel] [PATCH v3 11/12] Dump: add hmp command "info dump" Peter Xu
2015-11-30 11:32 ` [Qemu-devel] [PATCH v3 12/12] Dump: enhance the documentations Peter Xu
2015-11-30 22:22   ` Eric Blake
2015-12-01  4:21     ` Peter Xu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1448883140-20249-1-git-send-email-peterx@redhat.com \
    --to=peterx@redhat.com \
    --cc=armbru@redhat.com \
    --cc=drjones@redhat.com \
    --cc=famz@redhat.com \
    --cc=lcapitulino@redhat.com \
    --cc=lersek@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).