[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(-)
>
>
- [Qemu-devel] [PATCH v9 08/14] dump: add API to write dump header, (continued)
- [Qemu-devel] [PATCH v9 08/14] dump: add API to write dump header, qiaonuohan, 2014/02/18
- [Qemu-devel] [PATCH v9 01/14] dump: const-qualify the buf of WriteCoreDumpFunction, qiaonuohan, 2014/02/18
- [Qemu-devel] [PATCH v9 09/14] dump: add API to write dump_bitmap, qiaonuohan, 2014/02/18
- [Qemu-devel] [PATCH v9 04/14] dump: add API to write vmcore, qiaonuohan, 2014/02/18
- [Qemu-devel] [PATCH v9 14/14] dump: add 'query-dump-guest-memory-capability' command, qiaonuohan, 2014/02/18
- [Qemu-devel] [PATCH v9 03/14] dump: add API to write header of flatten format, qiaonuohan, 2014/02/18
- [Qemu-devel] [PATCH v9 12/14] dump: make kdump-compressed format available for 'dump-guest-memory', qiaonuohan, 2014/02/18
- [Qemu-devel] [PATCH v9 07/14] dump: add members to DumpState and init some of them, qiaonuohan, 2014/02/18
- [Qemu-devel] [PATCH v9 06/14] dump: add support for lzo/snappy, qiaonuohan, 2014/02/18
- [Qemu-devel] [PATCH v9 10/14] dump: add APIs to operate DataCache, qiaonuohan, 2014/02/18
- Re: [Qemu-devel] [PATCH v9 00/14] Make 'dump-guest-memory' dump in kdump-compressed format,
Luiz Capitulino <=