From 0454183bb321fd13709bdc9dfe81176287e5299b2eb94a5511bfaca32f52c7fe Mon Sep 17 00:00:00 2001 From: Stefan Dirsch Date: Fri, 10 Feb 2023 14:17:31 +0000 Subject: [PATCH] - U_ReturnME.patch * fixes blackscreen in Return To Monkey Island on Intel graphics (boo#1208145) OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/Mesa?expand=0&rev=1193 --- Mesa.changes | 7 +++++++ Mesa.spec | 2 ++ U_ReturnME.patch | 54 ++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 63 insertions(+) create mode 100644 U_ReturnME.patch diff --git a/Mesa.changes b/Mesa.changes index 3691a9f..2273bb8 100644 --- a/Mesa.changes +++ b/Mesa.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Fri Feb 10 14:06:56 UTC 2023 - Stefan Dirsch + +- U_ReturnME.patch + * fixes blackscreen in Return To Monkey Island on Intel graphics + (boo#1208145) + ------------------------------------------------------------------- Thu Feb 9 10:39:08 UTC 2023 - Stefan Dirsch diff --git a/Mesa.spec b/Mesa.spec index 9822e96..5ab25b9 100644 --- a/Mesa.spec +++ b/Mesa.spec @@ -145,6 +145,7 @@ Patch100: U_fix-mpeg1_2-decode-mesa-20.2.patch Patch200: u_fix-build-on-ppc64le.patch Patch300: n_no-sse2-on-ix86-except-for-intel-drivers.patch Patch400: n_stop-iris-flicker.patch +Patch500: U_ReturnME.patch %ifarch %{ix86} x86_64 BuildRequires: DirectX-Headers %endif @@ -790,6 +791,7 @@ rm -rf docs/README.{VMS,WIN32,OS2} %patch300 -p1 %endif %patch400 -p1 +%patch500 -p1 # Remove requires to vulkan libs from baselibs.conf on platforms # where vulkan build is disabled; ugly ... diff --git a/U_ReturnME.patch b/U_ReturnME.patch new file mode 100644 index 0000000..1d2156c --- /dev/null +++ b/U_ReturnME.patch @@ -0,0 +1,54 @@ +From 8491b1fd5e7c97edc104a3ac3b8ece5464e652b0 Mon Sep 17 00:00:00 2001 +From: Illia Polishchuk +Date: Fri, 13 Jan 2023 20:54:44 +0200 +Subject: [PATCH] ANV: Add extra memory types for ANV driver instead of a + single one + +Some game engines can't handle single type well +And Intel on Windows uses 3 types so it's better to add extra one here + +Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7360 +Reviewed-by: Lionel Landwerlin +Signed-off-by: Illia Polishchuk +Part-of: +--- + src/intel/vulkan/anv_device.c | 21 +++++++++++++++------ + 1 file changed, 15 insertions(+), 6 deletions(-) + +diff --git a/src/intel/vulkan/anv_device.c b/src/intel/vulkan/anv_device.c +index a2e5d2ba398f..40d8949f011a 100644 +--- a/src/intel/vulkan/anv_device.c ++++ b/src/intel/vulkan/anv_device.c +@@ -509,14 +509,23 @@ anv_physical_device_init_heaps(struct anv_physical_device *device, int fd) + + /* Big core GPUs share LLC with the CPU and thus one memory type can be + * both cached and coherent at the same time. ++ * ++ * But some game engines can't handle single type well ++ * https://gitlab.freedesktop.org/mesa/mesa/-/issues/7360#note_1719438 ++ * ++ * And Intel on Windows uses 3 types so it's better to add extra one here + */ +- device->memory.type_count = 1; ++ device->memory.type_count = 2; + device->memory.types[0] = (struct anv_memory_type) { +- .propertyFlags = VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT | +- VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT | +- VK_MEMORY_PROPERTY_HOST_COHERENT_BIT | +- VK_MEMORY_PROPERTY_HOST_CACHED_BIT, +- .heapIndex = 0, ++ .propertyFlags = VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT, ++ .heapIndex = 0, ++ }; ++ device->memory.types[1] = (struct anv_memory_type) { ++ .propertyFlags = VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT | ++ VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT | ++ VK_MEMORY_PROPERTY_HOST_COHERENT_BIT | ++ VK_MEMORY_PROPERTY_HOST_CACHED_BIT, ++ .heapIndex = 0, + }; + } else { + device->memory.heap_count = 1; +-- +GitLab +