qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v4 0/9] Make 'dump-guest-memory' dump in kdump-c


From: Qiao Nuohan
Subject: Re: [Qemu-devel] [PATCH v4 0/9] Make 'dump-guest-memory' dump in kdump-compressed format
Date: Wed, 05 Jun 2013 09:29:19 +0800
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.5) Gecko/20120607 Thunderbird/10.0.5

> I haven't reviewed it yet, but we need introspection support before merging
> this.

Hello Luiz,

Is it possible to get this reviewed, or I am supposed to wait until
introspection support being settled?

On 05/28/2013 10:50 AM, address@hidden wrote:
From: Qiao Nuohan<address@hidden>

Hi, all

The last version is here:
http://lists.gnu.org/archive/html/qemu-devel/2013-05/msg02280.html

Command 'dump-guest-memory' was introduced to dump guest's memory. But the
vmcore's format is only elf32 or elf64. The message is here:
http://lists.gnu.org/archive/html/qemu-devel/2012-04/msg03379.html

For migration, 'dump-guest-memory' is supposed to support compression feature.
Because of the regression, the missing of compression feature, we post these
patches to make 'dump-guest-memory' be able to dump guest's in kdump-compressed
format. Then vmcore can be much smaller, and easily be delivered.

The kdump-compressed format is *linux specific* *linux standard* crash dump
format used in kdump framework. The kdump-compressed format is readable only
with the crash utility, and it can be smaller than the ELF format because of
the compression support.

Note, similar to 'dump-guest-memory':
1. The guest should be x86 or x86_64. The other arch is not supported now.
2. If the OS is in the second kernel, gdb may not work well, and crash can
    work by specifying '--machdep phys_addr=xxx' in the command line. The
    reason is that the second kernel will update the page table, and we can
    not get the page table for the first kernel.
3. The cpu's state is stored in QEMU note.
4. The vmcore are able to be compressed with zlib, lzo or snappy. zlib is
    available by default, and option '--enable-lzo' or '--enable-snappy'
    should be used with configure to make lzo or snappy available.

Changelog:
Changes from v3 to v4:
1. change to avoid conflict with Andreas's patches
2. rebase

Changes from v2 to v3:
1. Address Eric's comment

Changes from v1 to v2:
1. Address Eric&  Daniel's comment: fix manner of string copy.
2. Address Eric's comment: replace reinventing new constants by using the
    ready-made ones accoring.
3. Address Andreas's comment: remove useless include.


Qiao Nuohan (9):
   dump: Add API to manipulate dump_bitmap
   dump: Add API to manipulate cache_data
   dump: Move struct definition into dump_memroy.h
   dump: Add API to create header of vmcore
   dump: Add API to create data of dump bitmap
   dump: Add API to create page
   dump: Add API to free memory used by creating header, bitmap and page
   dump: Add API to write header, bitmap and page into vmcore
   dump: Make kdump-compressed format available for 'dump-guest-memory'

  Makefile.target              |    1 +
  cache_data.c                 |  121 ++++++
  configure                    |   50 +++
  dump.c                       |  866 ++++++++++++++++++++++++++++++++++++++++--
  dump_bitmap.c                |  171 +++++++++
  hmp-commands.hx              |   12 +-
  hmp.c                        |   23 +-
  include/cache_data.h         |   56 +++
  include/dump_bitmap.h        |   60 +++
  include/sysemu/dump_memory.h |  178 +++++++++
  qapi-schema.json             |   22 +-
  qmp-commands.hx              |    6 +-
  12 files changed, 1526 insertions(+), 40 deletions(-)
  create mode 100644 cache_data.c
  create mode 100644 dump_bitmap.c
  create mode 100644 include/cache_data.h
  create mode 100644 include/dump_bitmap.h
  create mode 100644 include/sysemu/dump_memory.h




--
Regards
Qiao Nuohan



reply via email to

[Prev in Thread] Current Thread [Next in Thread]