From 7fe4a70842e16aaff30780d87e3e32429f3f1242 Mon Sep 17 00:00:00 2001 From: Tk-Glitch Date: Mon, 29 Jun 2020 23:21:36 +0200 Subject: [PATCH] linux58-rc-tkg: Add a patch from Nicholas Kazlauskas to fix an amdgpu crash introduced in 5.7.6 https://gitlab.freedesktop.org/drm/amd/-/issues/1191 --- linux58-rc-tkg/PKGBUILD | 2 +- .../0003-glitched-base.patch | 43 +++++++++++++++++++ 2 files changed, 44 insertions(+), 1 deletion(-) diff --git a/linux58-rc-tkg/PKGBUILD b/linux58-rc-tkg/PKGBUILD index 5311c06..553f126 100644 --- a/linux58-rc-tkg/PKGBUILD +++ b/linux58-rc-tkg/PKGBUILD @@ -126,7 +126,7 @@ sha256sums=('3b983f9c93c791424e4d0894031625d1d6b5ec04ec09a09de0248b374329ef05' '66a03c246037451a77b4d448565b1d7e9368270c7d02872fbd0b5d024ed0a997' 'f6383abef027fd9a430fd33415355e0df492cdc3c90e9938bf2d98f4f63b32e6' 'd02bf5ca08fd610394b9d3a0c3b176d74af206f897dee826e5cbaec97bb4a4aa' - 'e36b6efad764eeede8cf90b4de6ef5f9241e8cf531530b33ee2e024e2961e9b5' + 'd74873190b973f35a3305924d91a851a6dcd1967e586579165e8af7068f27261' '7058e57fd68367b029adc77f2a82928f1433daaf02c8c279cb2d13556c8804d7' '62496f9ca788996181ef145f96ad26291282fcc3fb95cdc04080dcf84365be33' '7fd8e776209dac98627453fda754bdf9aff4a09f27cb0b3766d7983612eb3c74' diff --git a/linux58-rc-tkg/linux58-tkg-patches/0003-glitched-base.patch b/linux58-rc-tkg/linux58-tkg-patches/0003-glitched-base.patch index 9bdb32f..37dc411 100644 --- a/linux58-rc-tkg/linux58-tkg-patches/0003-glitched-base.patch +++ b/linux58-rc-tkg/linux58-tkg-patches/0003-glitched-base.patch @@ -598,3 +598,46 @@ index d2fa3e9ccd97c..bd10cb02fc0ff 100644 if (!strcmp(str, "force")) force_load = 1; if (!strcmp(str, "hwp_only")) + +From 618c5a1236f179525d5f55beba23acf796581623 Mon Sep 17 00:00:00 2001 +From: Nicholas Kazlauskas +Date: Mon, 29 Jun 2020 13:03:52 -0400 +Subject: [PATCH] drm/amd/display: Only revalidate bandwidth on medium and fast + updates + +[Why] +Changes that are fast don't require updating DLG parameters making +this call unnecessary. Considering this is an expensive call it should +not be done on every flip. + +[How] +Guard the validation to only happen if update type isn't FAST. + +Signed-off-by: Nicholas Kazlauskas +--- + drivers/gpu/drm/amd/display/dc/core/dc.c | 10 ++++++---- + 1 file changed, 6 insertions(+), 4 deletions(-) + +diff --git a/drivers/gpu/drm/amd/display/dc/core/dc.c b/drivers/gpu/drm/amd/display/dc/core/dc.c +index 67402d75e67e..942ceb0f6383 100644 +--- a/drivers/gpu/drm/amd/display/dc/core/dc.c ++++ b/drivers/gpu/drm/amd/display/dc/core/dc.c +@@ -2607,10 +2607,12 @@ void dc_commit_updates_for_stream(struct dc *dc, + + copy_stream_update_to_stream(dc, context, stream, stream_update); + +- if (!dc->res_pool->funcs->validate_bandwidth(dc, context, false)) { +- DC_ERROR("Mode validation failed for stream update!\n"); +- dc_release_state(context); +- return; ++ if (update_type > UPDATE_TYPE_FAST) { ++ if (!dc->res_pool->funcs->validate_bandwidth(dc, context, false)) { ++ DC_ERROR("Mode validation failed for stream update!\n"); ++ dc_release_state(context); ++ return; ++ } + } + + commit_planes_for_stream( +-- +2.25.1