From f0138a63a41fe26bcef61d031ae53d872d12a992 Mon Sep 17 00:00:00 2001 From: Anthony Liguori Date: Fri, 18 Dec 2009 08:08:07 +1000 Subject: Make sure to enable dirty tracking of VBE vram mapping Apparently, VBE maps the VGA vram to a fixed physical location. KVM requires that all mappings of the VGA vram have dirty tracking enabled on them. Any access to the VGA vram through the VBE mapping currently fails to result in dirty page tracking updates causing a black screen. This is the true root cause of VMware VGA not working correctly under KVM and likely also an issue with some of the std-vga black screen issues too. Cirrus does not enable VBE so it would not be a problem when using Cirrus. Signed-off-by: Anthony Liguori Rebased-by: Dave Airlie --- hw/vga-pci.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) (limited to 'hw/vga-pci.c') diff --git a/hw/vga-pci.c b/hw/vga-pci.c index e8cc0247ad..eef78ed08a 100644 --- a/hw/vga-pci.c +++ b/hw/vga-pci.c @@ -106,12 +106,7 @@ static int pci_vga_initfn(PCIDevice *dev) PCI_BASE_ADDRESS_MEM_PREFETCH, vga_map); } -#ifdef CONFIG_BOCHS_VBE - /* XXX: use optimized standard vga accesses */ - cpu_register_physical_memory(VBE_DISPI_LFB_PHYSICAL_ADDRESS, - VGA_RAM_SIZE, s->vram_offset); -#endif - + vga_init_vbe(s); /* ROM BIOS */ rom_add_vga(VGABIOS_FILENAME); return 0; -- cgit 1.4.1