xemu/hw/display
Marc-André Lureau 93f874fe9d virtio-gpu: fix crashes upon warm reboot with vga mode
With vga=775 on the Linux command line a first boot of the VM running
Linux works fine. After a warm reboot it crashes during Linux boot.

Before that, valgrind points out bad memory write to console
surface. The VGA code is not aware that virtio-gpu got a message
surface scanout when the display is disabled. Let's reset VGA graphic
mode when it is the case, so that a new display surface is created
when doing further VGA operations.

https://bugs.launchpad.net/qemu/+bug/1784900/

Reported-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Gerd Hoffmann <kraxel@redhat.com>
Tested-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
Message-id: 20180803153235.4134-1-marcandre.lureau@redhat.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2018-08-07 15:03:58 +01:00
..
ads7846.c
bcm2835_fb.c display: use local path for local headers 2018-06-01 19:20:37 +03:00
blizzard.c
bochs-display.c * IEC units series (Philippe) 2018-07-02 19:07:19 +01:00
cg3.c memory: hide memory_region_sync_dirty_bitmap behind DirtyBitmapSnapshot 2018-02-13 16:15:09 +01:00
cirrus_vga_rop2.h
cirrus_vga_rop.h
cirrus_vga.c vga: disable global_vmstate, virtio-gpu scanout tracking fixes. 2018-07-03 21:09:27 +01:00
dpcd.c
exynos4210_fimd.c memory: hide memory_region_sync_dirty_bitmap behind DirtyBitmapSnapshot 2018-02-13 16:15:09 +01:00
framebuffer.c memory: hide memory_region_sync_dirty_bitmap behind DirtyBitmapSnapshot 2018-02-13 16:15:09 +01:00
framebuffer.h
g364fb.c hw/display: Use the IEC binary prefix definitions 2018-07-02 15:41:13 +02:00
jazz_led.c
Makefile.objs hw/display: add standalone ramfb device 2018-06-18 11:22:15 +02:00
milkymist-tmu2.c Include qapi/error.h exactly where needed 2018-02-09 13:50:17 +01:00
milkymist-vgafb_template.h
milkymist-vgafb.c
omap_dss.c
omap_lcd_template.h
omap_lcdc.c
pl110_template.h
pl110.c
pxa2xx_lcd.c
pxa2xx_template.h
qxl-logger.c
qxl-render.c qxl: fix local renderer crash 2018-05-07 11:47:57 +02:00
qxl.c vga: disable global_vmstate, virtio-gpu scanout tracking fixes. 2018-07-03 21:09:27 +01:00
qxl.h
ramfb-standalone.c hw/display: add standalone ramfb device 2018-06-18 11:22:15 +02:00
ramfb.c ramfb: enable vgabios 2018-07-02 17:21:52 +02:00
sii9022.c hw/sii9022: Add support for Silicon Image SII9022 2018-03-01 11:13:36 +00:00
sm501_template.h
sm501.c sm501: Fix warning about unreachable code 2018-07-16 11:19:10 +10:00
ssd0303.c hw/i2c: Use DeviceClass::realize instead of I2CSlaveClass::init 2018-06-01 15:14:31 +02:00
ssd0323.c
tc6393xb_template.h
tc6393xb.c hw: Do not include "sysemu/block-backend.h" if it is not necessary 2018-06-01 14:15:10 +02:00
tcx.c memory: hide memory_region_sync_dirty_bitmap behind DirtyBitmapSnapshot 2018-02-13 16:15:09 +01:00
trace-events hw/sii9022: Add support for Silicon Image SII9022 2018-03-01 11:13:36 +00:00
vga_int.h vga: disable global_vmstate for 3.0+ machine types 2018-07-03 11:19:49 +02:00
vga_regs.h
vga-helpers.h
vga-isa-mm.c vga: disable global_vmstate, virtio-gpu scanout tracking fixes. 2018-07-03 21:09:27 +01:00
vga-isa.c vga: disable global_vmstate for 3.0+ machine types 2018-07-03 11:19:49 +02:00
vga-pci.c vga: disable global_vmstate for 3.0+ machine types 2018-07-03 11:19:49 +02:00
vga.c vga: disable global_vmstate, virtio-gpu scanout tracking fixes. 2018-07-03 21:09:27 +01:00
virtio-gpu-3d.c virtio-gpu-3d: add support for second capability set (v4) 2018-02-26 13:41:34 +01:00
virtio-gpu-pci.c Include qapi/error.h exactly where needed 2018-02-09 13:50:17 +01:00
virtio-gpu.c virtio-gpu: fix crashes upon warm reboot with vga mode 2018-08-07 15:03:58 +01:00
virtio-vga.c virtio-gpu: fix crashes upon warm reboot with vga mode 2018-08-07 15:03:58 +01:00
vmware_vga.c vga: disable global_vmstate, virtio-gpu scanout tracking fixes. 2018-07-03 21:09:27 +01:00
xenfb.c hw/display: Use the IEC binary prefix definitions 2018-07-02 15:41:13 +02:00
xlnx_dp.c hw/display/xlnx_dp: Move problematic code from instance_init to realize 2018-07-17 13:12:49 +01:00