vga optimization (Glauber Costa)
commit2bec46dc97571a3c34b18fe4ca198e7bfbdca41f
authoraliguori <aliguori@c046a42c-6fe2-441c-8c8c-71466251a162>
Mon, 24 Nov 2008 20:21:41 +0000 (24 20:21 +0000)
committeraliguori <aliguori@c046a42c-6fe2-441c-8c8c-71466251a162>
Mon, 24 Nov 2008 20:21:41 +0000 (24 20:21 +0000)
treea005e29d9a7346047169901ae046ebe140b9990b
parent5832d1f2f51e1a1991c53ea98c535a619cf03001
vga optimization (Glauber Costa)

Hypervisors like KVM perform badly while doing mmio on
a loop, because it'll generate an exit on each access.
This is the case with VGA, which results in very bad
performance.

In this patch, we map the linear frame buffer as RAM,
make sure it has dirty region tracking enabled, and then
just let the region to be written.

Cleanups suggestions by:
  Stefano Stabellini <stefano.stabellini@eu.citrix.com>

Signed-off-by: Glauber Costa <glommer@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5793 c046a42c-6fe2-441c-8c8c-71466251a162
cpu-all.h
exec.c
hw/cirrus_vga.c
hw/vga.c
hw/vga_int.h