qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: HATAYAMA Daisuke <d.hatayama@jp.fujitsu.com>
To: Qiao Nuohan <qiaonuohan@cn.fujitsu.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 0/9] Make monitor command 'dump-guest-memory' dump in kdump-compressed format
Date: Wed, 08 May 2013 18:03:54 +0900	[thread overview]
Message-ID: <518A14FA.1040307@jp.fujitsu.com> (raw)
In-Reply-To: <1367911007-13990-1-git-send-email-qiaonuohan@cn.fujitsu.com>


Please add CC list to Kumagai-san, makedumpfile maintainer, and Dave
Anderson in order to let them know this development.

(2013/05/07 16:16), Qiao Nuohan wrote:
> Hi, all
> 
> 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
> 
> These patches are used to make 'dump-guest-memory' be able to dump guest's
> memory in kdump-compressed format. Then vmcore can be much smaller, and
> easily be delivered.
> 

It should be stressed here that compression feature is *regression*.

> 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.
> 
>    the kdump-compressed format is:

Rather than detail of format, qemu people should want to know more
general information about kdump-compressed format. They should think
"What this format?" now. At least the following is needed: the
kdump-compressed format is *linux specific* *linux standard* crash dump
format used in kdump framework.

>                                                 File offset
>    +------------------------------------------+ 0x0
>    |    main header (struct disk_dump_header) |
>    |------------------------------------------+ block 1
>    |    sub header (struct kdump_sub_header)  |
>    |------------------------------------------+ block 2
>    |            1st-dump_bitmap               |
>    |------------------------------------------+ block 2 + X blocks
>    |            2nd-dump_bitmap               | (aligned by block)
>    |------------------------------------------+ block 2 + 2 * X blocks
>    |  page desc for pfn 0 (struct page_desc)  | (aligned by block)
>    |  page desc for pfn 1 (struct page_desc)  |
>    |                    :                     |
>    |  page desc for pfn Z (struct page_desc)  |
>    |------------------------------------------| (not aligned by block)
>    |         page data (pfn 0)                |
>    |         page data (pfn 1)                |
>    |                        :                 |
>    |         page data (pfn Z)                |
>    +------------------------------------------+ offset_eraseinfo
>    |                    :                     |
>    +------------------------------------------+

Layout itself is important information. Not only describing this here,
it's better to put it anywhere of source code or point at IMPLEMENTATION
file in makedumpfile which describes orignal spec.

-- 
Thanks.
HATAYAMA, Daisuke

      parent reply	other threads:[~2013-05-08  9:05 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-07  7:16 [Qemu-devel] [PATCH 0/9] Make monitor command 'dump-guest-memory' dump in kdump-compressed format Qiao Nuohan
2013-05-07  7:16 ` [Qemu-devel] [PATCH 1/9] Add API to manipulate dump_bitmap Qiao Nuohan
2013-05-07 16:14   ` Eric Blake
2013-05-07 16:23     ` Daniel P. Berrange
2013-05-08  8:39     ` qiaonuohan
2013-05-07  7:16 ` [Qemu-devel] [PATCH 2/9] Add API to manipulate cache_data Qiao Nuohan
2013-05-07  7:16 ` [Qemu-devel] [PATCH 3/9] Move include and struct definition to dump.h Qiao Nuohan
2013-05-11 13:36   ` Andreas Färber
2013-05-07  7:16 ` [Qemu-devel] [PATCH 4/9] Add API to create header of vmcore Qiao Nuohan
2013-05-07  7:16 ` [Qemu-devel] [PATCH 5/9] Add API to create data of dump bitmap Qiao Nuohan
2013-05-07  7:16 ` [Qemu-devel] [PATCH 6/9] Add API to create page Qiao Nuohan
2013-05-07  7:16 ` [Qemu-devel] [PATCH 7/9] Add API to free buf used by creating header, bitmap and page Qiao Nuohan
2013-05-07  7:16 ` [Qemu-devel] [PATCH 8/9] Add API to write header, bitmap and page into vmcore Qiao Nuohan
2013-05-07  7:16 ` [Qemu-devel] [PATCH 9/9] Make monitor command 'dump-guest-memory' dump in kdump-compressed format Qiao Nuohan
2013-05-07 17:13   ` Eric Blake
2013-05-08  8:50     ` qiaonuohan
2013-05-08 17:16       ` Eric Blake
2013-05-09  5:27         ` Zhang Xiaohe
2013-05-09 14:51           ` Eric Blake
2013-05-10  1:21             ` Zhang Xiaohe
2013-05-08  9:03 ` HATAYAMA Daisuke [this message]

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=518A14FA.1040307@jp.fujitsu.com \
    --to=d.hatayama@jp.fujitsu.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qiaonuohan@cn.fujitsu.com \
    /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).