diff options
| author | SivapiriyanKumarasamy <sivapiriyan.kumarasamy@amd.com> | 2018-08-15 16:55:18 -0400 |
|---|---|---|
| committer | Alex Deucher <alexander.deucher@amd.com> | 2018-08-27 15:53:37 -0400 |
| commit | e7603dadd3cc2fa65924d9e8ce0c6f2964866da0 (patch) | |
| tree | 9fb7a761440f8d39d8ac10be305f2745df879968 | |
| parent | 4a2de54dc1d7668fa364d8483420ba64b120963b (diff) | |
drm/amd/display: Fix memory leak caused by missed dc_sink_release
[Why]
There is currently an intermittent hang from a memory leak in
DTN stress testing. It is caused by unfreed memory during driver
disable.
[How]
Do a dc_sink_release in the case that skips it incorrectly.
Signed-off-by: SivapiriyanKumarasamy <sivapiriyan.kumarasamy@amd.com>
Reviewed-by: Aric Cyr <Aric.Cyr@amd.com>
Acked-by: Leo Li <sunpeng.li@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
| -rw-r--r-- | drivers/gpu/drm/amd/display/dc/core/dc_link.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_link.c b/drivers/gpu/drm/amd/display/dc/core/dc_link.c index 567867915d32..37eaf72ace54 100644 --- a/drivers/gpu/drm/amd/display/dc/core/dc_link.c +++ b/drivers/gpu/drm/amd/display/dc/core/dc_link.c | |||
| @@ -754,8 +754,12 @@ bool dc_link_detect(struct dc_link *link, enum dc_detect_reason reason) | |||
| 754 | * fail-safe mode | 754 | * fail-safe mode |
| 755 | */ | 755 | */ |
| 756 | if (dc_is_hdmi_signal(link->connector_signal) || | 756 | if (dc_is_hdmi_signal(link->connector_signal) || |
| 757 | dc_is_dvi_signal(link->connector_signal)) | 757 | dc_is_dvi_signal(link->connector_signal)) { |
| 758 | if (prev_sink != NULL) | ||
| 759 | dc_sink_release(prev_sink); | ||
| 760 | |||
| 758 | return false; | 761 | return false; |
| 762 | } | ||
| 759 | default: | 763 | default: |
| 760 | break; | 764 | break; |
| 761 | } | 765 | } |
