drm/amd/display: Use common error handling code in dc_create()

Adjust a jump target so that a bit of exception handling can be better
reused at the end of this function.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
Markus Elfring 2020-12-19 18:18:59 +01:00 committed by Alex Deucher
parent 84c30d2558
commit 554f80bd76

View File

@ -968,15 +968,11 @@ struct dc *dc_create(const struct dc_init_data *init_params)
return NULL;
if (init_params->dce_environment == DCE_ENV_VIRTUAL_HW) {
if (false == dc_construct_ctx(dc, init_params)) {
dc_destruct(dc);
goto construct_fail;
}
if (!dc_construct_ctx(dc, init_params))
goto destruct_dc;
} else {
if (false == dc_construct(dc, init_params)) {
dc_destruct(dc);
goto construct_fail;
}
if (!dc_construct(dc, init_params))
goto destruct_dc;
full_pipe_count = dc->res_pool->pipe_count;
if (dc->res_pool->underlay_pipe_index != NO_UNDERLAY_PIPE)
@ -1007,7 +1003,8 @@ struct dc *dc_create(const struct dc_init_data *init_params)
return dc;
construct_fail:
destruct_dc:
dc_destruct(dc);
kfree(dc);
return NULL;
}