From a71b92fff824675df8076b62df54acc36ffeb26a Mon Sep 17 00:00:00 2001 From: Pierre-Eric Pelloux-Prayer Date: Wed, 29 Jun 2022 10:30:58 +0200 Subject: [PATCH] vulkan/device_select: print the dri_prime warning only if needed MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The next commit will allow a different DRI_PRIME syntax, so move this printf in the right if block. Reviewed-by: Marek Olšák Part-of: --- .../device-select-layer/device_select_layer.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/vulkan/device-select-layer/device_select_layer.c b/src/vulkan/device-select-layer/device_select_layer.c index 77952cc494a..5746b925972 100644 --- a/src/vulkan/device-select-layer/device_select_layer.c +++ b/src/vulkan/device-select-layer/device_select_layer.c @@ -427,10 +427,6 @@ static uint32_t get_default_device(const struct instance_info *info, if (dri_prime && !strcmp(dri_prime, "1")) dri_prime_is_one = true; - if (dri_prime && !dri_prime_is_one && !info->has_vulkan11 && !info->has_pci_bus) { - fprintf(stderr, "device-select: cannot correctly use DRI_PRIME tag\n"); - } - struct device_pci_info *pci_infos = (struct device_pci_info *)calloc(physical_device_count, sizeof(struct device_pci_info)); if (!pci_infos) return 0; @@ -441,8 +437,13 @@ static uint32_t get_default_device(const struct instance_info *info, if (selection) default_idx = device_select_find_explicit_default(pci_infos, physical_device_count, selection); - if (default_idx == -1 && info->has_vulkan11 && info->has_pci_bus && dri_prime && !dri_prime_is_one) - default_idx = device_select_find_dri_prime_tag_default(pci_infos, physical_device_count, dri_prime); + + if (default_idx == -1 && dri_prime && !dri_prime_is_one) { + if (!info->has_vulkan11 && !info->has_pci_bus) + fprintf(stderr, "device-select: cannot correctly use DRI_PRIME tag\n"); + else + default_idx = device_select_find_dri_prime_tag_default(pci_infos, physical_device_count, dri_prime); + } if (default_idx == -1 && info->has_wayland) default_idx = device_select_find_wayland_pci_default(pci_infos, physical_device_count); if (default_idx == -1 && info->has_xcb)