summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm
diff options
context:
space:
mode:
authorDmytro Laktyushkin <Dmytro.Laktyushkin@amd.com>2016-12-05 18:03:04 -0500
committerAlex Deucher <alexander.deucher@amd.com>2017-09-26 17:04:41 -0400
commit5ea81b91857882bb5bfa883fb27671133957a96c (patch)
tree272966b2e36656df77b3d969e5483616c30097ac /drivers/gpu/drm
parent922aa1e15e03ee2b32f50cd8a9d2c8376a19d22c (diff)
drm/amd/display: fix up construction of scratch_val_ctx
Signed-off-by: Dmytro Laktyushkin <Dmytro.Laktyushkin@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r--drivers/gpu/drm/amd/display/dc/core/dc.c12
-rw-r--r--drivers/gpu/drm/amd/display/dc/inc/core_types.h2
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;
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;
};