[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 00/12 v13] introducing a new, dedicated guest me
From: |
Wen Congyang |
Subject: |
Re: [Qemu-devel] [PATCH 00/12 v13] introducing a new, dedicated guest memory dump mechanism |
Date: |
Thu, 19 Apr 2012 19:00:39 +0800 |
User-agent: |
Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.9) Gecko/20100413 Fedora/3.0.4-2.fc13 Thunderbird/3.0.4 |
At 04/18/2012 08:49 PM, Wen Congyang Wrote:
> Hi, all
>
> 'virsh dump' can not work when host pci device is used by guest. We have
> discussed this issue here:
> http://lists.nongnu.org/archive/html/qemu-devel/2011-10/msg00736.html
>
> The last version is here:
> http://lists.nongnu.org/archive/html/qemu-devel/2012-04/msg02440.html
>
> We have determined to introduce a new command dump-guest-memory to dump
> guest's memory. The core file's format is elf32 or elf64.
>
> Note:
> 1. The guest should be x86 or x86_64. The other arch is not supported now.
> 2. If you use old gdb, gdb may crash. I use gdb-7.3.1, and it does not crash.
> 3. 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.
> 4. The cpu's state is stored in QEMU note. You neet to modify crash to use
> it to calculate phys_base.
> 5. If the guest OS is 32 bit and the memory size is larger than 4G, the vmcore
> is elf64 format. You should use the gdb which is built with
> --enable-64-bit-bfd.
>
> Changes from v12 to v13:
> 1. Support the fd that is is associated with a pipe, socket, or FIFO
Hi, Luiz:
Do you have time to review it? And do you want to wait for Jan and/or
Anthony's ack for this verion?
Thanks
Wen Congyang
>
> Changes from v11 to v12:
> 1. rebase and resend
>
> Changes from v10 to v11:
> 1. addressed Luiz's and Hatayam's comment
> 2. fix a bug about filtering feature
>
> Changes from v9 to v10:
> 1. fix some bug
> 2. addressed Luiz's and Hatayam's comment
> 3. remove cancel and query command
>
> Changes from v8 to v9:
> 1. remove async support(it will be reimplemented after QAPI async commands
> support
> is finished)
> 2. fix some typo error
>
> Changes from v7 to v8:
> 1. addressed Hatayama's comments
>
> Changes from v6 to v7:
> 1. addressed Jan's comments
> 2. fix some bugs
> 3. store cpu's state into the vmcore
>
> Changes from v5 to v6:
> 1. allow user to dump a fraction of the memory
> 2. fix some bugs
>
> Changes from v4 to v5:
> 1. convert the new command dump to QAPI
>
> Changes from v3 to v4:
> 1. support it to run asynchronously
> 2. add API to cancel dumping and query dumping progress
> 3. add API to control dumping speed
> 4. auto cancel dumping when the user resumes vm, and the status is failed.
>
> Changes from v2 to v3:
> 1. address Jan Kiszka's comment
>
> Changes from v1 to v2:
> 1. fix virt addr in the vmcore.
>
> Wen Congyang (12):
> Add API to create memory mapping list
> Add API to check whether a physical address is I/O address
> implement cpu_get_memory_mapping()
> Add API to check whether paging mode is enabled
> Add API to get memory mapping
> Add API to get memory mapping without do paging
> target-i386: Add API to write elf notes to core file
> target-i386: Add API to write cpu status to core file
> target-i386: add API to get dump info
> target-i386: Add API to get note's size
> make gdb_id() generally avialable and rename it to cpu_index()
> introduce a new monitor command 'dump-guest-memory' to dump guest's
> memory
>
> Makefile.target | 3 +
> configure | 8 +
> cpu-all.h | 70 +++
> cpu-common.h | 2 +
> dump.c | 872
> +++++++++++++++++++++++++++++++++++++
> dump.h | 23 +
> elf.h | 5 +
> exec.c | 9 +
> gdbstub.c | 19 +-
> gdbstub.h | 9 +
> hmp-commands.hx | 28 ++
> hmp.c | 22 +
> hmp.h | 1 +
> memory_mapping.c | 249 +++++++++++
> memory_mapping.h | 68 +++
> qapi-schema.json | 33 ++
> qmp-commands.hx | 38 ++
> target-i386/arch_dump.c | 449 +++++++++++++++++++
> target-i386/arch_memory_mapping.c | 271 ++++++++++++
> 19 files changed, 2165 insertions(+), 14 deletions(-)
> create mode 100644 dump.c
> create mode 100644 dump.h
> create mode 100644 memory_mapping.c
> create mode 100644 memory_mapping.h
> create mode 100644 target-i386/arch_dump.c
> create mode 100644 target-i386/arch_memory_mapping.c
>
>
>
>
>
>
- [Qemu-devel] [PATCH 05/12 v13] Add API to get memory mapping, (continued)
- [Qemu-devel] [PATCH 05/12 v13] Add API to get memory mapping, Wen Congyang, 2012/04/18
- [Qemu-devel] [PATCH 06/12 v13] Add API to get memory mapping without do paging, Wen Congyang, 2012/04/18
- [Qemu-devel] [PATCH 07/12 v13] target-i386: Add API to write elf notes to core file, Wen Congyang, 2012/04/18
- [Qemu-devel] [PATCH 08/12 v13] target-i386: Add API to write cpu status to core file, Wen Congyang, 2012/04/18
- [Qemu-devel] [PATCH 09/12 v13] target-i386: add API to get dump info, Wen Congyang, 2012/04/18
- [Qemu-devel] [PATCH 10/12 v13] target-i386: Add API to get note's size, Wen Congyang, 2012/04/18
- [Qemu-devel] [PATCH 11/12 v13] make gdb_id() generally avialable and rename it to cpu_index(), Wen Congyang, 2012/04/18
- [Qemu-devel] [PATCH 12/12 v13] introduce a new monitor command 'dump-guest-memory' to dump guest's memory, Wen Congyang, 2012/04/18
- Re: [Qemu-devel] [PATCH 00/12 v13] introducing a new, dedicated guest memory dump mechanism, Wen Congyang, 2012/04/18
- Re: [Qemu-devel] [PATCH 00/12 v13] introducing a new, dedicated guest memory dump mechanism,
Wen Congyang <=