xorg-x11-server/0007-modesetting-remove-unnecessary-error-message-fix-zap.patch
Olivier Fourdan 1e468bc44a xserver 1.20.7
- backport from stable "xserver-1.20-branch" up to commit ad7364d8d
  (for mutter fullscreen unredirect on Wayland)
- Update videodrv minor ABI as 1.20.7 changed the minor ABI version
  (backward compatible, API addition in glamor)
- Rebase Xwayland randr resolution change emulation support patches
2020-03-13 09:54:18 +01:00

60 lines
2.2 KiB
Diff

From 948afd768398955f043fef8e14d7d154cea25f85 Mon Sep 17 00:00:00 2001
From: Dave Airlie <airlied@redhat.com>
Date: Thu, 6 Feb 2020 17:59:08 +0100
Subject: [PATCH xserver 07/22] modesetting: remove unnecessary error message,
fix zaphod leases
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
I introduced this error with the MST hotplug code, but it can trigger
on zaphod setups, and is perfectly fine. There is no support for
MST/hotplug on zaphod setups currently, so we can just skip over
the dynamic connector handling here. However we shouldn't skip
over the lease handling so move it into the codepath.
Fixes: 9257b1252da9 ("modesetting: add dynamic connector hotplug support (MST) (v3)")
Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
(cherry picked from commit 1cfdd1a96580733df3625bcea3384ffee3dc92df)
---
hw/xfree86/drivers/modesetting/drmmode_display.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/hw/xfree86/drivers/modesetting/drmmode_display.c b/hw/xfree86/drivers/modesetting/drmmode_display.c
index 3874f6e21..ae06fa357 100644
--- a/hw/xfree86/drivers/modesetting/drmmode_display.c
+++ b/hw/xfree86/drivers/modesetting/drmmode_display.c
@@ -3677,7 +3677,7 @@ drmmode_handle_uevents(int fd, void *closure)
goto out;
if (mode_res->count_crtcs != config->num_crtc) {
- ErrorF("number of CRTCs changed - failed to handle, %d vs %d\n", mode_res->count_crtcs, config->num_crtc);
+ /* this triggers with Zaphod mode where we don't currently support connector hotplug or MST. */
goto out_free_res;
}
@@ -3726,15 +3726,16 @@ drmmode_handle_uevents(int fd, void *closure)
drmmode_output_init(scrn, drmmode, mode_res, i, TRUE, 0);
}
- /* Check to see if a lessee has disappeared */
- drmmode_validate_leases(scrn);
-
if (changed) {
RRSetChanged(xf86ScrnToScreen(scrn));
RRTellChanged(xf86ScrnToScreen(scrn));
}
out_free_res:
+
+ /* Check to see if a lessee has disappeared */
+ drmmode_validate_leases(scrn);
+
drmModeFreeResources(mode_res);
out:
RRGetInfo(xf86ScrnToScreen(scrn), TRUE);
--
2.24.1