Thread (748 messages) 748 messages, 17 authors, 2021-01-05

Re: [PATCH 5.10 637/717] drm/amd/display: Fix memory leaks in S3 resume

From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Date: 2021-01-05 06:54:48
Also in: lkml

On Mon, Jan 04, 2021 at 08:04:08PM +0100, Andre Tomt wrote:
On 28.12.2020 13:50, Greg Kroah-Hartman wrote:
quoted
From: Stylon Wang <redacted>

commit a135a1b4c4db1f3b8cbed9676a40ede39feb3362 upstream.

EDID parsing in S3 resume pushes new display modes
to probed_modes list but doesn't consolidate to actual
mode list. This creates a race condition when
amdgpu_dm_connector_ddc_get_modes() re-initializes the
list head without walking the list and results in  memory leak.
This commit is causing me problems on 5.10.4: when I turn off the display (a
LG TV in this case), and turn it back on again later there is no video
output and I get the following in the kernel log:

[ 8245.259628] [drm:dm_restore_drm_connector_state [amdgpu]] *ERROR*
Restoring old state failed with -12

I've found another report on this commit as well:
https://bugzilla.kernel.org/show_bug.cgi?id=211033

And I suspect this is the same:
https://bugs.archlinux.org/task/69202

Reverting it from 5.10.4 makes things behave again.

Have not tested 5.4.86 or 5.11-rc.

I'm using a RX570 Polaris based card.
Can you test 5.11-rc to see if this issue is there as well?

thanks,

greg k-h
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help