[PATCH 25/26] drm/amd/powerplay: fix the issue of checking on message mapping
Huang Rui
ray.huang at amd.com
Mon Feb 25 12:12:31 UTC 2019
The vega20_message_map[index] scope should be in PPSMC_Message_Count not in
SMU_MSG_MAX_COUNT.
Signed-off-by: Huang Rui <ray.huang at amd.com>
---
drivers/gpu/drm/amd/powerplay/vega20_ppt.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/amd/powerplay/vega20_ppt.c b/drivers/gpu/drm/amd/powerplay/vega20_ppt.c
index 8ea44b7..f7188a7 100644
--- a/drivers/gpu/drm/amd/powerplay/vega20_ppt.c
+++ b/drivers/gpu/drm/amd/powerplay/vega20_ppt.c
@@ -131,10 +131,15 @@ static int vega20_message_map[SMU_MSG_MAX_COUNT] = {
static int vega20_get_smu_msg_index(struct smu_context *smc, uint32_t index)
{
- if (index > SMU_MSG_MAX_COUNT || index > PPSMC_Message_Count)
+ int val;
+ if (index > SMU_MSG_MAX_COUNT)
return -EINVAL;
- return vega20_message_map[index];
+ val = vega20_message_map[index];
+ if (val > PPSMC_Message_Count)
+ return -EINVAL;
+
+ return val;
}
static int vega20_allocate_dpm_context(struct smu_context *smu)
--
2.7.4
More information about the amd-gfx
mailing list