]> www.infradead.org Git - users/jedix/linux-maple.git/commit
drm/amd/display: Clear update flags after update has been applied
authorJosip Pavic <Josip.Pavic@amd.com>
Tue, 24 Sep 2024 21:25:54 +0000 (17:25 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 7 Oct 2024 18:58:58 +0000 (14:58 -0400)
commit0a9906cc45d21e21ca8bb2b98b79fd7c05420fda
treedfbb420d5aa45b5b42634df90a6c77419e9da960
parentd6b9f492e229be1d1bd360c3ac5bee4635bacf99
drm/amd/display: Clear update flags after update has been applied

[Why]
Since the surface/stream update flags aren't cleared after applying
updates, those same updates may be applied again in a future call to
update surfaces/streams for surfaces/streams that aren't actually part
of that update (i.e. applying an update for one surface/stream can
trigger unintended programming on a different surface/stream).

For example, when an update results in a call to
program_front_end_for_ctx, that function may call program_pipe on all
pipes. If there are surface update flags that were never cleared on the
surface some pipe is attached to, then the same update will be
programmed again.

[How]
Clear the surface and stream update flags after applying the updates.

Closes: https://gitlab.freedesktop.org/drm/amd/-/issues/3441
Closes: https://gitlab.freedesktop.org/drm/amd/-/issues/3616
Cc: Melissa Wen <mwen@igalia.com>
Reviewed-by: Aric Cyr <aric.cyr@amd.com>
Signed-off-by: Josip Pavic <Josip.Pavic@amd.com>
Signed-off-by: Rodrigo Siqueira <rodrigo.siqueira@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
(cherry picked from commit 7671f62c10f2a4c77d89b39fd50fab7f918d6809)
Cc: stable@vger.kernel.org
drivers/gpu/drm/amd/display/dc/core/dc.c