From: Sasha Levin Date: Thu, 16 Nov 2023 13:56:10 +0000 (-0500) Subject: Drop perf-evlist-add-evlist__add_dummy_on_all_cpus.patch X-Git-Tag: v4.14.330~3 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=b776656726fde7f9b03b06543b86195f3ef055fd;p=thirdparty%2Fkernel%2Fstable-queue.git Drop perf-evlist-add-evlist__add_dummy_on_all_cpus.patch Signed-off-by: Sasha Levin --- diff --git a/queue-5.10/perf-evlist-add-evlist__add_dummy_on_all_cpus.patch b/queue-5.10/perf-evlist-add-evlist__add_dummy_on_all_cpus.patch deleted file mode 100644 index 260d0850627..00000000000 --- a/queue-5.10/perf-evlist-add-evlist__add_dummy_on_all_cpus.patch +++ /dev/null @@ -1,106 +0,0 @@ -From fa816e764e0de49974df6db2bc09576c3e53e09f Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Tue, 24 May 2022 10:54:26 +0300 -Subject: perf evlist: Add evlist__add_dummy_on_all_cpus() - -From: Adrian Hunter - -[ Upstream commit 126d68fdcabed8c2ca5ffaba785add93ef722da8 ] - -Add evlist__add_dummy_on_all_cpus() to enable creating a system-wide dummy -event that sets up the system-wide maps before map propagation. - -For convenience, add evlist__add_aux_dummy() so that the logic can be used -whether or not the event needs to be system-wide. - -Signed-off-by: Adrian Hunter -Acked-by: Ian Rogers -Acked-by: Namhyung Kim -Cc: Alexey Bayduraev -Cc: Ian Rogers -Cc: Jiri Olsa -Cc: Leo Yan -Link: https://lore.kernel.org/r/20220524075436.29144-6-adrian.hunter@intel.com -Signed-off-by: Arnaldo Carvalho de Melo -Stable-dep-of: f9cdeb58a9cf ("perf evlist: Avoid frequency mode for the dummy event") -Signed-off-by: Sasha Levin ---- - tools/perf/util/evlist.c | 45 ++++++++++++++++++++++++++++++++++++++++ - tools/perf/util/evlist.h | 5 +++++ - 2 files changed, 50 insertions(+) - -diff --git a/tools/perf/util/evlist.c b/tools/perf/util/evlist.c -index 98ae432470cdd..117420abdc325 100644 ---- a/tools/perf/util/evlist.c -+++ b/tools/perf/util/evlist.c -@@ -261,6 +261,51 @@ int evlist__add_dummy(struct evlist *evlist) - return 0; - } - -+static void evlist__add_on_all_cpus(struct evlist *evlist, struct evsel *evsel) -+{ -+ evsel->core.system_wide = true; -+ -+ /* -+ * All CPUs. -+ * -+ * Note perf_event_open() does not accept CPUs that are not online, so -+ * in fact this CPU list will include only all online CPUs. -+ */ -+ perf_cpu_map__put(evsel->core.own_cpus); -+ evsel->core.own_cpus = perf_cpu_map__new(NULL); -+ perf_cpu_map__put(evsel->core.cpus); -+ evsel->core.cpus = perf_cpu_map__get(evsel->core.own_cpus); -+ -+ /* No threads */ -+ perf_thread_map__put(evsel->core.threads); -+ evsel->core.threads = perf_thread_map__new_dummy(); -+ -+ evlist__add(evlist, evsel); -+} -+ -+struct evsel *evlist__add_aux_dummy(struct evlist *evlist, bool system_wide) -+{ -+ struct evsel *evsel = evlist__dummy_event(evlist); -+ -+ if (!evsel) -+ return NULL; -+ -+ evsel->core.attr.exclude_kernel = 1; -+ evsel->core.attr.exclude_guest = 1; -+ evsel->core.attr.exclude_hv = 1; -+ evsel->core.attr.freq = 0; -+ evsel->core.attr.sample_period = 1; -+ evsel->no_aux_samples = true; -+ evsel->name = strdup("dummy:u"); -+ -+ if (system_wide) -+ evlist__add_on_all_cpus(evlist, evsel); -+ else -+ evlist__add(evlist, evsel); -+ -+ return evsel; -+} -+ - static int evlist__add_attrs(struct evlist *evlist, struct perf_event_attr *attrs, size_t nr_attrs) - { - struct evsel *evsel, *n; -diff --git a/tools/perf/util/evlist.h b/tools/perf/util/evlist.h -index 9298fce53ea31..eb36f85ba3f3e 100644 ---- a/tools/perf/util/evlist.h -+++ b/tools/perf/util/evlist.h -@@ -111,6 +111,11 @@ int __evlist__add_default_attrs(struct evlist *evlist, - __evlist__add_default_attrs(evlist, array, ARRAY_SIZE(array)) - - int evlist__add_dummy(struct evlist *evlist); -+struct evsel *evlist__add_aux_dummy(struct evlist *evlist, bool system_wide); -+static inline struct evsel *evlist__add_dummy_on_all_cpus(struct evlist *evlist) -+{ -+ return evlist__add_aux_dummy(evlist, true); -+} - - int perf_evlist__add_sb_event(struct evlist *evlist, - struct perf_event_attr *attr, --- -2.42.0 - diff --git a/queue-5.10/series b/queue-5.10/series index 2ae31cf1368..a450499a531 100644 --- a/queue-5.10/series +++ b/queue-5.10/series @@ -120,7 +120,6 @@ leds-pwm-don-t-disable-the-pwm-when-the-led-should-b.patch leds-trigger-ledtrig-cpu-fix-output-may-be-truncated.patch tty-tty_jobctrl-fix-pid-memleak-in-disassociate_ctty.patch livepatch-fix-missing-newline-character-in-klp_resol.patch -perf-evlist-add-evlist__add_dummy_on_all_cpus.patch usb-dwc2-fix-possible-null-pointer-dereference-cause.patch dmaengine-ti-edma-handle-irq_of_parse_and_map-errors.patch misc-st_core-do-not-call-kfree_skb-under-spin_lock_i.patch diff --git a/queue-5.15/perf-evlist-add-evlist__add_dummy_on_all_cpus.patch b/queue-5.15/perf-evlist-add-evlist__add_dummy_on_all_cpus.patch deleted file mode 100644 index 483906301bf..00000000000 --- a/queue-5.15/perf-evlist-add-evlist__add_dummy_on_all_cpus.patch +++ /dev/null @@ -1,106 +0,0 @@ -From a4455e5be294c717c5f1b67c1ef9471f3229e41f Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Tue, 24 May 2022 10:54:26 +0300 -Subject: perf evlist: Add evlist__add_dummy_on_all_cpus() - -From: Adrian Hunter - -[ Upstream commit 126d68fdcabed8c2ca5ffaba785add93ef722da8 ] - -Add evlist__add_dummy_on_all_cpus() to enable creating a system-wide dummy -event that sets up the system-wide maps before map propagation. - -For convenience, add evlist__add_aux_dummy() so that the logic can be used -whether or not the event needs to be system-wide. - -Signed-off-by: Adrian Hunter -Acked-by: Ian Rogers -Acked-by: Namhyung Kim -Cc: Alexey Bayduraev -Cc: Ian Rogers -Cc: Jiri Olsa -Cc: Leo Yan -Link: https://lore.kernel.org/r/20220524075436.29144-6-adrian.hunter@intel.com -Signed-off-by: Arnaldo Carvalho de Melo -Stable-dep-of: f9cdeb58a9cf ("perf evlist: Avoid frequency mode for the dummy event") -Signed-off-by: Sasha Levin ---- - tools/perf/util/evlist.c | 45 ++++++++++++++++++++++++++++++++++++++++ - tools/perf/util/evlist.h | 5 +++++ - 2 files changed, 50 insertions(+) - -diff --git a/tools/perf/util/evlist.c b/tools/perf/util/evlist.c -index 39d294f6c3218..a75cdcf381308 100644 ---- a/tools/perf/util/evlist.c -+++ b/tools/perf/util/evlist.c -@@ -258,6 +258,51 @@ int evlist__add_dummy(struct evlist *evlist) - return 0; - } - -+static void evlist__add_on_all_cpus(struct evlist *evlist, struct evsel *evsel) -+{ -+ evsel->core.system_wide = true; -+ -+ /* -+ * All CPUs. -+ * -+ * Note perf_event_open() does not accept CPUs that are not online, so -+ * in fact this CPU list will include only all online CPUs. -+ */ -+ perf_cpu_map__put(evsel->core.own_cpus); -+ evsel->core.own_cpus = perf_cpu_map__new(NULL); -+ perf_cpu_map__put(evsel->core.cpus); -+ evsel->core.cpus = perf_cpu_map__get(evsel->core.own_cpus); -+ -+ /* No threads */ -+ perf_thread_map__put(evsel->core.threads); -+ evsel->core.threads = perf_thread_map__new_dummy(); -+ -+ evlist__add(evlist, evsel); -+} -+ -+struct evsel *evlist__add_aux_dummy(struct evlist *evlist, bool system_wide) -+{ -+ struct evsel *evsel = evlist__dummy_event(evlist); -+ -+ if (!evsel) -+ return NULL; -+ -+ evsel->core.attr.exclude_kernel = 1; -+ evsel->core.attr.exclude_guest = 1; -+ evsel->core.attr.exclude_hv = 1; -+ evsel->core.attr.freq = 0; -+ evsel->core.attr.sample_period = 1; -+ evsel->no_aux_samples = true; -+ evsel->name = strdup("dummy:u"); -+ -+ if (system_wide) -+ evlist__add_on_all_cpus(evlist, evsel); -+ else -+ evlist__add(evlist, evsel); -+ -+ return evsel; -+} -+ - static int evlist__add_attrs(struct evlist *evlist, struct perf_event_attr *attrs, size_t nr_attrs) - { - struct evsel *evsel, *n; -diff --git a/tools/perf/util/evlist.h b/tools/perf/util/evlist.h -index ec177f783ee67..decf5c944adba 100644 ---- a/tools/perf/util/evlist.h -+++ b/tools/perf/util/evlist.h -@@ -112,6 +112,11 @@ int __evlist__add_default_attrs(struct evlist *evlist, - int arch_evlist__add_default_attrs(struct evlist *evlist); - - int evlist__add_dummy(struct evlist *evlist); -+struct evsel *evlist__add_aux_dummy(struct evlist *evlist, bool system_wide); -+static inline struct evsel *evlist__add_dummy_on_all_cpus(struct evlist *evlist) -+{ -+ return evlist__add_aux_dummy(evlist, true); -+} - - int evlist__add_sb_event(struct evlist *evlist, struct perf_event_attr *attr, - evsel__sb_cb_t cb, void *data); --- -2.42.0 - diff --git a/queue-5.15/series b/queue-5.15/series index c1e0d642ebf..2911c0022e4 100644 --- a/queue-5.15/series +++ b/queue-5.15/series @@ -167,7 +167,6 @@ f2fs-compress-fix-to-avoid-use-after-free-on-dic.patch f2fs-compress-fix-to-avoid-redundant-compress-extens.patch tty-tty_jobctrl-fix-pid-memleak-in-disassociate_ctty.patch livepatch-fix-missing-newline-character-in-klp_resol.patch -perf-evlist-add-evlist__add_dummy_on_all_cpus.patch dmaengine-idxd-register-dsa_bus_type-before-register.patch usb-dwc2-fix-possible-null-pointer-dereference-cause.patch usb-chipidea-fix-dma-overwrite-for-tegra.patch