vga: Use linear mapping + dirty logging in chain 4 memory access mode
commit80763888bfcb89dddb2f4eeece8ffc2ed91bde40
authorJan Kiszka <jan.kiszka@siemens.com>
Mon, 22 Aug 2011 17:12:12 +0000 (22 19:12 +0200)
committerAnthony Liguori <aliguori@us.ibm.com>
Mon, 22 Aug 2011 19:37:03 +0000 (22 14:37 -0500)
tree2e83ff9249c33705aa57dea82a98db9792688c6e
parentfe55ff6e6114c7382a68a2cf7230f125d4f3a248
vga: Use linear mapping + dirty logging in chain 4 memory access mode

Most VGA memory access modes require MMIO handling as they demand weird
logic to get a byte from or into the video RAM. However, there is one
exception: chain 4 mode with all memory planes enabled for writing. This
mode actually allows lineary mapping, which can then be combined with
dirty logging to accelerate KVM.

This patch accelerates specifically VBE accesses like they are used by
grub in graphical mode. Not only the standard VGA adapter benefits from
this, also vmware and spice in VGA mode.

CC: Gerd Hoffmann <kraxel@redhat.com>
CC: Avi Kivity <avi@redhat.com>
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
hw/vga.c
hw/vga_int.h