mesa/0001-drisw-move-zink-down-the-list-below-the-sw-drivers.patch
2021-03-25 11:05:45 +10:00

73 lines
2.4 KiB
Diff

From 70259f75a5546d331b0d687227341f653a4bf544 Mon Sep 17 00:00:00 2001
From: Dave Airlie <airlied@redhat.com>
Date: Thu, 25 Mar 2021 08:34:28 +1000
Subject: [PATCH] drisw: move zink down the list below the sw drivers.
We don't ever want drisw path picking zink as the driver,
we can revisit this when the penny wrapper work gets further
along.
This selection causes systems with nvidia/intel dual-gpus
to try and pick the intel gpu for rendering in the nvidia
context if there is no nvidia GL driver or accel doesn't work.
This is a partial revert of the original commit.
Fixes: 4a3b42a717ce ("drisw: Prefer hardware-layered sw-winsys drivers over pure sw")
---
src/gallium/auxiliary/target-helpers/inline_sw_helper.h | 6 +++---
src/gallium/auxiliary/target-helpers/sw_helper.h | 6 +++---
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/src/gallium/auxiliary/target-helpers/inline_sw_helper.h b/src/gallium/auxiliary/target-helpers/inline_sw_helper.h
index c494840c44e..76eda8467b8 100644
--- a/src/gallium/auxiliary/target-helpers/inline_sw_helper.h
+++ b/src/gallium/auxiliary/target-helpers/inline_sw_helper.h
@@ -81,9 +81,6 @@ sw_screen_create(struct sw_winsys *winsys)
UNUSED bool only_sw = env_var_as_boolean("LIBGL_ALWAYS_SOFTWARE", false);
const char *drivers[] = {
debug_get_option("GALLIUM_DRIVER", ""),
-#if defined(GALLIUM_ZINK)
- only_sw ? "" : "zink",
-#endif
#if defined(GALLIUM_D3D12)
only_sw ? "" : "d3d12",
#endif
@@ -95,6 +92,9 @@ sw_screen_create(struct sw_winsys *winsys)
#endif
#if defined(GALLIUM_SWR)
"swr",
+#endif
+#if defined(GALLIUM_ZINK)
+ only_sw ? "" : "zink",
#endif
};
diff --git a/src/gallium/auxiliary/target-helpers/sw_helper.h b/src/gallium/auxiliary/target-helpers/sw_helper.h
index d9469d9f5e3..88a5086d261 100644
--- a/src/gallium/auxiliary/target-helpers/sw_helper.h
+++ b/src/gallium/auxiliary/target-helpers/sw_helper.h
@@ -86,9 +86,6 @@ sw_screen_create(struct sw_winsys *winsys)
UNUSED bool only_sw = env_var_as_boolean("LIBGL_ALWAYS_SOFTWARE", false);
const char *drivers[] = {
debug_get_option("GALLIUM_DRIVER", ""),
-#if defined(GALLIUM_ZINK)
- only_sw ? "" : "zink",
-#endif
#if defined(GALLIUM_D3D12)
only_sw ? "" : "d3d12",
#endif
@@ -100,6 +97,9 @@ sw_screen_create(struct sw_winsys *winsys)
#endif
#if defined(GALLIUM_SWR)
"swr",
+#endif
+#if defined(GALLIUM_ZINK)
+ only_sw ? "" : "zink",
#endif
};
--
2.29.2