From ab9510df0b5f7bc29662804991729c6d6ee38b70 Mon Sep 17 00:00:00 2001 From: Ray Strode Date: Thu, 12 Dec 2019 16:56:16 -0500 Subject: [PATCH] data: only disable wayland on passthrough virt setups at the moment we disable wayland on all hybrid graphics setups, but most hybrid graphics setups work fine. The case we really care about is passthrough virt. in that case, wayland is a bad idea because: 1) kernel crashes 2) mutter provides no way to disable one of the cards, and will always use one as a secondary gpu This commit forces xorg in passthrough setups so the user can use an xorg.conf to turn one of the cards off. --- data/61-gdm.rules.in | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/data/61-gdm.rules.in b/data/61-gdm.rules.in index fc2e3315c..f971224cf 100644 --- a/data/61-gdm.rules.in +++ b/data/61-gdm.rules.in @@ -1,20 +1,25 @@ # disable Wayland on Matrox chipsets ATTR{vendor}=="0x102b", ATTR{device}=="0x0522", RUN+="@libexecdir@/gdm-disable-wayland" ATTR{vendor}=="0x102b", ATTR{device}=="0x0524", RUN+="@libexecdir@/gdm-disable-wayland" ATTR{vendor}=="0x102b", ATTR{device}=="0x0530", RUN+="@libexecdir@/gdm-disable-wayland" ATTR{vendor}=="0x102b", ATTR{device}=="0x0532", RUN+="@libexecdir@/gdm-disable-wayland" ATTR{vendor}=="0x102b", ATTR{device}=="0x0533", RUN+="@libexecdir@/gdm-disable-wayland" ATTR{vendor}=="0x102b", ATTR{device}=="0x0534", RUN+="@libexecdir@/gdm-disable-wayland" ATTR{vendor}=="0x102b", ATTR{device}=="0x0536", RUN+="@libexecdir@/gdm-disable-wayland" ATTR{vendor}=="0x102b", ATTR{device}=="0x0538", RUN+="@libexecdir@/gdm-disable-wayland" # disable Wayland on aspeed chipsets ATTR{vendor}=="0x1a03", ATTR{device}=="0x2010", RUN+="@libexecdir@/gdm-disable-wayland" ATTR{vendor}=="0x1a03", ATTR{device}=="0x2000", RUN+="@libexecdir@/gdm-disable-wayland" # disable Wayland when using the proprietary nvidia driver DRIVER=="nvidia", RUN+="@libexecdir@/gdm-disable-wayland" -# disable Wayland on hybrid graphics setups for now -SUBSYSTEM=="drm", KERNEL=="card[1-9]*", RUN+="@libexecdir@/gdm-disable-wayland" +# disable Wayland on passthrough graphics setups for now (assumes passthrough if +# there is more than one card, and one of the cards is virt: cirrus, bochs, qxl) +ATTR{vendor}=="0x1013", ATTR{device}=="0x00b8", ATTR{subsystem_vendor}=="0x1af4", ATTR{subsystem_device}=="0x1100", ENV{GDM_HAS_VIRTUAL_GPU}="1" +ATTR{vendor}=="0x1b36", ATTR{device}=="0x0100", ENV{GDM_HAS_VIRTUAL_GPU}="1" +ATTR{vendor}=="0x1234", ATTR{device}=="0x1111", ENV{GDM_HAS_VIRTUAL_GPU}="1" + +SUBSYSTEM=="drm", KERNEL=="card[1-9]*", ENV{GDM_HAS_VIRTUAL_GPU}=="1", RUN+="@libexecdir@/gdm-disable-wayland" -- 2.21.0