[PATCH 12/12] drm/amd/display: fix up construction of scratch_val_ctx

Kai Wasserbäch kai at dev.carbon-project.org
Thu Dec 8 16:43:07 UTC 2016


[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.

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;
>  };
>  
> 



More information about the amd-gfx mailing list