4d146d7268
[ Upstream commit 7948a2b15873319d1bff4d37c09b9f2bf87b9021 ] "crtc->helper_private" is not initialized by the QXL driver and thus the "crtc_funcs->disable" call would crash (resulting in suspend failure). Fix this by converting the suspend/resume functions to use the drm_mode_config_helper_* helpers. Tested system sleep with QEMU 3.0 using "echo mem > /sys/power/state". During suspend the following message is visible from QEMU: spice/server/display-channel.c:2425:display_channel_validate_surface: canvas address is 0x7fd05da68308 for 0 (and is NULL) spice/server/display-channel.c:2426:display_channel_validate_surface: failed on 0 This seems to be triggered by QXL_IO_NOTIFY_CMD after QXL_IO_DESTROY_PRIMARY_ASYNC, but aside from the warning things still seem to work (tested with both the GTK and -spice options). Signed-off-by: Peter Wu <peter@lekensteyn.nl> Link: http://patchwork.freedesktop.org/patch/msgid/20180904202747.14968-1-peter@lekensteyn.nl Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Sasha Levin <sashal@kernel.org> |
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
qxl_cmd.c | ||
qxl_debugfs.c | ||
qxl_dev.h | ||
qxl_display.c | ||
qxl_draw.c | ||
qxl_drv.c | ||
qxl_drv.h | ||
qxl_dumb.c | ||
qxl_fb.c | ||
qxl_gem.c | ||
qxl_image.c | ||
qxl_ioctl.c | ||
qxl_irq.c | ||
qxl_kms.c | ||
qxl_object.c | ||
qxl_object.h | ||
qxl_prime.c | ||
qxl_release.c | ||
qxl_ttm.c |