qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v9 00/14] Make 'dump-guest-memory' dump in kdump


From: Luiz Capitulino
Subject: Re: [Qemu-devel] [PATCH v9 00/14] Make 'dump-guest-memory' dump in kdump-compressed format
Date: Fri, 28 Feb 2014 12:05:29 -0500

On Tue, 18 Feb 2014 14:11:24 +0800
qiaonuohan <address@hidden> wrote:

> Hi, all
> 
> The last version is here:
> http://lists.nongnu.org/archive/html/qemu-devel/2014-01/msg03669.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
> 
> Compared with migration, the missing of compression feature means regression
> to 'dump-guest-memory'. So 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 to 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. To get more detailed information about
> kdump-compressed format, please refer to the following URL:
> http://sourceforge.net/projects/makedumpfile/

Applied to the qmp branch, thanks.

PS: I had to fix a trivial conflict in configure because of commit
95c6bff3561ee.


> 
> Note:
> 1. The guest should be x86/x86_64/s390x. 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 specified with 'configure' to make lzo or snappy available.
> 
> Changelog:
> Changes from v8 to v9:
> 1. add Ekaterina's patch(support s390x) into series
> 2. modify query-dump-guest-memory-capability according to Paolo Bonzini's
>    suggestion
> 3. fix compiling error on 32-bit host
> 
> Changes from v7 to v8:
> 1. rebase get_max_mapnr()
> 2. fix bug of using dh->block_size directly in create_header64()
> 3. abandon using static variables in get_next_page()
> 4. redefine 'struct PageDesc' to 'struct QEMU_PACKED PageDescriptor'
> 5. add return when format checking fails
> Changes from v6 to v7:
> 1. support BE host
> 2. abandon non-flatten format to avoid using seek on vmcore
> 3. abandon using of very large array
> 4. use get_next_page to replace the iteration of guest's pages
> 5. abandon the support of HMP
> 
> Changes from v5 to v6:
> 1. add run-time check for compression format(lzo/snappy)
> 2. address Stefan's comments about reusing code and coding style
> 3. update the version of kdump-compressed format to 6th
> 4. resplit the patches
> 5. Add 'query-dump-guest-memory-capability' command
> 
> Changes from v4 to v5:
> 1. using flatten format to avoid using temporary files according to Stefan's
>    comments
> 2. Address Andreas's comments about coding style
> 
> 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.
> 
> qiaonuohan (14):
>   dump: const-qualify the buf of WriteCoreDumpFunction
>   dump: add argument to write_elfxx_notes
>   dump: add API to write header of flatten format
>   dump: add API to write vmcore
>   dump: add API to write elf notes to buffer
>   dump: add support for lzo/snappy
>   dump: add members to DumpState and init some of them
>   dump: add API to write dump header
>   dump: add API to write dump_bitmap
>   dump: add APIs to operate DataCache
>   dump: add API to write dump pages
>   dump: make kdump-compressed format available for 'dump-guest-memory'
>   Define the architecture for compressed dump format
>   dump: add 'query-dump-guest-memory-capability' command
> 
>  configure             |   54 +++
>  dump.c                |  960 
> ++++++++++++++++++++++++++++++++++++++++++++++++-
>  hmp.c                 |    5 +-
>  include/qom/cpu.h     |    3 +-
>  include/sysemu/dump.h |  138 +++++++
>  qapi-schema.json      |   49 +++-
>  qmp-commands.hx       |   27 ++-
>  target-i386/cpu.h     |    2 +
>  target-s390x/cpu.h    |    1 +
>  9 files changed, 1219 insertions(+), 20 deletions(-)
> 
> 




reply via email to

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