ac: Don't negate strstr return values in ac_query_gpu_info
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 <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7675>
(cherry picked from commit 13b2beb41597a8c89fa1f74639c143d95931ed56)
diff --git a/.pick_status.json b/.pick_status.json
index be048a3..c25f8c6 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 5c55112..4d25c24 100644
--- a/src/amd/common/ac_gpu_info.c
+++ b/src/amd/common/ac_gpu_info.c
@@ -468,9 +468,9 @@
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);