| From 088d266f3ca7ddf977d2fccf318ffe0c3b96808a Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Mon, 29 Jul 2024 15:29:09 -0600 |
| Subject: drm/amd/display: Check null pointers before using dc->clk_mgr |
| |
| From: Alex Hung <alex.hung@amd.com> |
| |
| [ Upstream commit 95d9e0803e51d5a24276b7643b244c7477daf463 ] |
| |
| [WHY & HOW] |
| dc->clk_mgr is null checked previously in the same function, indicating |
| it might be null. |
| |
| Passing "dc" to "dc->hwss.apply_idle_power_optimizations", which |
| dereferences null "dc->clk_mgr". (The function pointer resolves to |
| "dcn35_apply_idle_power_optimizations".) |
| |
| This fixes 1 FORWARD_NULL issue reported by Coverity. |
| |
| Reviewed-by: Rodrigo Siqueira <rodrigo.siqueira@amd.com> |
| Signed-off-by: Alex Hung <alex.hung@amd.com> |
| Signed-off-by: Tom Chung <chiahsuan.chung@amd.com> |
| Tested-by: Daniel Wheeler <daniel.wheeler@amd.com> |
| Signed-off-by: Alex Deucher <alexander.deucher@amd.com> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/gpu/drm/amd/display/dc/core/dc.c | 3 ++- |
| 1 file changed, 2 insertions(+), 1 deletion(-) |
| |
| diff --git a/drivers/gpu/drm/amd/display/dc/core/dc.c b/drivers/gpu/drm/amd/display/dc/core/dc.c |
| index 0b2eb2a6c8e14..a7a6f6c5c7655 100644 |
| --- a/drivers/gpu/drm/amd/display/dc/core/dc.c |
| +++ b/drivers/gpu/drm/amd/display/dc/core/dc.c |
| @@ -4716,7 +4716,8 @@ void dc_allow_idle_optimizations(struct dc *dc, bool allow) |
| if (allow == dc->idle_optimizations_allowed) |
| return; |
| |
| - if (dc->hwss.apply_idle_power_optimizations && dc->hwss.apply_idle_power_optimizations(dc, allow)) |
| + if (dc->hwss.apply_idle_power_optimizations && dc->clk_mgr != NULL && |
| + dc->hwss.apply_idle_power_optimizations(dc, allow)) |
| dc->idle_optimizations_allowed = allow; |
| } |
| |
| -- |
| 2.43.0 |
| |