From patchwork Tue Jun 5 17:24:45 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Luiz Capitulino X-Patchwork-Id: 163116 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id C212BB6F9A for ; Wed, 6 Jun 2012 03:55:10 +1000 (EST) Received: from localhost ([::1]:37568 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SbxWJ-0003hl-DG for incoming@patchwork.ozlabs.org; Tue, 05 Jun 2012 13:26:15 -0400 Received: from eggs.gnu.org ([208.118.235.92]:54227) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SbxVS-00028N-AA for qemu-devel@nongnu.org; Tue, 05 Jun 2012 13:25:26 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SbxVK-00014s-48 for qemu-devel@nongnu.org; Tue, 05 Jun 2012 13:25:19 -0400 Received: from mx1.redhat.com ([209.132.183.28]:40037) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SbxVJ-00014k-Sq for qemu-devel@nongnu.org; Tue, 05 Jun 2012 13:25:14 -0400 Received: from int-mx12.intmail.prod.int.phx2.redhat.com (int-mx12.intmail.prod.int.phx2.redhat.com [10.5.11.25]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id q55HP9m3027381 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Tue, 5 Jun 2012 13:25:09 -0400 Received: from localhost (ovpn-116-79.ams2.redhat.com [10.36.116.79]) by int-mx12.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id q55HP73A032197; Tue, 5 Jun 2012 13:25:08 -0400 From: Luiz Capitulino To: qemu-devel@nongnu.org Date: Tue, 5 Jun 2012 14:24:45 -0300 Message-Id: <1338917108-3965-7-git-send-email-lcapitulino@redhat.com> In-Reply-To: <1338917108-3965-1-git-send-email-lcapitulino@redhat.com> References: <1338917108-3965-1-git-send-email-lcapitulino@redhat.com> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.25 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 209.132.183.28 Cc: aliguori@us.ibm.com Subject: [Qemu-devel] [PATCH 06/29] Add API to get memory mapping without do paging X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org From: Wen Congyang crash does not need the virtual address and physical address mapping, and the mapping does not include the memory that is not referenced by the page table. crash does not use the virtual address, so we can create the mapping for all physical memory(virtual address is always 0). This patch provides a API to do this thing, and it will be used in the following patch. Signed-off-by: Wen Congyang Signed-off-by: Luiz Capitulino --- memory_mapping.c | 9 +++++++++ memory_mapping.h | 3 +++ 2 files changed, 12 insertions(+) diff --git a/memory_mapping.c b/memory_mapping.c index 627397a..adb1595 100644 --- a/memory_mapping.c +++ b/memory_mapping.c @@ -211,3 +211,12 @@ int qemu_get_guest_memory_mapping(MemoryMappingList *list) return 0; } #endif + +void qemu_get_guest_simple_memory_mapping(MemoryMappingList *list) +{ + RAMBlock *block; + + QLIST_FOREACH(block, &ram_list.blocks, next) { + create_new_memory_mapping(list, block->offset, 0, block->length); + } +} diff --git a/memory_mapping.h b/memory_mapping.h index 7f3c256..190de12 100644 --- a/memory_mapping.h +++ b/memory_mapping.h @@ -60,6 +60,9 @@ static inline int qemu_get_guest_memory_mapping(MemoryMappingList *list) } #endif +/* get guest's memory mapping without do paging(virtual address is 0). */ +void qemu_get_guest_simple_memory_mapping(MemoryMappingList *list); + #else /* We use MemoryMappingList* in cpu-all.h */