linux58-rc-tkg: RC4

This commit is contained in:
Tk-Glitch
2020-07-06 03:47:30 +02:00
parent cbb406887a
commit 3e8388b85d
3 changed files with 7 additions and 66 deletions

View File

@@ -598,46 +598,3 @@ 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 <nicholas.kazlauskas@amd.com>
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 <nicholas.kazlauskas@amd.com>
---
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

View File

@@ -6723,14 +6723,14 @@ index 000000000000..02d7d5a67c77
+{
+ struct mm_struct *mm = current->active_mm;
+
+ BUG_ON(cpu_online(smp_processor_id()));
+ BUG_ON(current != this_rq()->idle);
+
+ if (mm != &init_mm) {
+ switch_mm(mm, &init_mm, current);
+ current->active_mm = &init_mm;
+ finish_arch_post_lock_switch();
+ }
+ mmdrop(mm);
+
+ /* finish_cpu(), as ran on the BP, will clean up the active_mm state */
+}
+
+/*
@@ -8524,19 +8524,3 @@ index b5e3496cf803..0816db0b9c16 100644
};
struct wakeup_test_data *x = data;
diff --git a/kernel/cpu.c b/kernel/cpu.c
index 244d305443773..90b77028233b0 100644
--- a/kernel/cpu.c
+++ b/kernel/cpu.c
@@ -1565,7 +1565,11 @@ static struct cpuhp_step cpuhp_hp_states[] = {
[CPUHP_BRINGUP_CPU] = {
.name = "cpu:bringup",
.startup.single = bringup_cpu,
+#ifdef CONFIG_SCHED_PDS
+ .teardown.single = NULL,
+#else
.teardown.single = finish_cpu,
+#endif
.cant_stop = true,
},
/* Final state before CPU kills itself */