qemu-e2k/hw/display
Marc-André Lureau 9e5a25f1c2 qxl: keep going if reaching guest bug on empty area
Xorg server hangs when using xfig and typing a text with space:
 #0  qxl_wait_for_io_command (qxl=<value optimized out>) at qxl_io.c:47
 #1  0x00007f826a49a299 in qxl_download_box (surface=0x221d030, x1=231, y1=259,
     x2=<value optimized out>, y2=<value optimized out>) at qxl_surface.c:143

       while (!(ram_header->int_pending & QXL_INTERRUPT_IO_CMD))
         usleep (1);

The QXL driver is calling QXL_IO_UPDATE_AREA with an empty area. This
is a guest bug. The call is async and no ack is sent back on guest
bug, so the X server will hang. The driver should be improved to avoid
this situation and also to abort on QXL_INTERRUPT_ERROR. This will be
a different patch series for the driver. However, it is simple enough
to keep qemu running on empty areas update, which is what this patch
provides.

https://bugzilla.redhat.com/show_bug.cgi?id=1151363

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2014-10-15 11:08:34 +02:00
..
ads7846.c savevm: Remove all the unneeded version_minimum_id_old (arm) 2014-05-13 16:09:35 +01:00
blizzard_template.h display: avoid multi-statement macro 2014-01-31 14:47:33 +00:00
blizzard.c hw/display/blizzard.c: Delete unused function blizzard_rgb2yuv 2014-09-29 18:48:47 +01:00
cg3.c memory: add parameter errp to memory_region_init_ram 2014-09-09 13:41:43 +02:00
cirrus_vga_rop2.h
cirrus_vga_rop.h cirrus: Fix host CPU blits 2014-07-11 10:17:02 +02:00
cirrus_vga.c cirrus: Remove non-32bpp cursor drawing 2014-09-30 13:34:09 +02:00
exynos4210_fimd.c savevm: Remove all the unneeded version_minimum_id_old (arm) 2014-05-13 16:09:35 +01:00
framebuffer.c
framebuffer.h
g364fb.c savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
jazz_led.c jazz_led: Add missing break in switch case 2014-05-24 00:07:56 +04:00
Makefile.objs sun4m: Add Sun CG3 framebuffer and corresponding OpenBIOS FCode ROM 2014-02-27 10:01:41 +00:00
milkymist-tmu2.c savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
milkymist-vgafb_template.h milkymist-vgafb: swap pixel data in source buffer 2014-02-04 19:34:30 +01:00
milkymist-vgafb.c savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
omap_dss.c
omap_lcd_template.h hw: use ld_p/st_p instead of ld_raw/st_raw 2014-06-05 16:04:17 +02:00
omap_lcdc.c console: add head to index to qemu consoles. 2014-03-05 09:52:04 +01:00
pl110_template.h display: avoid multi-statement macro 2014-01-31 14:47:33 +00:00
pl110.c console: add head to index to qemu consoles. 2014-03-05 09:52:04 +01:00
pxa2xx_lcd.c hw/display/pxa2xx_lcd.c: Remove unused function pxa2xx_dma_rdst_set 2014-09-29 18:48:47 +01:00
pxa2xx_template.h display: avoid multi-statement macro 2014-01-31 14:47:33 +00:00
qxl-logger.c
qxl-render.c console: stop using PixelFormat 2014-09-05 13:27:11 +02:00
qxl.c qxl: keep going if reaching guest bug on empty area 2014-10-15 11:08:34 +02:00
qxl.h PortioList: Store PortioList in device state 2014-05-05 20:58:33 +02:00
sm501_template.h hw: use ld_p/st_p instead of ld_raw/st_raw 2014-06-05 16:04:17 +02:00
sm501.c memory: add parameter errp to memory_region_init_ram 2014-09-09 13:41:43 +02:00
ssd0303.c savevm: Remove all the unneeded version_minimum_id_old (arm) 2014-05-13 16:09:35 +01:00
ssd0323.c ssd0323: fix buffer overun on invalid state load 2014-05-05 22:15:02 +02:00
tc6393xb_template.h display: avoid multi-statement macro 2014-01-31 14:47:33 +00:00
tc6393xb.c memory: add parameter errp to memory_region_init_ram 2014-09-09 13:41:43 +02:00
tcx.c tcx: Implement hardware acceleration 2014-09-23 22:23:14 +01:00
vga_int.h vga: Add endian to vmstate 2014-09-30 13:34:09 +02:00
vga-helpers.h vga: Rename vga_template.h to vga-helpers.h 2014-09-30 13:34:09 +02:00
vga-isa-mm.c vga: allow non-global vmstate 2014-04-28 10:21:55 +02:00
vga-isa.c vga: allow non-global vmstate 2014-04-28 10:21:55 +02:00
vga-pci.c savevm: Remove all the unneeded version_minimum_id_old (x86) 2014-06-16 04:55:26 +02:00
vga.c vga: Add endian to vmstate 2014-09-30 13:34:09 +02:00
vga.h
vmware_vga.c - Memory: improve error reporting and avoid crashes on hotplug 2014-09-12 16:55:49 +01:00
xenfb.c console: stop using PixelFormat 2014-09-05 13:27:11 +02:00