FAILED: patch "[PATCH] drm/amd/display: prevent null pointer access" failed to apply to 5.9-stable tree
[email protected]
maintainerThe patch below does not apply to the 5.9-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From 140b2ef1c28d3f5a5fc767368eaa8b45afc5bf1f Mon Sep 17 00:00:00 2001
From: Dmytro Laktyushkin <[email protected]>
Date: Thu, 15 Oct 2020 14:49:56 -0400
Subject: [PATCH] drm/amd/display: prevent null pointer access
Prevent null pointer access when checking odm tree.
Signed-off-by Dmytro Laktyushkin <[email protected]>
Acked-by Aurabindo Pillai <[email protected]>
Signed-off-by Alex Deucher <[email protected]>
Cc <[email protected]>
drivers/gpu/drm/amd/display/dc/dcn30/dcn30_resource.c +7 -5
@@ -2105,12 +2105,12 @@ static bool dcn30_internal_validate_bw(if (split[i]) {if (odm) { -if (split[i] ==4 && old_pipe->next_odm_pipe->next_odm_pipe) +if (split[i] ==4 && old_pipe->next_odm_pipe && old_pipe->next_odm_pipe->next_odm_pipe) old_index = old_pipe->next_odm_pipe->next_odm_pipe->pipe_idx;else if (old_pipe->next_odm_pipe) old_index = old_pipe->next_odm_pipe->pipe_idx; }else { -if (split[i] ==4 && old_pipe->bottom_pipe->bottom_pipe && +if (split[i] ==4 && old_pipe->bottom_pipe && old_pipe->bottom_pipe->bottom_pipe && old_pipe->bottom_pipe->bottom_pipe->plane_state == old_pipe->plane_state) old_index = old_pipe->bottom_pipe->bottom_pipe->pipe_idx; else if (old_pipe->bottom_pipe &&
@@ -2150,10 +2150,12 @@ static bool dcn30_internal_validate_bw( goto validate_fail; newly_split[pipe_4to1->pipe_idx] = true; -if (odm && old_pipe->next_odm_pipe->next_odm_pipe->next_odm_pipe) +if (odm && old_pipe->next_odm_pipe && old_pipe->next_odm_pipe->next_odm_pipe + && old_pipe->next_odm_pipe->next_odm_pipe->next_odm_pipe) old_index = old_pipe->next_odm_pipe->next_odm_pipe->next_odm_pipe->pipe_idx; -else if (!odm && old_pipe->bottom_pipe->bottom_pipe->bottom_pipe && - old_pipe->bottom_pipe->bottom_pipe->bottom_pipe->plane_state == old_pipe->plane_state) +else if (!odm && old_pipe->bottom_pipe && old_pipe->bottom_pipe->bottom_pipe && + old_pipe->bottom_pipe->bottom_pipe->bottom_pipe && + old_pipe->bottom_pipe->bottom_pipe->bottom_pipe->plane_state == old_pipe->plane_state) old_index = old_pipe->bottom_pipe->bottom_pipe->bottom_pipe->pipe_idx;else old_index =-1 ;