radv: do not abort if SPM isn't supported for the current GPU
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Wed, 29 Jun 2022 09:04:00 +0000 (11:04 +0200)
committerSamuel Pitoiset <samuel.pitoiset@gmail.com>
Mon, 4 Jul 2022 11:08:32 +0000 (13:08 +0200)
In a mixed GFX9/GFX10 setup, this would crash for the GFX9 logical
device. Just print a message intead of aborting.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17292>

src/amd/vulkan/radv_device.c

index e3df1f7..3db01f6 100644 (file)
@@ -3424,13 +3424,13 @@ radv_CreateDevice(VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo *pCr
               radv_spm_trace_enabled() ? "enabled" : "disabled");
 
       if (radv_spm_trace_enabled()) {
-         if (device->physical_device->rad_info.gfx_level < GFX10) {
-            fprintf(stderr, "SPM isn't supported for this GPU!\n");
-            abort();
+         if (device->physical_device->rad_info.gfx_level >= GFX10) {
+            if (!radv_spm_init(device))
+               goto fail;
+         } else {
+            fprintf(stderr, "radv: SPM isn't supported for this GPU (%s)!\n",
+                    device->physical_device->name);
          }
-
-         if (!radv_spm_init(device))
-            goto fail;
       }
    }