From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1M8DLp-00008e-RE for qemu-devel@nongnu.org; Sun, 24 May 2009 09:02:53 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1M8DLl-00006w-5l for qemu-devel@nongnu.org; Sun, 24 May 2009 09:02:53 -0400 Received: from [199.232.76.173] (port=33948 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1M8DDp-0005zj-2A for qemu-devel@nongnu.org; Sun, 24 May 2009 08:54:37 -0400 Received: from mx2.redhat.com ([66.187.237.31]:49167) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1M8A1T-00014B-9x for qemu-devel@nongnu.org; Sun, 24 May 2009 05:29:39 -0400 Received: from int-mx2.corp.redhat.com (int-mx2.corp.redhat.com [172.16.27.26]) by mx2.redhat.com (8.13.8/8.13.8) with ESMTP id n4O9TcwS008263 for ; Sun, 24 May 2009 05:29:38 -0400 From: Avi Kivity Date: Sun, 24 May 2009 12:29:32 +0300 Message-Id: <1243157375-14329-1-git-send-email-avi@redhat.com> Subject: [Qemu-devel] [PATCH 0/3] Object-based physical memory management List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Currently, qemu manages physical memory at a page granularity (and with subpage, at a byte granularity). This is expensive in memory and runtime (requiring 8 bytes per page, and likely a cache miss on access), and is difficult to manage: devices must remember their ranges so they can free them, and the memory system has no insight into how memory is laid out. This patchset introduces object-based memory management. The first patch adds objects and functions for memory regions; the second patch wraps this for PCI; and the third converts RTL8139 as an example. Avi Kivity (3): Add PhysicalMemoryRegion type Add PCI memory region registration Convert RTL8139 to use PCI memory regitration facility cpu-all.h | 13 +++++++++ exec.c | 42 +++++++++++++++++++++++++++++++ hw/pci.c | 78 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++- hw/pci.h | 26 +++++++++++++++++++ hw/rtl8139.c | 15 +++------- 5 files changed, 163 insertions(+), 11 deletions(-)