xserver: Branch 'master'
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Tue Jun 8 16:48:51 UTC 2021
hw/xfree86/drivers/modesetting/driver.c | 16 ++++++++++++++--
1 file changed, 14 insertions(+), 2 deletions(-)
New commits:
commit 7e7c147105ac704a7b33bdee0f85dc9ccdd8f747
Author: Lukasz Spintzyk <lukasz.spintzyk at gmail.com>
Date: Mon Jun 7 09:30:46 2021 +0200
modesetting: Disable reverse prime offload mode for displays running on evdi,udl
This mode for displays running on evdi/udl as side effect of failed glamor_egl_init
reverse_prime_offload_mode was initialized to FALSE
After Mesa upgrade to 21.0.0 GL_RENDERER is not llvmpipe that results in successful glamor_egl_init
and reverse_prime_offload_mode enabled.
This commit is explicitly disabling reverse_prime_offload_mode for evdi and udl drivers
Signed-off-by: Łukasz Spintzyk <lukasz.spintzyk at synaptics.com>
diff --git a/hw/xfree86/drivers/modesetting/driver.c b/hw/xfree86/drivers/modesetting/driver.c
index 2fc2074eb..948fa649a 100644
--- a/hw/xfree86/drivers/modesetting/driver.c
+++ b/hw/xfree86/drivers/modesetting/driver.c
@@ -1934,18 +1934,30 @@ ScreenInit(ScreenPtr pScreen, int argc, char **argv)
}
/* enable reverse prime if we are a GPU screen, and accelerated, and not
- * i915. i915 is happy scanning out from sysmem. */
+ * i915, evdi or udl. i915 is happy scanning out from sysmem.
+ * evdi and udl are virtual drivers scanning out from sysmem
+ * backed dumb buffers.
+ */
if (pScreen->isGPU) {
drmVersionPtr version;
/* enable if we are an accelerated GPU screen */
ms->drmmode.reverse_prime_offload_mode = TRUE;
- /* disable if we detect i915 */
if ((version = drmGetVersion(ms->drmmode.fd))) {
if (!strncmp("i915", version->name, version->name_len)) {
ms->drmmode.reverse_prime_offload_mode = FALSE;
}
+ if (!strncmp("evdi", version->name, version->name_len)) {
+ ms->drmmode.reverse_prime_offload_mode = FALSE;
+ }
+ if (!strncmp("udl", version->name, version->name_len)) {
+ ms->drmmode.reverse_prime_offload_mode = FALSE;
+ }
+ if (!ms->drmmode.reverse_prime_offload_mode) {
+ xf86DrvMsg(pScrn->scrnIndex, X_INFO,
+ "Disable reverse prime offload mode for %s.\n", version->name);
+ }
drmFreeVersion(version);
}
}
More information about the xorg-commit
mailing list