From d8e73329dedd1a7aa4cd7c06459eb4bce3cb2c5c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michel=20D=C3=A4nzer?= Date: Wed, 18 Nov 2020 17:54:19 +0100 Subject: [PATCH] ac: Don't negate strstr return values in ac_query_gpu_info MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit strstr returns a pointer to the needle sub-string within the haystack string if the latter contains the former, or NULL otherwise. So this essentially always set info->is_pro_graphics = true, since probably no marketing name ever contains all of these sub-strings. Fixes: b635dff25620 "ac: fix detection of Pro graphics" Reviewed-by: Pierre-Eric Pelloux-Prayer Reviewed-by: Marek Olšák Part-of: (cherry picked from commit 13b2beb41597a8c89fa1f74639c143d95931ed56) --- .pick_status.json | 2 +- src/amd/common/ac_gpu_info.c | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index be048a3880d..c25f8c621bc 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -166,7 +166,7 @@ "description": "ac: Don't negate strstr return values in ac_query_gpu_info", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "master_sha": null, "because_sha": "b635dff25620b948080d31211ca487a71203af4d" }, diff --git a/src/amd/common/ac_gpu_info.c b/src/amd/common/ac_gpu_info.c index 5c55112dc81..4d25c24e9da 100644 --- a/src/amd/common/ac_gpu_info.c +++ b/src/amd/common/ac_gpu_info.c @@ -468,9 +468,9 @@ bool ac_query_gpu_info(int fd, void *dev_p, struct radeon_info *info, info->family_id = amdinfo->family_id; info->chip_external_rev = amdinfo->chip_external_rev; info->marketing_name = amdgpu_get_marketing_name(dev); - info->is_pro_graphics = info->marketing_name && (!strstr(info->marketing_name, "Pro") || - !strstr(info->marketing_name, "PRO") || - !strstr(info->marketing_name, "Frontier")); + info->is_pro_graphics = info->marketing_name && (strstr(info->marketing_name, "Pro") || + strstr(info->marketing_name, "PRO") || + strstr(info->marketing_name, "Frontier")); /* Set which chips have dedicated VRAM. */ info->has_dedicated_vram = !(amdinfo->ids_flags & AMDGPU_IDS_FLAGS_FUSION);