From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:58604) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QWkSI-0002mZ-5u for qemu-devel@nongnu.org; Wed, 15 Jun 2011 03:24:03 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QWkSF-000257-BN for qemu-devel@nongnu.org; Wed, 15 Jun 2011 03:24:01 -0400 Received: from thoth.sbs.de ([192.35.17.2]:24919) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QWkSE-00024O-SU for qemu-devel@nongnu.org; Wed, 15 Jun 2011 03:23:59 -0400 Message-ID: <4DF85E09.50808@siemens.com> Date: Wed, 15 Jun 2011 09:23:53 +0200 From: Jan Kiszka MIME-Version: 1.0 References: <4DF8543F.1030106@redhat.com> In-Reply-To: <4DF8543F.1030106@redhat.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] [PATCH v2 01/13] spice: Use cpu_register_physical_memory_log for dirty log enabling List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori , qemu-devel Cc: Gerd Hoffmann Drop outdated dirty log disable/enable around PCI remapping and register the BAR for dirty logging via cpu_register_physical_memory_log. That allows to remove all vga_dirty_log_start/stop references from qxl. CC: Gerd Hoffmann Signed-off-by: Jan Kiszka --- Changes in v2: - don't enable logging for secondary adapter hw/qxl.c | 9 +++------ 1 files changed, 3 insertions(+), 6 deletions(-) diff --git a/hw/qxl.c b/hw/qxl.c index 1906e84..01149ae 100644 --- a/hw/qxl.c +++ b/hw/qxl.c @@ -619,12 +619,10 @@ static void qxl_write_config(PCIDevice *d, uint32_t address, PCIQXLDevice *qxl = DO_UPCAST(PCIQXLDevice, pci, d); VGACommonState *vga = &qxl->vga; - vga_dirty_log_stop(vga); pci_default_write_config(d, address, val, len); if (vga->map_addr && qxl->pci.io_regions[0].addr == -1) { vga->map_addr = 0; } - vga_dirty_log_start(vga); } static void qxl_check_state(PCIQXLDevice *d) @@ -1037,12 +1035,11 @@ static void qxl_map(PCIDevice *pci, int region_num, qxl->io_base = addr; break; case QXL_RAM_RANGE_INDEX: - cpu_register_physical_memory(addr, size, qxl->vga.vram_offset | IO_MEM_RAM); + cpu_register_physical_memory_log(addr, size, + qxl->vga.vram_offset | IO_MEM_RAM, + 0, qxl->id == 0); qxl->vga.map_addr = addr; qxl->vga.map_end = addr + size; - if (qxl->id == 0) { - vga_dirty_log_start(&qxl->vga); - } break; case QXL_ROM_RANGE_INDEX: cpu_register_physical_memory(addr, size, qxl->rom_offset | IO_MEM_ROM); -- 1.7.1