]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
drop 4.4 perf patch that was breaking the build
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 16 Oct 2019 15:52:31 +0000 (08:52 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 16 Oct 2019 15:52:31 +0000 (08:52 -0700)
queue-4.4/perf-stat-reset-previous-counts-on-repeat-with-inter.patch [deleted file]
queue-4.4/series

diff --git a/queue-4.4/perf-stat-reset-previous-counts-on-repeat-with-inter.patch b/queue-4.4/perf-stat-reset-previous-counts-on-repeat-with-inter.patch
deleted file mode 100644 (file)
index 5687a30..0000000
+++ /dev/null
@@ -1,168 +0,0 @@
-From d7f988d8e1aa5c4f7691c2dbb580db3188cf6297 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Wed, 4 Sep 2019 15:17:37 +0530
-Subject: perf stat: Reset previous counts on repeat with interval
-
-From: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
-
-[ Upstream commit b63fd11cced17fcb8e133def29001b0f6aaa5e06 ]
-
-When using 'perf stat' with repeat and interval option, it shows wrong
-values for events.
-
-The wrong values will be shown for the first interval on the second and
-subsequent repetitions.
-
-Without the fix:
-
-  # perf stat -r 3 -I 2000 -e faults -e sched:sched_switch -a sleep 5
-
-     2.000282489                 53      faults
-     2.000282489                513      sched:sched_switch
-     4.005478208              3,721      faults
-     4.005478208              2,666      sched:sched_switch
-     5.025470933                395      faults
-     5.025470933              1,307      sched:sched_switch
-     2.009602825 1,84,46,74,40,73,70,95,47,520      faults             <------
-     2.009602825 1,84,46,74,40,73,70,95,49,568      sched:sched_switch  <------
-     4.019612206              4,730      faults
-     4.019612206              2,746      sched:sched_switch
-     5.039615484              3,953      faults
-     5.039615484              1,496      sched:sched_switch
-     2.000274620 1,84,46,74,40,73,70,95,47,520      faults             <------
-     2.000274620 1,84,46,74,40,73,70,95,47,520      sched:sched_switch <------
-     4.000480342              4,282      faults
-     4.000480342              2,303      sched:sched_switch
-     5.000916811              1,322      faults
-     5.000916811              1,064      sched:sched_switch
-  #
-
-prev_raw_counts is allocated when using intervals. This is used when
-calculating the difference in the counts of events when using interval.
-
-The current counts are stored in prev_raw_counts to calculate the
-differences in the next iteration.
-
-On the first interval of the second and subsequent repetitions,
-prev_raw_counts would be the values stored in the last interval of the
-previous repetitions, while the current counts will only be for the
-first interval of the current repetition.
-
-Hence there is a possibility of events showing up as big number.
-
-Fix this by resetting prev_raw_counts whenever perf stat repeats the
-command.
-
-With the fix:
-
-  # perf stat -r 3 -I 2000 -e faults -e sched:sched_switch -a sleep 5
-
-     2.019349347              2,597      faults
-     2.019349347              2,753      sched:sched_switch
-     4.019577372              3,098      faults
-     4.019577372              2,532      sched:sched_switch
-     5.019415481              1,879      faults
-     5.019415481              1,356      sched:sched_switch
-     2.000178813              8,468      faults
-     2.000178813              2,254      sched:sched_switch
-     4.000404621              7,440      faults
-     4.000404621              1,266      sched:sched_switch
-     5.040196079              2,458      faults
-     5.040196079                556      sched:sched_switch
-     2.000191939              6,870      faults
-     2.000191939              1,170      sched:sched_switch
-     4.000414103                541      faults
-     4.000414103                902      sched:sched_switch
-     5.000809863                450      faults
-     5.000809863                364      sched:sched_switch
-  #
-
-Committer notes:
-
-This was broken since the cset introducing the --interval feature, i.e.
---repeat + --interval wasn't tested at that point, add the Fixes tag so
-that automatic scripts can pick this up.
-
-Fixes: 13370a9b5bb8 ("perf stat: Add interval printing")
-Signed-off-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
-Acked-by: Jiri Olsa <jolsa@kernel.org>
-Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
-Tested-by: Ravi Bangoria <ravi.bangoria@linux.ibm.com>
-Cc: Namhyung Kim <namhyung@kernel.org>
-Cc: Naveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
-Cc: Stephane Eranian <eranian@google.com>
-Cc: stable@vger.kernel.org # v3.9+
-Link: http://lore.kernel.org/lkml/20190904094738.9558-2-srikar@linux.vnet.ibm.com
-[ Fixed up conflicts with libperf, i.e. some perf_{evsel,evlist} lost the 'perf' prefix ]
-Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- tools/perf/builtin-stat.c |  3 +++
- tools/perf/util/stat.c    | 17 +++++++++++++++++
- tools/perf/util/stat.h    |  1 +
- 3 files changed, 21 insertions(+)
-
-diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c
-index 65a6922db7223..e80d47fdda3e1 100644
---- a/tools/perf/builtin-stat.c
-+++ b/tools/perf/builtin-stat.c
-@@ -1415,6 +1415,9 @@ int cmd_stat(int argc, const char **argv, const char *prefix __maybe_unused)
-                       fprintf(output, "[ perf stat: executing run #%d ... ]\n",
-                               run_idx + 1);
-+              if (run_idx != 0)
-+                      perf_evlist__reset_prev_raw_counts(evsel_list);
-+
-               status = run_perf_stat(argc, argv);
-               if (forever && status != -1 && !interval) {
-                       print_counters(NULL, argc, argv);
-diff --git a/tools/perf/util/stat.c b/tools/perf/util/stat.c
-index 6ce624cb70012..a252714700d3c 100644
---- a/tools/perf/util/stat.c
-+++ b/tools/perf/util/stat.c
-@@ -140,6 +140,15 @@ void perf_evsel__free_prev_raw_counts(struct perf_evsel *evsel)
-       evsel->prev_raw_counts = NULL;
- }
-+static void perf_evsel__reset_prev_raw_counts(struct perf_evsel *evsel)
-+{
-+      if (evsel->prev_raw_counts) {
-+              evsel->prev_raw_counts->aggr.val = 0;
-+              evsel->prev_raw_counts->aggr.ena = 0;
-+              evsel->prev_raw_counts->aggr.run = 0;
-+       }
-+}
-+
- int perf_evsel__alloc_stats(struct perf_evsel *evsel, bool alloc_raw)
- {
-       int ncpus = perf_evsel__nr_cpus(evsel);
-@@ -190,6 +199,14 @@ void perf_evlist__reset_stats(struct perf_evlist *evlist)
-       }
- }
-+void perf_evlist__reset_prev_raw_counts(struct perf_evlist *evlist)
-+{
-+      struct perf_evsel *evsel;
-+
-+      evlist__for_each_entry(evlist, evsel)
-+              perf_evsel__reset_prev_raw_counts(evsel);
-+}
-+
- static void zero_per_pkg(struct perf_evsel *counter)
- {
-       if (counter->per_pkg_mask)
-diff --git a/tools/perf/util/stat.h b/tools/perf/util/stat.h
-index da1d11c4f8c19..5d6631207a506 100644
---- a/tools/perf/util/stat.h
-+++ b/tools/perf/util/stat.h
-@@ -87,6 +87,7 @@ int perf_evsel__alloc_stats(struct perf_evsel *evsel, bool alloc_raw);
- int perf_evlist__alloc_stats(struct perf_evlist *evlist, bool alloc_raw);
- void perf_evlist__free_stats(struct perf_evlist *evlist);
- void perf_evlist__reset_stats(struct perf_evlist *evlist);
-+void perf_evlist__reset_prev_raw_counts(struct perf_evlist *evlist);
- int perf_stat_process_counter(struct perf_stat_config *config,
-                             struct perf_evsel *counter);
--- 
-2.20.1
-
index 8d1e90d92263c9b412137a92e52016120e14e7ea..b2b4332278adfc975039da7716b0630845c3eaef 100644 (file)
@@ -21,7 +21,6 @@ fuse-fix-memleak-in-cuse_channel_open.patch
 kernel-elfcore.c-include-proper-prototypes.patch
 tools-lib-traceevent-do-not-free-tep-cmdlines-in-add.patch
 perf-stat-fix-a-segmentation-fault-when-using-repeat.patch
-perf-stat-reset-previous-counts-on-repeat-with-inter.patch
 crypto-caam-fix-concurrency-issue-in-givencrypt-descriptor.patch
 cfg80211-add-and-use-strongly-typed-element-iteration-macros.patch
 cfg80211-use-const-more-consistently-in-for_each_element-macros.patch