diff --git a/Mesa-drivers.changes b/Mesa-drivers.changes index 4c90f04..d7bb2fb 100644 --- a/Mesa-drivers.changes +++ b/Mesa-drivers.changes @@ -1,3 +1,15 @@ +------------------------------------------------------------------- +Mon Jan 29 10:43:04 UTC 2018 - msrb@suse.com + +- Disable AMDGPU GFX9/Vega with LLVM < 6.0.0. + * n_Disable-AMDGPU-GFX9-Vega-on-LLVM-lessthan-6.0.0.patch + * While it is supported since LLVM 5.0.0, it was not working + correctly (bnc#1075901). Since we do not have the resources to + determine which fixes should be backported and LLVM 6 will be + released relatively soon, disable the support until then. Users + with the card will have working desktop using software + rendering just like they did with LLVM 4. + ------------------------------------------------------------------- Mon Jan 22 09:43:41 UTC 2018 - normand@linux.vnet.ibm.com diff --git a/Mesa-drivers.spec b/Mesa-drivers.spec index 0163001..cf99676 100644 --- a/Mesa-drivers.spec +++ b/Mesa-drivers.spec @@ -142,6 +142,7 @@ Patch32: archlinux_glvnd-fix-gl-dot-pc.patch # Upstream Patch43: u_mesa-python3-only.patch Patch44: U_intel-Add-more-Coffee-Lake-PCI-IDs.patch +Patch45: n_Disable-AMDGPU-GFX9-Vega-on-LLVM-lessthan-6.0.0.patch BuildRequires: autoconf >= 2.60 BuildRequires: automake @@ -751,6 +752,7 @@ rm -rf docs/README.{VMS,WIN32,OS2} %patch43 -p1 %patch44 -p1 +%patch45 -p1 # Remove requires to libglvnd/libglvnd-devel from baselibs.conf when # disabling libglvnd build; ugly ... diff --git a/Mesa.changes b/Mesa.changes index 4c90f04..d7bb2fb 100644 --- a/Mesa.changes +++ b/Mesa.changes @@ -1,3 +1,15 @@ +------------------------------------------------------------------- +Mon Jan 29 10:43:04 UTC 2018 - msrb@suse.com + +- Disable AMDGPU GFX9/Vega with LLVM < 6.0.0. + * n_Disable-AMDGPU-GFX9-Vega-on-LLVM-lessthan-6.0.0.patch + * While it is supported since LLVM 5.0.0, it was not working + correctly (bnc#1075901). Since we do not have the resources to + determine which fixes should be backported and LLVM 6 will be + released relatively soon, disable the support until then. Users + with the card will have working desktop using software + rendering just like they did with LLVM 4. + ------------------------------------------------------------------- Mon Jan 22 09:43:41 UTC 2018 - normand@linux.vnet.ibm.com diff --git a/Mesa.spec b/Mesa.spec index cb38cf6..42e16b7 100644 --- a/Mesa.spec +++ b/Mesa.spec @@ -141,6 +141,7 @@ Patch32: archlinux_glvnd-fix-gl-dot-pc.patch # Upstream Patch43: u_mesa-python3-only.patch Patch44: U_intel-Add-more-Coffee-Lake-PCI-IDs.patch +Patch45: n_Disable-AMDGPU-GFX9-Vega-on-LLVM-lessthan-6.0.0.patch BuildRequires: autoconf >= 2.60 BuildRequires: automake @@ -750,6 +751,7 @@ rm -rf docs/README.{VMS,WIN32,OS2} %patch43 -p1 %patch44 -p1 +%patch45 -p1 # Remove requires to libglvnd/libglvnd-devel from baselibs.conf when # disabling libglvnd build; ugly ... diff --git a/n_Disable-AMDGPU-GFX9-Vega-on-LLVM-lessthan-6.0.0.patch b/n_Disable-AMDGPU-GFX9-Vega-on-LLVM-lessthan-6.0.0.patch new file mode 100644 index 0000000..6d5be69 --- /dev/null +++ b/n_Disable-AMDGPU-GFX9-Vega-on-LLVM-lessthan-6.0.0.patch @@ -0,0 +1,60 @@ +From 63a73495438d621b8de24fa031a6af938bbf4ff4 Mon Sep 17 00:00:00 2001 +From: Michal Srb +Date: Mon, 29 Jan 2018 11:38:28 +0100 +Subject: [PATCH] Disable AMDGPU GFX9/Vega on LLVM < 6.0.0. + +Upstream advertises support since LLVM 5.0.0, but it does not work properly: +https://bugzilla.opensuse.org/show_bug.cgi?id=1075901 +--- + src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.c | 13 ++++++++++--- + src/gallium/winsys/amdgpu/drm/amdgpu_winsys.c | 13 ++++++++++--- + 2 files changed, 20 insertions(+), 6 deletions(-) + +Index: mesa-17.3.3/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.c +=================================================================== +--- mesa-17.3.3.orig/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.c ++++ mesa-17.3.3/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.c +@@ -46,9 +46,16 @@ do_winsys_init(struct radv_amdgpu_winsys + if (!ac_query_gpu_info(fd, ws->dev, &ws->info, &ws->amdinfo)) + return false; + +- /* LLVM 5.0 is required for GFX9. */ +- if (ws->info.chip_class >= GFX9 && HAVE_LLVM < 0x0500) { +- fprintf(stderr, "amdgpu: LLVM 5.0 is required, got LLVM %i.%i\n", ++ /* LLVM 6.0 is required for GFX9. */ ++ /* ++ Upstream version of Mesa allows GFX9 since LLVM 5.0, but it does not work correctly: ++ https://bugzilla.opensuse.org/show_bug.cgi?id=1075901 ++ The issues are fixed in LLVM 6. We have decided to disable GFX9 support with LLVM 5 ++ and wait for LLVM 6. ++ -- Michal Srb msrb@suse.com, 2018-01-29 ++ */ ++ if (ws->info.chip_class >= GFX9 && HAVE_LLVM < 0x0600) { ++ fprintf(stderr, "amdgpu: LLVM 6.0 is required, got LLVM %i.%i\n", + HAVE_LLVM >> 8, HAVE_LLVM & 255); + return false; + } +Index: mesa-17.3.3/src/gallium/winsys/amdgpu/drm/amdgpu_winsys.c +=================================================================== +--- mesa-17.3.3.orig/src/gallium/winsys/amdgpu/drm/amdgpu_winsys.c ++++ mesa-17.3.3/src/gallium/winsys/amdgpu/drm/amdgpu_winsys.c +@@ -58,9 +58,16 @@ static bool do_winsys_init(struct amdgpu + if (!ac_query_gpu_info(fd, ws->dev, &ws->info, &ws->amdinfo)) + goto fail; + +- /* LLVM 5.0 is required for GFX9. */ +- if (ws->info.chip_class >= GFX9 && HAVE_LLVM < 0x0500) { +- fprintf(stderr, "amdgpu: LLVM 5.0 is required, got LLVM %i.%i\n", ++ /* LLVM 6.0 is required for GFX9. */ ++ /* ++ Upstream version of Mesa allows GFX9 since LLVM 5.0, but it does not work correctly: ++ https://bugzilla.opensuse.org/show_bug.cgi?id=1075901 ++ The issues are fixed in LLVM 6. We have decided to disable GFX9 support with LLVM 5 ++ and wait for LLVM 6. ++ -- Michal Srb msrb@suse.com, 2018-01-29 ++ */ ++ if (ws->info.chip_class >= GFX9 && HAVE_LLVM < 0x0600) { ++ fprintf(stderr, "amdgpu: LLVM 6.0 is required, got LLVM %i.%i\n", + HAVE_LLVM >> 8, HAVE_LLVM & 255); + goto fail; + }