On 2016-12-08 11:43 AM, Kai Wasserbäch wrote: > [Please CC me on all replies, I'm not subscribed to the list.] > > Harry Wentland wrote on 08.12.2016 02:26: >> From: Dmytro Laktyushkin <Dmytro.Laktyushkin at amd.com> >> >> Change-Id: Id293fdf8c6939698b7d879fda99c6535c865ab71 >> Signed-off-by: Dmytro Laktyushkin <Dmytro.Laktyushkin at amd.com> >> --- >> drivers/gpu/drm/amd/display/dc/core/dc.c | 12 ++++++------ >> drivers/gpu/drm/amd/display/dc/inc/core_types.h | 2 +- >> 2 files changed, 7 insertions(+), 7 deletions(-) >> >> diff --git a/drivers/gpu/drm/amd/display/dc/core/dc.c b/drivers/gpu/drm/amd/display/dc/core/dc.c >> index 522ef7047564..8e1d695fcb77 100644 >> --- a/drivers/gpu/drm/amd/display/dc/core/dc.c >> +++ b/drivers/gpu/drm/amd/display/dc/core/dc.c >> @@ -450,11 +450,6 @@ static void destruct(struct core_dc *dc) >> { >> resource_validate_ctx_destruct(dc->current_context); >> >> - dm_free(dc->temp_flip_context); >> - dc->temp_flip_context = NULL; >> - dm_free(dc->scratch_val_ctx); >> - dc->scratch_val_ctx = NULL; >> - >> destroy_links(dc); >> >> dc_destroy_resource_pool(dc); >> @@ -473,6 +468,10 @@ static void destruct(struct core_dc *dc) >> >> dm_free(dc->current_context); >> dc->current_context = NULL; >> + dm_free(dc->temp_flip_context); >> + dc->temp_flip_context = NULL; >> + dm_free(dc->scratch_val_ctx); >> + dc->scratch_val_ctx = NULL; > Was this hunk supposed to be in another patch? This touches the destructor, > while the subject only talks about construction. My bad. I cleaned up the commit title missed the destructor part. These should be in the same patch but the title should probably reflect that. Harry > Cheers, > Kai > > >> dm_free(dc->ctx); >> dc->ctx = NULL; >> @@ -492,7 +491,7 @@ static bool construct(struct core_dc *dc, >> >> dc->current_context = dm_alloc(sizeof(*dc->current_context)); >> dc->temp_flip_context = dm_alloc(sizeof(*dc->temp_flip_context)); >> - dc->scratch_val_ctx = dm_alloc(sizeof(*dc->temp_flip_context)); >> + dc->scratch_val_ctx = dm_alloc(sizeof(*dc->scratch_val_ctx)); >> >> if (!dc->current_context || !dc->temp_flip_context) { >> dm_error("%s: failed to create validate ctx\n", __func__); >> @@ -1220,6 +1219,7 @@ bool dc_pre_update_surfaces_to_target( >> goto unexpected_fail; >> } >> resource_validate_ctx_destruct(context); >> + ASSERT(core_dc->scratch_val_ctx == temp_context); >> core_dc->scratch_val_ctx = context; >> context = temp_context; >> } >> diff --git a/drivers/gpu/drm/amd/display/dc/inc/core_types.h b/drivers/gpu/drm/amd/display/dc/inc/core_types.h >> index 0418e3e02c7a..3cf9bfb6decd 100644 >> --- a/drivers/gpu/drm/amd/display/dc/inc/core_types.h >> +++ b/drivers/gpu/drm/amd/display/dc/inc/core_types.h >> @@ -312,7 +312,7 @@ struct validate_context { >> >> /* The output from BW and WM calculations. */ >> struct bw_calcs_output bw_results; >> - /* Note: this is a big structure, do *not* put on stack! */ >> + /* Note: these are big structures, do *not* put on stack! */ >> struct dm_pp_display_configuration pp_display_cfg; >> }; >> >>