qemu-irix/hw
aliguori 2bec46dc97 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
2008-11-24 20:21:41 +00:00
..
ac97.c Add calls to pci_device_save/load 2008-06-21 17:14:50 +00:00
acpi.c Add KVM support to QEMU 2008-11-05 16:04:33 +00:00
adb.c
adlib.c
ads7846.c Remove duplicate device index calculations. 2008-07-01 21:31:54 +00:00
alpha_palcode.c target-alpha: fix syscall error check 2008-11-11 13:42:22 +00:00
an5206.c uImage: rename load_uboot() to load_uimage() (Hollis Blanchard) 2008-11-20 22:14:40 +00:00
apb_pci.c Wrap long lines 2008-05-12 16:13:33 +00:00
apic.c hw/apic.c: use functions from host-utils.h 2008-10-12 20:16:03 +00:00
arm-misc.h Fix warnings that would be caused by ld flag --warn-common 2008-09-17 19:04:14 +00:00
arm_boot.c uImage: rename load_uboot() to load_uimage() (Hollis Blanchard) 2008-11-20 22:14:40 +00:00
arm_gic.c Save/restore for stellaris boards. 2008-07-02 16:48:32 +00:00
arm_pic.c
arm_sysctl.c
arm_timer.c Save/restore for stellaris boards. 2008-07-02 16:48:32 +00:00
armv7m.c
armv7m_nvic.c Fix warnings that would be caused by ld flag --warn-common 2008-09-17 19:04:14 +00:00
audiodev.h ISA version of CS4231A 2008-06-13 10:48:22 +00:00
baum.c Braille device support 2008-04-08 06:01:02 +00:00
baum.h Braille device support 2008-04-08 06:01:02 +00:00
blizzard.c Introduce accessors for DisplayState (Stefano Stabellini) 2008-11-24 19:29:13 +00:00
blizzard_template.h Fix update region size in EPSON blizzard. 2008-04-22 02:52:38 +00:00
boards.h machine struct - specify max_cpus at the per machine level (Jes Sorensen) 2008-10-07 20:39:39 +00:00
bt-hci-csr.c Emulate a serial bluetooth HCI with H4+ extensions and attach to n8x0's UART. 2008-09-28 23:34:13 +00:00
bt-hci.c Add qemu_strndup: qemu_strdup with length limit. 2008-11-09 00:28:40 +00:00
bt-hid.c Bluetooth HIDP emulation on top of usb-hid.c and L2CAP and SDP. 2008-09-29 00:25:17 +00:00
bt-l2cap.c Add L2CAP logic and a virtual SDP server for use in emulated devices. 2008-09-29 00:14:22 +00:00
bt-sdp.c Fix a bad memcpy length (Bruce Rogers). 2008-10-25 00:10:20 +00:00
bt.c Add a "null" bluetooth HCI and a header file for bluetooth. 2008-09-28 23:19:47 +00:00
bt.h Use VHCI to allow the host os to participate in a qemu bluetooth "vlan". 2008-09-29 00:31:41 +00:00
cbus.c Fix undeclared symbol warnings from sparse 2008-10-26 13:43:07 +00:00
cdrom.c
cirrus_vga.c vga optimization (Glauber Costa) 2008-11-24 20:21:41 +00:00
cirrus_vga_rop.h CVE-2007-1320 - Cirrus LGD-54XX "bitblt" heap overflow 2008-05-05 21:26:31 +00:00
cirrus_vga_rop2.h
cs4231.c Wrap long lines 2008-05-12 16:13:33 +00:00
cs4231a.c Disable xLaw debugging 2008-06-21 17:15:00 +00:00
cuda.c
devices.h SM501 emulation for R2D-SH4 2008-11-05 20:24:35 +00:00
dma.c Make DMA bottom-half driven (v2) 2008-10-31 17:25:56 +00:00
ds1225y.c
dummy_m68k.c uImage: rename load_uboot() to load_uimage() (Hollis Blanchard) 2008-11-20 22:14:40 +00:00
e1000.c e1000 VLAN offload emulation (Alex Williamson) 2008-11-21 16:25:17 +00:00
e1000_hw.h Fix few spelling issues in comments 2008-04-11 04:55:07 +00:00
ecc.c
eccmemctl.c Fix buffer overruns (reported by Julian Seward) 2008-06-19 17:38:15 +00:00
eepro100.c Various NICs: Fix suspend/resume of multiple instances, by Jan Kiszka. 2008-07-18 18:02:34 +00:00
eeprom93xx.c
eeprom93xx.h
es1370.c Add calls to pci_device_save/load 2008-06-21 17:14:50 +00:00
esp.c Resurrect the safe part of r5274 2008-10-02 19:14:17 +00:00
etraxfs.c ETRAX-FS: Fix a segfault if pflash drive not found. 2008-11-13 21:10:25 +00:00
etraxfs.h ETRAX: Add NMI support to the watchdog and the interrupt controller. 2008-06-09 23:33:30 +00:00
etraxfs_dma.c ETRAX-FS: Don't schedule DMA processing without active channels. 2008-11-13 21:33:08 +00:00
etraxfs_dma.h ETRAX-FS: Make etraxfs_dmac_run local. 2008-11-04 20:29:29 +00:00
etraxfs_eth.c ETRAX-FS: Drop DMA polling for ethernet. 2008-10-24 09:18:39 +00:00
etraxfs_pic.c ETRAX: Add NMI support to the watchdog and the interrupt controller. 2008-06-09 23:33:30 +00:00
etraxfs_ser.c Avoid refering to CRIS specific cpu-state to be able to use these blocks with other cores. 2008-06-30 11:51:12 +00:00
etraxfs_timer.c Avoid refering to CRIS specific cpu-state to be able to use these blocks with other cores. 2008-06-30 11:51:12 +00:00
fdc.c FDC: Fix data transfer len (Hervé Poussineau) 2008-05-01 19:05:12 +00:00
fdc.h Wire up TC signal from Aux1 to FDC 2008-03-21 18:05:23 +00:00
firmware_abi.h Fix some compiler signed/unsigned char warnings 2008-06-23 17:52:43 +00:00
flash.h Fill in WLAN and BT platform data in CAL area as expected by Maemo. 2008-07-29 14:19:16 +00:00
fmopl.c
fmopl.h
fw_cfg.c Move nographic export to sysemu.h 2008-10-04 07:22:29 +00:00
fw_cfg.h Add common keys to firmware configuration 2008-09-18 18:33:18 +00:00
g364fb.c Introduce accessors for DisplayState (Stefano Stabellini) 2008-11-24 19:29:13 +00:00
g364fb_template.h Introduce accessors for DisplayState (Stefano Stabellini) 2008-11-24 19:29:13 +00:00
grackle_pci.c
gt64xxx.c Fix undeclared symbol warnings from sparse 2008-10-26 13:43:07 +00:00
gumstix.c Set default max_cpus to one. 2008-10-28 10:59:59 +00:00
gus.c Avoid signedness warnings 2008-07-05 13:40:58 +00:00
gusemu.h Fix some signedness issues caught by gcc 4.3 2008-06-08 01:42:47 +00:00
gusemu_hal.c
gusemu_mixer.c Fix some signedness issues caught by gcc 4.3 2008-06-08 01:42:47 +00:00
gustate.h
heathrow_pic.c
hw.h Reintroduce migrate-to-exec: support (Charles Duffy) 2008-11-11 16:46:33 +00:00
i2c.c Fix load width for slave address in i2c_bus_load (Chris Lalancette). 2008-07-29 13:57:48 +00:00
i2c.h Don't use "hz" in identifiers to make AIX happy. 2008-11-12 17:36:08 +00:00
i8254.c
i8259.c Special Mask Mode for i8259 PIC (Sebastian Reichelt). 2008-07-19 09:18:48 +00:00
ide.c Fix media detection on emulated CDROM (Gary Grebus) 2008-11-19 15:03:36 +00:00
integratorcp.c Make DMA bottom-half driven (v2) 2008-10-31 17:25:56 +00:00
iommu.c Fix DMA length bug seen with NetBSD (Cliff Wright) 2008-07-01 19:28:23 +00:00
irq.c
irq.h
isa.h Make DMA bottom-half driven (v2) 2008-10-31 17:25:56 +00:00
isa_mmio.c
jazz_led.c Introduce accessors for DisplayState (Stefano Stabellini) 2008-11-24 19:29:13 +00:00
lm832x.c Remove duplicate device index calculations. 2008-07-01 21:31:54 +00:00
lsi53c895a.c Fix typo when using TARGET_FMT_plx and LSI_DEBUG (Ryan Harper) 2008-11-20 16:46:21 +00:00
m48t59.c
mac_dbdma.c
mac_nvram.c
macio.c
mainstone.c Set default max_cpus to one. 2008-10-28 10:59:59 +00:00
mainstone.h
max111x.c Remove duplicate device index calculations. 2008-07-01 21:31:54 +00:00
max7310.c Remove duplicate device index calculations. 2008-07-01 21:31:54 +00:00
mc146818rtc.c
mcf.h
mcf5206.c
mcf5208.c uImage: rename load_uboot() to load_uimage() (Hollis Blanchard) 2008-11-20 22:14:40 +00:00
mcf_fec.c
mcf_intc.c
mcf_uart.c
mips.h MIPS: remove empty cpu_mips_irqctrl_init() 2008-09-14 16:38:57 +00:00
mips_int.c
mips_jazz.c Set default max_cpus to one. 2008-10-28 10:59:59 +00:00
mips_malta.c Malta & OMAP: add a name to char devices 2008-11-01 00:53:19 +00:00
mips_mipssim.c Set default max_cpus to one. 2008-10-28 10:59:59 +00:00
mips_r4k.c Set default max_cpus to one. 2008-10-28 10:59:59 +00:00
mips_timer.c MIPS: remove empty cpu_mips_irqctrl_init() 2008-09-14 16:38:57 +00:00
mipsnet.c Fix mipsnet device ID, noticed by Vijay Kumar. 2008-03-28 22:29:33 +00:00
mpcore.c
mst_fpga.c Fix undeclared symbol warnings from sparse 2008-10-26 13:43:07 +00:00
musicpal.c Introduce accessors for DisplayState (Stefano Stabellini) 2008-11-24 19:29:13 +00:00
nand.c Fix undeclared symbol warnings from sparse 2008-10-26 13:43:07 +00:00
ne2000.c Various NICs: Fix suspend/resume of multiple instances, by Jan Kiszka. 2008-07-18 18:02:34 +00:00
nseries.c Set default max_cpus to one. 2008-10-28 10:59:59 +00:00
nvram.h Suppress gcc 4.x -Wpointer-sign (included in -Wall) warnings 2008-09-20 08:07:15 +00:00
omap.h Allow attaching devices to OMAP UARTs. 2008-09-20 01:10:32 +00:00
omap1.c Malta & OMAP: add a name to char devices 2008-11-01 00:53:19 +00:00
omap2.c Malta & OMAP: add a name to char devices 2008-11-01 00:53:19 +00:00
omap_clk.c Fix undeclared symbol warnings from sparse 2008-10-26 13:43:07 +00:00
omap_dma.c Fix a bad comparison, spotted by Paul Brook. 2008-07-22 01:57:42 +00:00
omap_dss.c array overflow in hw/stellaris.c and hw/omap_dss.c 2008-08-22 08:57:19 +00:00
omap_i2c.c Omap DPLL & APLL locking logic. 2008-07-21 19:52:54 +00:00
omap_lcd_template.h
omap_lcdc.c Introduce accessors for DisplayState (Stefano Stabellini) 2008-11-24 19:29:13 +00:00
omap_mmc.c Collapse omap peripherals on L4 bus into one io entry (temporarily). 2008-05-18 12:14:41 +00:00
onenand.c Fill in WLAN and BT platform data in CAL area as expected by Maemo. 2008-07-29 14:19:16 +00:00
openpic.c Fix undeclared symbol warnings from sparse 2008-10-26 13:43:07 +00:00
palm.c Set default max_cpus to one. 2008-10-28 10:59:59 +00:00
parallel.c Parallel Port Direction Fix 2008-08-22 08:57:09 +00:00
pc.c Use an option rom instead of boot sector for -kernel 2008-11-08 16:27:07 +00:00
pc.h better type checking for vga (Glauber Costa) 2008-11-24 19:33:59 +00:00
pci.c Make PCI class description tables const 2008-10-02 18:33:50 +00:00
pci.h
pci_host.h
pckbd.c Fix undeclared symbol warnings from sparse 2008-10-26 13:43:07 +00:00
pcmcia.h
pcnet.c Resurrect the safe part of r5274 2008-10-02 19:14:17 +00:00
pcspk.c
pflash_cfi01.c Increase write buffer size in pflash emulation (Thomas Petazzoni). 2008-10-11 09:19:57 +00:00
pflash_cfi02.c Clean up MMIO TLB handling. 2008-06-09 00:20:13 +00:00
piix_pci.c Fix undeclared symbol warnings from sparse 2008-10-26 13:43:07 +00:00
pixel_ops.h
pl011.c Save/restore for stellaris boards. 2008-07-02 16:48:32 +00:00
pl022.c Save/restore for stellaris boards. 2008-07-02 16:48:32 +00:00
pl031.c
pl050.c
pl061.c Save/restore for stellaris boards. 2008-07-02 16:48:32 +00:00
pl080.c Suppress gcc 4.x -Wpointer-sign (included in -Wall) warnings 2008-09-20 08:07:15 +00:00
pl110.c Introduce accessors for DisplayState (Stefano Stabellini) 2008-11-24 19:29:13 +00:00
pl110_template.h
pl181.c
pl190.c Remove bogus DisplayState member. 2008-05-25 10:10:12 +00:00
ppc.c Fix undeclared symbol warnings from sparse 2008-10-26 13:43:07 +00:00
ppc.h Fix undeclared symbol warnings from sparse 2008-10-26 13:43:07 +00:00
ppc4xx.h Suppress gcc 4.x -Wpointer-sign (included in -Wall) warnings 2008-09-20 08:07:15 +00:00
ppc4xx_devs.c Use qemu-log.h 2008-10-04 07:20:07 +00:00
ppc405.h
ppc405_boards.c Set default max_cpus to one. 2008-10-28 10:59:59 +00:00
ppc405_uc.c Use qemu-log.h 2008-10-04 07:20:07 +00:00
ppc_chrp.c Set default max_cpus to one. 2008-10-28 10:59:59 +00:00
ppc_mac.h
ppc_oldworld.c Set default max_cpus to one. 2008-10-28 10:59:59 +00:00
ppc_prep.c Set default max_cpus to one. 2008-10-28 10:59:59 +00:00
prep_pci.c
primecell.h
ps2.c Fix keyboard emulation for ARM versatile board: 2008-04-13 16:08:44 +00:00
ps2.h
ptimer.c Resurrect the safe part of r5274 2008-10-02 19:14:17 +00:00
pxa.h
pxa2xx.c Resurrect the safe part of r5274 2008-10-02 19:14:17 +00:00
pxa2xx_dma.c Suppress gcc 4.x -Wpointer-sign (included in -Wall) warnings 2008-09-20 08:07:15 +00:00
pxa2xx_gpio.c
pxa2xx_keypad.c
pxa2xx_lcd.c Introduce accessors for DisplayState (Stefano Stabellini) 2008-11-24 19:29:13 +00:00
pxa2xx_mmci.c
pxa2xx_pcmcia.c
pxa2xx_pic.c
pxa2xx_template.h Fix RGBT 5:5:5 drawing on pxa2xx lcd (Lars Munch) 2008-11-03 01:08:14 +00:00
pxa2xx_timer.c Resurrect the safe part of r5274 2008-10-02 19:14:17 +00:00
r2d.c SM501 emulation for R2D-SH4 2008-11-05 20:24:35 +00:00
rc4030.c Don't use "hz" in identifiers to make AIX happy. 2008-11-12 17:36:08 +00:00
realview.c Set default max_cpus to one. 2008-10-28 10:59:59 +00:00
realview_gic.c
rtl8139.c Fix undeclared symbol warnings from sparse 2008-10-26 13:43:07 +00:00
sb16.c
sbi.c
scsi-disk.c Correct SCSI error reporting (Laurent Vivier) 2008-10-11 09:33:03 +00:00
scsi-disk.h
scsi-generic.c scsi-generic: correct error management 2008-10-17 08:08:56 +00:00
scsi.h ESP: Add it_shift parameter (Hervé Poussineau) 2008-04-09 16:32:48 +00:00
sd.c Enable SD card on creation. 2008-06-02 00:55:08 +00:00
sd.h Add basic OMAP2 chip support. 2008-04-14 21:05:22 +00:00
serial.c Add a comment about masking of CTI interrupt in 16550A UART. 2008-09-20 01:15:04 +00:00
sh.h SH4: Switch serial emulation to qemu_irq 2008-11-21 21:06:51 +00:00
sh7750.c SH4: Switch serial emulation to qemu_irq 2008-11-21 21:06:51 +00:00
sh7750_regnames.c
sh7750_regnames.h
sh7750_regs.h
sh_intc.c SH4: Switch serial emulation to qemu_irq 2008-11-21 21:06:51 +00:00
sh_intc.h SH4: Use qemu_irq in timer emulation. 2008-11-21 21:06:42 +00:00
sh_serial.c SH4: Switch serial emulation to qemu_irq 2008-11-21 21:06:51 +00:00
sh_timer.c SH4: Use qemu_irq in timer emulation. 2008-11-21 21:06:42 +00:00
sharpsl.h Provide basic emulation for Sharp SL-6000 PDA (Tosa), Dmitry Baryshkov. 2008-06-02 01:33:11 +00:00
shix.c Make DMA bottom-half driven (v2) 2008-10-31 17:25:56 +00:00
slavio_intctl.c Wrap long lines 2008-05-12 16:13:33 +00:00
slavio_misc.c Halt the CPU using a qemu_irq 2008-11-02 10:51:05 +00:00
slavio_serial.c Fix NetBSD keyboard problem 2008-07-02 15:17:21 +00:00
slavio_timer.c Wrap long lines 2008-05-12 16:13:33 +00:00
sm501.c SM501 emulation for R2D-SH4 2008-11-05 20:24:35 +00:00
sm501_template.h SM501 emulation for R2D-SH4 2008-11-05 20:24:35 +00:00
smbus.c
smbus.h
smbus_eeprom.c Fix smbus_eeprom.c compile with DEBUG (spotted by Duilio Protti). 2008-06-02 01:48:27 +00:00
smc91c111.c
soc_dma.c Fix undeclared symbol warnings from sparse 2008-10-26 13:43:07 +00:00
soc_dma.h Handle on-chip DMA controllers in one place, convert OMAP DMA to use it. 2008-07-21 20:40:22 +00:00
sparc32_dma.c
sparc32_dma.h
spitz.c Set default max_cpus to one. 2008-10-28 10:59:59 +00:00
ssd0303.c Introduce accessors for DisplayState (Stefano Stabellini) 2008-11-24 19:29:13 +00:00
ssd0323.c Introduce accessors for DisplayState (Stefano Stabellini) 2008-11-24 19:29:13 +00:00
ssi-sd.c Save/restore for stellaris boards. 2008-07-02 16:48:32 +00:00
stellaris.c Set default max_cpus to one. 2008-10-28 10:59:59 +00:00
stellaris_enet.c Save/restore for stellaris boards. 2008-07-02 16:48:32 +00:00
stellaris_input.c Save/restore for stellaris boards. 2008-07-02 16:48:32 +00:00
sun4c_intctl.c Wrap long lines 2008-05-12 16:13:33 +00:00
sun4m.c Use qemu_ram_alloc 2008-11-05 19:25:39 +00:00
sun4m.h Halt the CPU using a qemu_irq 2008-11-02 10:51:05 +00:00
sun4u.c Use qemu_ram_alloc 2008-11-05 19:25:39 +00:00
tc6393xb.c Introduce accessors for DisplayState (Stefano Stabellini) 2008-11-24 19:29:13 +00:00
tc6393xb_template.h Introduce accessors for DisplayState (Stefano Stabellini) 2008-11-24 19:29:13 +00:00
tc58128.c Fix undeclared symbol warnings from sparse 2008-10-26 13:43:07 +00:00
tcx.c Introduce accessors for DisplayState (Stefano Stabellini) 2008-11-24 19:29:13 +00:00
tmp105.c Resurrect the safe part of r5274 2008-10-02 19:14:17 +00:00
tosa.c tc6393xb: non-accelerated FB support (Dmitry Baryshkov). 2008-11-04 09:04:41 +00:00
tsc210x.c Fix undeclared symbol warnings from sparse 2008-10-26 13:43:07 +00:00
tsc2005.c Fix undeclared symbol warnings from sparse 2008-10-26 13:43:07 +00:00
tusb6010.c Fix undeclared symbol warnings from sparse 2008-10-26 13:43:07 +00:00
twl92230.c Don't use "hz" in identifiers to make AIX happy. 2008-11-12 17:36:08 +00:00
unin_pci.c
usb-bt.c Document bluetooth support in qemu-doc. 2008-11-09 02:24:54 +00:00
usb-hid.c Bluetooth HIDP emulation on top of usb-hid.c and L2CAP and SDP. 2008-09-29 00:25:17 +00:00
usb-hub.c
usb-msd.c Add image format option for USB mass-storage devices 2008-08-21 22:24:32 +00:00
usb-musb.c Inventra MUSB-HDRC host-mode USB. 2008-04-22 03:15:10 +00:00
usb-net.c Suppress gcc 4.x -Wpointer-sign (included in -Wall) warnings 2008-09-20 08:07:15 +00:00
usb-ohci.c Fix warnings that would be caused by gcc flag -Wwrite-strings 2008-09-14 06:45:34 +00:00
usb-serial.c Implement "info chardev" command. (Gerd Hoffmann) 2008-10-31 17:31:29 +00:00
usb-uhci.c uhci: Change default transaction lifetime to 32 frames (Max Krasnyansky) 2008-09-11 19:42:00 +00:00
usb-wacom.c Break up vl.h. 2007-11-17 17:14:51 +00:00
usb.c usb: generic packet handler cleanup and documentation (Max Krasnyansky) 2008-08-21 19:29:38 +00:00
usb.h Emulate a USB bluetooth dongle (or HCI Transport layer). 2008-09-29 00:40:44 +00:00
versatile_pci.c
versatilepb.c Set default max_cpus to one. 2008-10-28 10:59:59 +00:00
vga.c vga optimization (Glauber Costa) 2008-11-24 20:21:41 +00:00
vga_int.h vga optimization (Glauber Costa) 2008-11-24 20:21:41 +00:00
vga_template.h
vmmouse.c
vmport.c Silence vmport unless DEBUG is enabled. 2008-08-19 19:13:06 +00:00
vmware_vga.c Introduce accessors for DisplayState (Stefano Stabellini) 2008-11-24 19:29:13 +00:00
wm8750.c Don't use "hz" in identifiers to make AIX happy. 2008-11-12 17:36:08 +00:00
zaurus.c scoop: GPRR reports the state of GPIO lines (Dmitry Baryshkov). 2008-11-04 08:49:17 +00:00