From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:38824) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RkYDA-0002Se-CS for qemu-devel@nongnu.org; Tue, 10 Jan 2012 04:41:48 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RkYD5-0006YQ-SG for qemu-devel@nongnu.org; Tue, 10 Jan 2012 04:41:44 -0500 Received: from goliath.siemens.de ([192.35.17.28]:30990) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RkYD5-0006YH-FV for qemu-devel@nongnu.org; Tue, 10 Jan 2012 04:41:39 -0500 Message-ID: <4F0C07C4.2080504@siemens.com> Date: Tue, 10 Jan 2012 10:41:24 +0100 From: Jan Kiszka MIME-Version: 1.0 References: <4F03E735.2050804@cn.fujitsu.com> <4F0BEC4F.9030904@cn.fujitsu.com> In-Reply-To: <4F0BEC4F.9030904@cn.fujitsu.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [RFC][PATCT 0/14 v4] dump memory when host pci device is used by guest List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Wen Congyang Cc: qemu-devel On 2012-01-10 08:44, Wen Congyang wrote: > Hi, Jan Kiszka > Do you have any time to review this patchset? Will try to find some. BTW, the title of this cover letter is a bit misleading. This series is about introducing a new, dedicated memory dump mechanism. Jan > > Thanks > Wen Congyang > > At 01/04/2012 01:44 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 >> >> We have determined to introduce a new command dump to dump memory. The core >> file's format can be elf. >> >> Note: >> 1. The guest should be x86 or x86_64. The other arch is not supported. >> 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. 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. >> >> Change 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. >> >> Change from v2 to v3: >> 1. address Jan Kiszka's comment >> >> Changes from v1 to v2: >> 1. fix virt addr in the vmcore. >> >> Wen Congyang (14): >> Add API to create memory mapping list >> Add API to check whether a physical address is I/O address >> target-i386: implement cpu_get_memory_mapping() >> Add API to get memory mapping >> target-i386: Add API to write elf notes to core file >> target-i386: Add API to add extra memory mapping >> target-i386: add API to get dump info >> introduce a new monitor command 'dump' to dump guest's memory >> run dump at the background >> support detached dump >> support to cancel the current dumping >> support to set dumping speed >> support to query dumping status >> auto cancel dumping after vm state is changed to run >> >> Makefile.target | 11 +- >> cpu-all.h | 18 + >> cpu-common.h | 2 + >> dump.c | 796 +++++++++++++++++++++++++++++++++++++++++++++++ >> dump.h | 14 + >> exec.c | 20 ++ >> hmp-commands.hx | 47 +++ >> hmp.c | 24 ++ >> hmp.h | 3 + >> memory_mapping.c | 185 +++++++++++ >> memory_mapping.h | 39 +++ >> monitor.c | 10 + >> qapi-schema.json | 54 ++++ >> qmp-commands.hx | 117 +++++++ >> target-i386/arch-dump.c | 574 ++++++++++++++++++++++++++++++++++ >> 15 files changed, 1909 insertions(+), 5 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 >> >> > -- Siemens AG, Corporate Technology, CT T DE IT 1 Corporate Competence Center Embedded Linux