]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
Fixes for 5.17
authorSasha Levin <sashal@kernel.org>
Sun, 15 May 2022 21:12:47 +0000 (17:12 -0400)
committerSasha Levin <sashal@kernel.org>
Sun, 15 May 2022 21:12:47 +0000 (17:12 -0400)
Signed-off-by: Sasha Levin <sashal@kernel.org>
queue-5.17/interconnect-restore-sync-state-by-ignoring-ipa-virt.patch [new file with mode: 0644]
queue-5.17/perf-tests-fix-coresight-perf-test-failure.patch [new file with mode: 0644]
queue-5.17/series

diff --git a/queue-5.17/interconnect-restore-sync-state-by-ignoring-ipa-virt.patch b/queue-5.17/interconnect-restore-sync-state-by-ignoring-ipa-virt.patch
new file mode 100644 (file)
index 0000000..1fc1feb
--- /dev/null
@@ -0,0 +1,61 @@
+From d2c100a6000e170d1ae53751b471df4fad0e1036 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Tue, 26 Apr 2022 18:32:26 -0700
+Subject: interconnect: Restore sync state by ignoring ipa-virt in provider
+ count
+
+From: Stephen Boyd <swboyd@chromium.org>
+
+[ Upstream commit 20ce30fb4750f2ffc130cdcb26232b1dd87cd0a5 ]
+
+Ignore compatible strings for the IPA virt drivers that were removed in
+commits 2fb251c26560 ("interconnect: qcom: sdx55: Drop IP0
+interconnects") and 2f3724930eb4 ("interconnect: qcom: sc7180: Drop IP0
+interconnects") so that the sync state logic can kick in again.
+Otherwise all the interconnects in the system will stay pegged at max
+speeds because 'providers_count' is always going to be one larger than
+the number of drivers that will ever probe on sc7180 or sdx55. This
+fixes suspend on sc7180 and sdx55 devices when you don't have a
+devicetree patch to remove the ipa-virt compatible node.
+
+Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
+Cc: Doug Anderson <dianders@chromium.org>
+Cc: Alex Elder <elder@linaro.org>
+Cc: Taniya Das <quic_tdas@quicinc.com>
+Cc: Mike Tipton <quic_mdtipton@quicinc.com>
+Fixes: 2fb251c26560 ("interconnect: qcom: sdx55: Drop IP0 interconnects")
+Fixes: 2f3724930eb4 ("interconnect: qcom: sc7180: Drop IP0 interconnects")
+Signed-off-by: Stephen Boyd <swboyd@chromium.org>
+Reviewed-by: Alex Elder <elder@linaro.org>
+Reviewed-by: Douglas Anderson <dianders@chromium.org>
+Link: https://lore.kernel.org/r/20220427013226.341209-1-swboyd@chromium.org
+Signed-off-by: Georgi Djakov <djakov@kernel.org>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ drivers/interconnect/core.c | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/interconnect/core.c b/drivers/interconnect/core.c
+index 9050ca1f4285..808f6e7a8048 100644
+--- a/drivers/interconnect/core.c
++++ b/drivers/interconnect/core.c
+@@ -1087,9 +1087,15 @@ static int of_count_icc_providers(struct device_node *np)
+ {
+       struct device_node *child;
+       int count = 0;
++      const struct of_device_id __maybe_unused ignore_list[] = {
++              { .compatible = "qcom,sc7180-ipa-virt" },
++              { .compatible = "qcom,sdx55-ipa-virt" },
++              {}
++      };
+       for_each_available_child_of_node(np, child) {
+-              if (of_property_read_bool(child, "#interconnect-cells"))
++              if (of_property_read_bool(child, "#interconnect-cells") &&
++                  likely(!of_match_node(ignore_list, child)))
+                       count++;
+               count += of_count_icc_providers(child);
+       }
+-- 
+2.35.1
+
diff --git a/queue-5.17/perf-tests-fix-coresight-perf-test-failure.patch b/queue-5.17/perf-tests-fix-coresight-perf-test-failure.patch
new file mode 100644 (file)
index 0000000..8dacd1e
--- /dev/null
@@ -0,0 +1,60 @@
+From cd53daedc577d2ca07cb6097bd0e7e3987ce35cd Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Thu, 28 Apr 2022 10:19:47 -0500
+Subject: perf tests: Fix coresight `perf test` failure.
+
+From: Jeremy Linton <jeremy.linton@arm.com>
+
+[ Upstream commit 45fa7c38696bae632310c2876ba81fdfa25cc9c2 ]
+
+Currently the `perf test` always fails the coresight test like:
+
+  89: Check Arm CoreSight trace data recording and synthesized samples: FAILED!
+
+That is because the test_arm_coresight.sh is attempting to SIGINT the
+parent but is using $$ rather than $PPID and it sigint's itself when
+run under the perf test framework.
+
+Since this is done in a trap clause it ends up returning a non zero
+return.
+
+Since $PPID is a bash ism and not all distros are linking /bin/sh to
+bash, the alternative parent pid lookups are uglier than just dropping
+the kill, and its not strictly needed, lets pick the simple solution and
+drop the sigint.
+
+Fixes: 133fe2e617e48ca0 ("perf tests: Improve temp file cleanup in test_arm_coresight.sh")
+Reviewed-by: James Clark <james.clark@arm.com>
+Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
+Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
+Cc: Ian Rogers <irogers@google.com>
+Cc: Ingo Molnar <mingo@redhat.com>
+Cc: James Clark <james.clark@arm.com>
+Cc: Jiri Olsa <jolsa@kernel.org>
+Cc: Leo Yan <leo.yan@linaro.org>
+Cc: Mark Rutland <mark.rutland@arm.com>
+Cc: Namhyung Kim <namhyung@kernel.org>
+Cc: Peter Zijlstra <peterz@infradead.org>
+Jeremy Linton <jeremy.linton@arm.com>
+Link: https://lore.kernel.org/r/20220428151947.290146-1-jeremy.linton@arm.com
+Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ tools/perf/tests/shell/test_arm_coresight.sh | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/tools/perf/tests/shell/test_arm_coresight.sh b/tools/perf/tests/shell/test_arm_coresight.sh
+index 6de53b7ef5ff..e4cb4f1806ff 100755
+--- a/tools/perf/tests/shell/test_arm_coresight.sh
++++ b/tools/perf/tests/shell/test_arm_coresight.sh
+@@ -29,7 +29,6 @@ cleanup_files()
+       rm -f ${file}
+       rm -f "${perfdata}.old"
+       trap - exit term int
+-      kill -2 $$
+       exit $glb_err
+ }
+-- 
+2.35.1
+
index acb4d69d2d0daa53fdff89ef66f2c84a73bc3287..c1d5535da01369d1dae684f3c438ce1d59fab79d 100644 (file)
@@ -66,3 +66,5 @@ tcp-dynamically-allocate-the-perturb-table-used-by-s.patch
 tcp-increase-source-port-perturb-table-to-2-16.patch
 tcp-drop-the-hash_32-part-from-the-index-calculation.patch
 block-do-not-call-folio_next-on-an-unreferenced-foli.patch
+interconnect-restore-sync-state-by-ignoring-ipa-virt.patch
+perf-tests-fix-coresight-perf-test-failure.patch