All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ian Rogers <irogers@google.com>
To: Jiri Olsa <jolsa@redhat.com>
Cc: Andi Kleen <ak@linux.intel.com>,
	Namhyung Kim <namhyung@kernel.org>,
	John Garry <john.garry@huawei.com>,
	Kajol Jain <kjain@linux.ibm.com>,
	"Paul A . Clarke" <pc@us.ibm.com>,
	Arnaldo Carvalho de Melo <acme@kernel.org>,
	Riccardo Mancini <rickyman7@gmail.com>,
	Kan Liang <kan.liang@linux.intel.com>,
	Peter Zijlstra <peterz@infradead.org>,
	Ingo Molnar <mingo@redhat.com>,
	Mark Rutland <mark.rutland@arm.com>,
	Alexander Shishkin <alexander.shishkin@linux.intel.com>,
	linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org,
	Vineet Singh <vineet.singh@intel.com>,
	James Clark <james.clark@arm.com>,
	Mathieu Poirier <mathieu.poirier@linaro.org>,
	Suzuki K Poulose <suzuki.poulose@arm.com>,
	Mike Leach <mike.leach@linaro.org>, Leo Yan <leo.yan@linaro.org>,
	coresight@lists.linaro.org, linux-arm-kernel@lists.infradead.org,
	zhengjun.xing@intel.com, eranian@google.com
Subject: Re: [PATCH v3] perf evlist: Remove group option.
Date: Tue, 4 Jan 2022 09:01:32 -0800	[thread overview]
Message-ID: <CAP-5=fXyBU4yF=S2FSjd6sZXCwqqJ=BS5eOynPk0C4KTs9EcsQ@mail.gmail.com> (raw)
In-Reply-To: <YdRX5zgB3AORM/Wd@krava>

On Tue, Jan 4, 2022 at 6:21 AM Jiri Olsa <jolsa@redhat.com> wrote:
>
> On Wed, Dec 29, 2021 at 11:19:43PM -0800, Ian Rogers wrote:
> > The group option predates grouping events using curly braces added in
> > commit 89efb029502d ("perf tools: Add support to parse event group syntax")
> > The --group option was retained for legacy support (in August 2012) but
> > keeping it adds complexity.
> >
> > v2 and v3. were rebases.
> >
> > Signed-off-by: Ian Rogers <irogers@google.com>
>
> it should not be part of this patchset right?
> I see it was posted separately

Yep, sorry. Not part of this patch set I hadn't realized I had another
v3 patch when I ran send-mail. This patch was sent out a little
earlier already.

Thanks,
Ian

> jirka
>
> > ---
> >  tools/perf/Documentation/perf-record.txt |  4 ----
> >  tools/perf/Documentation/perf-top.txt    |  7 ++-----
> >  tools/perf/builtin-record.c              |  2 --
> >  tools/perf/builtin-stat.c                |  6 ------
> >  tools/perf/builtin-top.c                 |  2 --
> >  tools/perf/tests/attr/README             |  2 --
> >  tools/perf/tests/attr/test-record-group  | 22 ----------------------
> >  tools/perf/tests/attr/test-stat-group    | 17 -----------------
> >  tools/perf/util/evlist.c                 |  2 +-
> >  tools/perf/util/evlist.h                 |  2 --
> >  tools/perf/util/python.c                 |  8 --------
> >  tools/perf/util/record.c                 |  7 -------
> >  tools/perf/util/record.h                 |  1 -
> >  13 files changed, 3 insertions(+), 79 deletions(-)
> >  delete mode 100644 tools/perf/tests/attr/test-record-group
> >  delete mode 100644 tools/perf/tests/attr/test-stat-group
> >
> > diff --git a/tools/perf/Documentation/perf-record.txt b/tools/perf/Documentation/perf-record.txt
> > index 55df7b073a55..960fb1ad3f27 100644
> > --- a/tools/perf/Documentation/perf-record.txt
> > +++ b/tools/perf/Documentation/perf-record.txt
> > @@ -238,10 +238,6 @@ OPTIONS
> >       Also, by adding a comma, the number of mmap pages for AUX
> >       area tracing can be specified.
> >
> > ---group::
> > -     Put all events in a single event group.  This precedes the --event
> > -     option and remains only for backward compatibility.  See --event.
> > -
> >  -g::
> >       Enables call-graph (stack chain/backtrace) recording for both
> >       kernel space and user space.
> > diff --git a/tools/perf/Documentation/perf-top.txt b/tools/perf/Documentation/perf-top.txt
> > index cac3dfbee7d8..acbafe777e52 100644
> > --- a/tools/perf/Documentation/perf-top.txt
> > +++ b/tools/perf/Documentation/perf-top.txt
> > @@ -51,9 +51,6 @@ Default is to monitor all CPUS.
> >  --count-filter=<count>::
> >       Only display functions with more events than this.
> >
> > ---group::
> > -        Put the counters into a counter group.
> > -
> >  --group-sort-idx::
> >       Sort the output by the event at the index n in group. If n is invalid,
> >       sort by the first event. It can support multiple groups with different
> > @@ -313,10 +310,10 @@ use '-e e1 -e e2 -G foo,foo' or just use '-e e1 -e e2 -G foo'.
> >
> >               perf top -e cycles,probe:icmp_rcv --switch-on=probe:icmp_rcv
> >
> > -        Alternatively one can ask for --group and then two overhead columns
> > +        Alternatively one can ask for a group and then two overhead columns
> >             will appear, the first for cycles and the second for the switch-on event.
> >
> > -             perf top --group -e cycles,probe:icmp_rcv --switch-on=probe:icmp_rcv
> > +             perf top -e '{cycles,probe:icmp_rcv}' --switch-on=probe:icmp_rcv
> >
> >       This may be interesting to measure a workload only after some initialization
> >       phase is over, i.e. insert a perf probe at that point and use the above
> > diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c
> > index 6ac2160913ea..54eff61f78eb 100644
> > --- a/tools/perf/builtin-record.c
> > +++ b/tools/perf/builtin-record.c
> > @@ -2521,8 +2521,6 @@ static struct option __record_options[] = {
> >       OPT_CALLBACK(0, "mmap-flush", &record.opts, "number",
> >                    "Minimal number of bytes that is extracted from mmap data pages (default: 1)",
> >                    record__mmap_flush_parse),
> > -     OPT_BOOLEAN(0, "group", &record.opts.group,
> > -                 "put the counters into a counter group"),
> >       OPT_CALLBACK_NOOPT('g', NULL, &callchain_param,
> >                          NULL, "enables call-graph recording" ,
> >                          &record_callchain_opt),
> > diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c
> > index f6ca2b054c5b..8ce4ca6111ae 100644
> > --- a/tools/perf/builtin-stat.c
> > +++ b/tools/perf/builtin-stat.c
> > @@ -180,7 +180,6 @@ static bool                       topdown_run                     = false;
> >  static bool                  smi_cost                        = false;
> >  static bool                  smi_reset                       = false;
> >  static int                   big_num_opt                     =  -1;
> > -static bool                  group                           = false;
> >  static const char            *pre_cmd                        = NULL;
> >  static const char            *post_cmd                       = NULL;
> >  static bool                  sync_run                        = false;
> > @@ -800,9 +799,6 @@ static int __run_perf_stat(int argc, const char **argv, int run_idx)
> >               child_pid = evsel_list->workload.pid;
> >       }
> >
> > -     if (group)
> > -             evlist__set_leader(evsel_list);
> > -
> >       if (affinity__setup(&affinity) < 0)
> >               return -1;
> >
> > @@ -1212,8 +1208,6 @@ static struct option stat_options[] = {
> >  #endif
> >       OPT_BOOLEAN('a', "all-cpus", &target.system_wide,
> >                   "system-wide collection from all CPUs"),
> > -     OPT_BOOLEAN('g', "group", &group,
> > -                 "put the counters into a counter group"),
> >       OPT_BOOLEAN(0, "scale", &stat_config.scale,
> >                   "Use --no-scale to disable counter scaling for multiplexing"),
> >       OPT_INCR('v', "verbose", &verbose,
> > diff --git a/tools/perf/builtin-top.c b/tools/perf/builtin-top.c
> > index 1fc390f136dd..0d8441942f34 100644
> > --- a/tools/perf/builtin-top.c
> > +++ b/tools/perf/builtin-top.c
> > @@ -1472,8 +1472,6 @@ int cmd_top(int argc, const char **argv)
> >                           "dump the symbol table used for profiling"),
> >       OPT_INTEGER('f', "count-filter", &top.count_filter,
> >                   "only display functions with more events than this"),
> > -     OPT_BOOLEAN(0, "group", &opts->group,
> > -                         "put the counters into a counter group"),
> >       OPT_BOOLEAN('i', "no-inherit", &opts->no_inherit,
> >                   "child tasks do not inherit counters"),
> >       OPT_STRING(0, "sym-annotate", &top.sym_filter, "symbol name",
> > diff --git a/tools/perf/tests/attr/README b/tools/perf/tests/attr/README
> > index a36f49fb4dbe..f538272af57b 100644
> > --- a/tools/perf/tests/attr/README
> > +++ b/tools/perf/tests/attr/README
> > @@ -47,7 +47,6 @@ Following tests are defined (with perf commands):
> >    perf record -g kill                           (test-record-graph-default)
> >    perf record --call-graph dwarf kill                (test-record-graph-dwarf)
> >    perf record --call-graph fp kill              (test-record-graph-fp)
> > -  perf record --group -e cycles,instructions kill (test-record-group)
> >    perf record -e '{cycles,instructions}' kill   (test-record-group1)
> >    perf record -e '{cycles/period=1/,instructions/period=2/}:S' kill (test-record-group2)
> >    perf record -D kill                           (test-record-no-delay)
> > @@ -61,6 +60,5 @@ Following tests are defined (with perf commands):
> >    perf stat -d kill                             (test-stat-detailed-1)
> >    perf stat -dd kill                            (test-stat-detailed-2)
> >    perf stat -ddd kill                           (test-stat-detailed-3)
> > -  perf stat --group -e cycles,instructions kill (test-stat-group)
> >    perf stat -e '{cycles,instructions}' kill     (test-stat-group1)
> >    perf stat -i -e cycles kill                   (test-stat-no-inherit)
> > diff --git a/tools/perf/tests/attr/test-record-group b/tools/perf/tests/attr/test-record-group
> > deleted file mode 100644
> > index 14ee60fd3f41..000000000000
> > --- a/tools/perf/tests/attr/test-record-group
> > +++ /dev/null
> > @@ -1,22 +0,0 @@
> > -[config]
> > -command = record
> > -args    = --no-bpf-event --group -e cycles,instructions kill >/dev/null 2>&1
> > -ret     = 1
> > -
> > -[event-1:base-record]
> > -fd=1
> > -group_fd=-1
> > -sample_type=327
> > -read_format=4
> > -
> > -[event-2:base-record]
> > -fd=2
> > -group_fd=1
> > -config=1
> > -sample_type=327
> > -read_format=4
> > -mmap=0
> > -comm=0
> > -task=0
> > -enable_on_exec=0
> > -disabled=0
> > diff --git a/tools/perf/tests/attr/test-stat-group b/tools/perf/tests/attr/test-stat-group
> > deleted file mode 100644
> > index e15d6946e9b3..000000000000
> > --- a/tools/perf/tests/attr/test-stat-group
> > +++ /dev/null
> > @@ -1,17 +0,0 @@
> > -[config]
> > -command = stat
> > -args    = --group -e cycles,instructions kill >/dev/null 2>&1
> > -ret     = 1
> > -
> > -[event-1:base-stat]
> > -fd=1
> > -group_fd=-1
> > -read_format=3|15
> > -
> > -[event-2:base-stat]
> > -fd=2
> > -group_fd=1
> > -config=1
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=3|15
> > diff --git a/tools/perf/util/evlist.c b/tools/perf/util/evlist.c
> > index 5f92319ce258..2e11d82d15e0 100644
> > --- a/tools/perf/util/evlist.c
> > +++ b/tools/perf/util/evlist.c
> > @@ -224,7 +224,7 @@ int __evlist__set_tracepoints_handlers(struct evlist *evlist,
> >       return err;
> >  }
> >
> > -void evlist__set_leader(struct evlist *evlist)
> > +static void evlist__set_leader(struct evlist *evlist)
> >  {
> >       perf_evlist__set_leader(&evlist->core);
> >  }
> > diff --git a/tools/perf/util/evlist.h b/tools/perf/util/evlist.h
> > index 27594900a052..ebab48a8120f 100644
> > --- a/tools/perf/util/evlist.h
> > +++ b/tools/perf/util/evlist.h
> > @@ -203,8 +203,6 @@ void evlist__set_selected(struct evlist *evlist, struct evsel *evsel);
> >  int evlist__create_maps(struct evlist *evlist, struct target *target);
> >  int evlist__apply_filters(struct evlist *evlist, struct evsel **err_evsel);
> >
> > -void evlist__set_leader(struct evlist *evlist);
> > -
> >  u64 __evlist__combined_sample_type(struct evlist *evlist);
> >  u64 evlist__combined_sample_type(struct evlist *evlist);
> >  u64 evlist__combined_branch_type(struct evlist *evlist);
> > diff --git a/tools/perf/util/python.c b/tools/perf/util/python.c
> > index 7f782a31bda3..d063375c346a 100644
> > --- a/tools/perf/util/python.c
> > +++ b/tools/perf/util/python.c
> > @@ -1121,14 +1121,6 @@ static PyObject *pyrf_evlist__open(struct pyrf_evlist *pevlist,
> >                                  PyObject *args, PyObject *kwargs)
> >  {
> >       struct evlist *evlist = &pevlist->evlist;
> > -     int group = 0;
> > -     static char *kwlist[] = { "group", NULL };
> > -
> > -     if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|OOii", kwlist, &group))
> > -             return NULL;
> > -
> > -     if (group)
> > -             evlist__set_leader(evlist);
> >
> >       if (evlist__open(evlist) < 0) {
> >               PyErr_SetFromErrno(PyExc_OSError);
> > diff --git a/tools/perf/util/record.c b/tools/perf/util/record.c
> > index bff669b615ee..9e694db7c7ee 100644
> > --- a/tools/perf/util/record.c
> > +++ b/tools/perf/util/record.c
> > @@ -99,13 +99,6 @@ void evlist__config(struct evlist *evlist, struct record_opts *opts, struct call
> >       bool use_comm_exec;
> >       bool sample_id = opts->sample_id;
> >
> > -     /*
> > -      * Set the evsel leader links before we configure attributes,
> > -      * since some might depend on this info.
> > -      */
> > -     if (opts->group)
> > -             evlist__set_leader(evlist);
> > -
> >       if (evlist->core.cpus->map[0] < 0)
> >               opts->no_inherit = true;
> >
> > diff --git a/tools/perf/util/record.h b/tools/perf/util/record.h
> > index ef6c2715fdd9..0a7a8dbbea9c 100644
> > --- a/tools/perf/util/record.h
> > +++ b/tools/perf/util/record.h
> > @@ -13,7 +13,6 @@ struct option;
> >
> >  struct record_opts {
> >       struct target target;
> > -     bool          group;
> >       bool          inherit_stat;
> >       bool          no_buffering;
> >       bool          no_inherit;
> > --
> > 2.34.1.307.g9b7440fafd-goog
> >
>

WARNING: multiple messages have this Message-ID (diff)
From: Ian Rogers <irogers@google.com>
To: Jiri Olsa <jolsa@redhat.com>
Cc: Andi Kleen <ak@linux.intel.com>,
	Namhyung Kim <namhyung@kernel.org>,
	 John Garry <john.garry@huawei.com>,
	Kajol Jain <kjain@linux.ibm.com>,
	 "Paul A . Clarke" <pc@us.ibm.com>,
	Arnaldo Carvalho de Melo <acme@kernel.org>,
	Riccardo Mancini <rickyman7@gmail.com>,
	 Kan Liang <kan.liang@linux.intel.com>,
	Peter Zijlstra <peterz@infradead.org>,
	 Ingo Molnar <mingo@redhat.com>,
	Mark Rutland <mark.rutland@arm.com>,
	 Alexander Shishkin <alexander.shishkin@linux.intel.com>,
	linux-perf-users@vger.kernel.org,  linux-kernel@vger.kernel.org,
	Vineet Singh <vineet.singh@intel.com>,
	 James Clark <james.clark@arm.com>,
	Mathieu Poirier <mathieu.poirier@linaro.org>,
	Suzuki K Poulose <suzuki.poulose@arm.com>,
	Mike Leach <mike.leach@linaro.org>,  Leo Yan <leo.yan@linaro.org>,
	coresight@lists.linaro.org,
	 linux-arm-kernel@lists.infradead.org, zhengjun.xing@intel.com,
	 eranian@google.com
Subject: Re: [PATCH v3] perf evlist: Remove group option.
Date: Tue, 4 Jan 2022 09:01:32 -0800	[thread overview]
Message-ID: <CAP-5=fXyBU4yF=S2FSjd6sZXCwqqJ=BS5eOynPk0C4KTs9EcsQ@mail.gmail.com> (raw)
In-Reply-To: <YdRX5zgB3AORM/Wd@krava>

On Tue, Jan 4, 2022 at 6:21 AM Jiri Olsa <jolsa@redhat.com> wrote:
>
> On Wed, Dec 29, 2021 at 11:19:43PM -0800, Ian Rogers wrote:
> > The group option predates grouping events using curly braces added in
> > commit 89efb029502d ("perf tools: Add support to parse event group syntax")
> > The --group option was retained for legacy support (in August 2012) but
> > keeping it adds complexity.
> >
> > v2 and v3. were rebases.
> >
> > Signed-off-by: Ian Rogers <irogers@google.com>
>
> it should not be part of this patchset right?
> I see it was posted separately

Yep, sorry. Not part of this patch set I hadn't realized I had another
v3 patch when I ran send-mail. This patch was sent out a little
earlier already.

Thanks,
Ian

> jirka
>
> > ---
> >  tools/perf/Documentation/perf-record.txt |  4 ----
> >  tools/perf/Documentation/perf-top.txt    |  7 ++-----
> >  tools/perf/builtin-record.c              |  2 --
> >  tools/perf/builtin-stat.c                |  6 ------
> >  tools/perf/builtin-top.c                 |  2 --
> >  tools/perf/tests/attr/README             |  2 --
> >  tools/perf/tests/attr/test-record-group  | 22 ----------------------
> >  tools/perf/tests/attr/test-stat-group    | 17 -----------------
> >  tools/perf/util/evlist.c                 |  2 +-
> >  tools/perf/util/evlist.h                 |  2 --
> >  tools/perf/util/python.c                 |  8 --------
> >  tools/perf/util/record.c                 |  7 -------
> >  tools/perf/util/record.h                 |  1 -
> >  13 files changed, 3 insertions(+), 79 deletions(-)
> >  delete mode 100644 tools/perf/tests/attr/test-record-group
> >  delete mode 100644 tools/perf/tests/attr/test-stat-group
> >
> > diff --git a/tools/perf/Documentation/perf-record.txt b/tools/perf/Documentation/perf-record.txt
> > index 55df7b073a55..960fb1ad3f27 100644
> > --- a/tools/perf/Documentation/perf-record.txt
> > +++ b/tools/perf/Documentation/perf-record.txt
> > @@ -238,10 +238,6 @@ OPTIONS
> >       Also, by adding a comma, the number of mmap pages for AUX
> >       area tracing can be specified.
> >
> > ---group::
> > -     Put all events in a single event group.  This precedes the --event
> > -     option and remains only for backward compatibility.  See --event.
> > -
> >  -g::
> >       Enables call-graph (stack chain/backtrace) recording for both
> >       kernel space and user space.
> > diff --git a/tools/perf/Documentation/perf-top.txt b/tools/perf/Documentation/perf-top.txt
> > index cac3dfbee7d8..acbafe777e52 100644
> > --- a/tools/perf/Documentation/perf-top.txt
> > +++ b/tools/perf/Documentation/perf-top.txt
> > @@ -51,9 +51,6 @@ Default is to monitor all CPUS.
> >  --count-filter=<count>::
> >       Only display functions with more events than this.
> >
> > ---group::
> > -        Put the counters into a counter group.
> > -
> >  --group-sort-idx::
> >       Sort the output by the event at the index n in group. If n is invalid,
> >       sort by the first event. It can support multiple groups with different
> > @@ -313,10 +310,10 @@ use '-e e1 -e e2 -G foo,foo' or just use '-e e1 -e e2 -G foo'.
> >
> >               perf top -e cycles,probe:icmp_rcv --switch-on=probe:icmp_rcv
> >
> > -        Alternatively one can ask for --group and then two overhead columns
> > +        Alternatively one can ask for a group and then two overhead columns
> >             will appear, the first for cycles and the second for the switch-on event.
> >
> > -             perf top --group -e cycles,probe:icmp_rcv --switch-on=probe:icmp_rcv
> > +             perf top -e '{cycles,probe:icmp_rcv}' --switch-on=probe:icmp_rcv
> >
> >       This may be interesting to measure a workload only after some initialization
> >       phase is over, i.e. insert a perf probe at that point and use the above
> > diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c
> > index 6ac2160913ea..54eff61f78eb 100644
> > --- a/tools/perf/builtin-record.c
> > +++ b/tools/perf/builtin-record.c
> > @@ -2521,8 +2521,6 @@ static struct option __record_options[] = {
> >       OPT_CALLBACK(0, "mmap-flush", &record.opts, "number",
> >                    "Minimal number of bytes that is extracted from mmap data pages (default: 1)",
> >                    record__mmap_flush_parse),
> > -     OPT_BOOLEAN(0, "group", &record.opts.group,
> > -                 "put the counters into a counter group"),
> >       OPT_CALLBACK_NOOPT('g', NULL, &callchain_param,
> >                          NULL, "enables call-graph recording" ,
> >                          &record_callchain_opt),
> > diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c
> > index f6ca2b054c5b..8ce4ca6111ae 100644
> > --- a/tools/perf/builtin-stat.c
> > +++ b/tools/perf/builtin-stat.c
> > @@ -180,7 +180,6 @@ static bool                       topdown_run                     = false;
> >  static bool                  smi_cost                        = false;
> >  static bool                  smi_reset                       = false;
> >  static int                   big_num_opt                     =  -1;
> > -static bool                  group                           = false;
> >  static const char            *pre_cmd                        = NULL;
> >  static const char            *post_cmd                       = NULL;
> >  static bool                  sync_run                        = false;
> > @@ -800,9 +799,6 @@ static int __run_perf_stat(int argc, const char **argv, int run_idx)
> >               child_pid = evsel_list->workload.pid;
> >       }
> >
> > -     if (group)
> > -             evlist__set_leader(evsel_list);
> > -
> >       if (affinity__setup(&affinity) < 0)
> >               return -1;
> >
> > @@ -1212,8 +1208,6 @@ static struct option stat_options[] = {
> >  #endif
> >       OPT_BOOLEAN('a', "all-cpus", &target.system_wide,
> >                   "system-wide collection from all CPUs"),
> > -     OPT_BOOLEAN('g', "group", &group,
> > -                 "put the counters into a counter group"),
> >       OPT_BOOLEAN(0, "scale", &stat_config.scale,
> >                   "Use --no-scale to disable counter scaling for multiplexing"),
> >       OPT_INCR('v', "verbose", &verbose,
> > diff --git a/tools/perf/builtin-top.c b/tools/perf/builtin-top.c
> > index 1fc390f136dd..0d8441942f34 100644
> > --- a/tools/perf/builtin-top.c
> > +++ b/tools/perf/builtin-top.c
> > @@ -1472,8 +1472,6 @@ int cmd_top(int argc, const char **argv)
> >                           "dump the symbol table used for profiling"),
> >       OPT_INTEGER('f', "count-filter", &top.count_filter,
> >                   "only display functions with more events than this"),
> > -     OPT_BOOLEAN(0, "group", &opts->group,
> > -                         "put the counters into a counter group"),
> >       OPT_BOOLEAN('i', "no-inherit", &opts->no_inherit,
> >                   "child tasks do not inherit counters"),
> >       OPT_STRING(0, "sym-annotate", &top.sym_filter, "symbol name",
> > diff --git a/tools/perf/tests/attr/README b/tools/perf/tests/attr/README
> > index a36f49fb4dbe..f538272af57b 100644
> > --- a/tools/perf/tests/attr/README
> > +++ b/tools/perf/tests/attr/README
> > @@ -47,7 +47,6 @@ Following tests are defined (with perf commands):
> >    perf record -g kill                           (test-record-graph-default)
> >    perf record --call-graph dwarf kill                (test-record-graph-dwarf)
> >    perf record --call-graph fp kill              (test-record-graph-fp)
> > -  perf record --group -e cycles,instructions kill (test-record-group)
> >    perf record -e '{cycles,instructions}' kill   (test-record-group1)
> >    perf record -e '{cycles/period=1/,instructions/period=2/}:S' kill (test-record-group2)
> >    perf record -D kill                           (test-record-no-delay)
> > @@ -61,6 +60,5 @@ Following tests are defined (with perf commands):
> >    perf stat -d kill                             (test-stat-detailed-1)
> >    perf stat -dd kill                            (test-stat-detailed-2)
> >    perf stat -ddd kill                           (test-stat-detailed-3)
> > -  perf stat --group -e cycles,instructions kill (test-stat-group)
> >    perf stat -e '{cycles,instructions}' kill     (test-stat-group1)
> >    perf stat -i -e cycles kill                   (test-stat-no-inherit)
> > diff --git a/tools/perf/tests/attr/test-record-group b/tools/perf/tests/attr/test-record-group
> > deleted file mode 100644
> > index 14ee60fd3f41..000000000000
> > --- a/tools/perf/tests/attr/test-record-group
> > +++ /dev/null
> > @@ -1,22 +0,0 @@
> > -[config]
> > -command = record
> > -args    = --no-bpf-event --group -e cycles,instructions kill >/dev/null 2>&1
> > -ret     = 1
> > -
> > -[event-1:base-record]
> > -fd=1
> > -group_fd=-1
> > -sample_type=327
> > -read_format=4
> > -
> > -[event-2:base-record]
> > -fd=2
> > -group_fd=1
> > -config=1
> > -sample_type=327
> > -read_format=4
> > -mmap=0
> > -comm=0
> > -task=0
> > -enable_on_exec=0
> > -disabled=0
> > diff --git a/tools/perf/tests/attr/test-stat-group b/tools/perf/tests/attr/test-stat-group
> > deleted file mode 100644
> > index e15d6946e9b3..000000000000
> > --- a/tools/perf/tests/attr/test-stat-group
> > +++ /dev/null
> > @@ -1,17 +0,0 @@
> > -[config]
> > -command = stat
> > -args    = --group -e cycles,instructions kill >/dev/null 2>&1
> > -ret     = 1
> > -
> > -[event-1:base-stat]
> > -fd=1
> > -group_fd=-1
> > -read_format=3|15
> > -
> > -[event-2:base-stat]
> > -fd=2
> > -group_fd=1
> > -config=1
> > -disabled=0
> > -enable_on_exec=0
> > -read_format=3|15
> > diff --git a/tools/perf/util/evlist.c b/tools/perf/util/evlist.c
> > index 5f92319ce258..2e11d82d15e0 100644
> > --- a/tools/perf/util/evlist.c
> > +++ b/tools/perf/util/evlist.c
> > @@ -224,7 +224,7 @@ int __evlist__set_tracepoints_handlers(struct evlist *evlist,
> >       return err;
> >  }
> >
> > -void evlist__set_leader(struct evlist *evlist)
> > +static void evlist__set_leader(struct evlist *evlist)
> >  {
> >       perf_evlist__set_leader(&evlist->core);
> >  }
> > diff --git a/tools/perf/util/evlist.h b/tools/perf/util/evlist.h
> > index 27594900a052..ebab48a8120f 100644
> > --- a/tools/perf/util/evlist.h
> > +++ b/tools/perf/util/evlist.h
> > @@ -203,8 +203,6 @@ void evlist__set_selected(struct evlist *evlist, struct evsel *evsel);
> >  int evlist__create_maps(struct evlist *evlist, struct target *target);
> >  int evlist__apply_filters(struct evlist *evlist, struct evsel **err_evsel);
> >
> > -void evlist__set_leader(struct evlist *evlist);
> > -
> >  u64 __evlist__combined_sample_type(struct evlist *evlist);
> >  u64 evlist__combined_sample_type(struct evlist *evlist);
> >  u64 evlist__combined_branch_type(struct evlist *evlist);
> > diff --git a/tools/perf/util/python.c b/tools/perf/util/python.c
> > index 7f782a31bda3..d063375c346a 100644
> > --- a/tools/perf/util/python.c
> > +++ b/tools/perf/util/python.c
> > @@ -1121,14 +1121,6 @@ static PyObject *pyrf_evlist__open(struct pyrf_evlist *pevlist,
> >                                  PyObject *args, PyObject *kwargs)
> >  {
> >       struct evlist *evlist = &pevlist->evlist;
> > -     int group = 0;
> > -     static char *kwlist[] = { "group", NULL };
> > -
> > -     if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|OOii", kwlist, &group))
> > -             return NULL;
> > -
> > -     if (group)
> > -             evlist__set_leader(evlist);
> >
> >       if (evlist__open(evlist) < 0) {
> >               PyErr_SetFromErrno(PyExc_OSError);
> > diff --git a/tools/perf/util/record.c b/tools/perf/util/record.c
> > index bff669b615ee..9e694db7c7ee 100644
> > --- a/tools/perf/util/record.c
> > +++ b/tools/perf/util/record.c
> > @@ -99,13 +99,6 @@ void evlist__config(struct evlist *evlist, struct record_opts *opts, struct call
> >       bool use_comm_exec;
> >       bool sample_id = opts->sample_id;
> >
> > -     /*
> > -      * Set the evsel leader links before we configure attributes,
> > -      * since some might depend on this info.
> > -      */
> > -     if (opts->group)
> > -             evlist__set_leader(evlist);
> > -
> >       if (evlist->core.cpus->map[0] < 0)
> >               opts->no_inherit = true;
> >
> > diff --git a/tools/perf/util/record.h b/tools/perf/util/record.h
> > index ef6c2715fdd9..0a7a8dbbea9c 100644
> > --- a/tools/perf/util/record.h
> > +++ b/tools/perf/util/record.h
> > @@ -13,7 +13,6 @@ struct option;
> >
> >  struct record_opts {
> >       struct target target;
> > -     bool          group;
> >       bool          inherit_stat;
> >       bool          no_buffering;
> >       bool          no_inherit;
> > --
> > 2.34.1.307.g9b7440fafd-goog
> >
>

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2022-01-04 17:01 UTC|newest]

Thread overview: 131+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-30  7:19 [PATCH v3 00/48] Refactor perf cpumap Ian Rogers
2021-12-30  7:19 ` Ian Rogers
2021-12-30  7:19 ` [PATCH v3 01/48] libperf: Add comments to perf_cpu_map Ian Rogers
2021-12-30  7:19   ` Ian Rogers
2021-12-30  7:19 ` [PATCH v3] perf evlist: Remove group option Ian Rogers
2021-12-30  7:19   ` Ian Rogers
2022-01-04 14:21   ` Jiri Olsa
2022-01-04 14:21     ` Jiri Olsa
2022-01-04 17:01     ` Ian Rogers [this message]
2022-01-04 17:01       ` Ian Rogers
2021-12-30  7:19 ` [PATCH v3 02/48] perf stat: Add aggr creators that are passed a cpu Ian Rogers
2021-12-30  7:19   ` Ian Rogers
2021-12-30  7:19 ` [PATCH v3 03/48] perf stat: Correct aggregation CPU map Ian Rogers
2021-12-30  7:19   ` Ian Rogers
2022-01-04 14:19   ` Jiri Olsa
2022-01-04 14:19     ` Jiri Olsa
2021-12-30  7:19 ` [PATCH v3 04/48] perf stat: Switch aggregation to use for_each loop Ian Rogers
2021-12-30  7:19   ` Ian Rogers
2021-12-30  7:19 ` [PATCH v3 05/48] perf stat: Switch to cpu version of cpu_map__get Ian Rogers
2021-12-30  7:19   ` Ian Rogers
2021-12-30  7:19 ` [PATCH v3 06/48] perf cpumap: Switch cpu_map__build_map to cpu function Ian Rogers
2021-12-30  7:19   ` Ian Rogers
2022-01-10 20:46   ` Arnaldo Carvalho de Melo
2022-01-10 20:46     ` Arnaldo Carvalho de Melo
2022-01-10 21:03     ` Arnaldo Carvalho de Melo
2022-01-10 21:03       ` Arnaldo Carvalho de Melo
2022-01-10 21:23       ` Arnaldo Carvalho de Melo
2022-01-10 21:23         ` Arnaldo Carvalho de Melo
2022-01-10 21:34         ` Arnaldo Carvalho de Melo
2022-01-10 21:34           ` Arnaldo Carvalho de Melo
2022-01-10 22:29           ` Ian Rogers
2022-01-10 22:29             ` Ian Rogers
2022-01-11  0:41             ` Arnaldo Carvalho de Melo
2022-01-11  0:41               ` Arnaldo Carvalho de Melo
2022-01-11  0:50               ` Arnaldo Carvalho de Melo
2022-01-11  0:50                 ` Arnaldo Carvalho de Melo
2022-01-11 15:12               ` Arnaldo Carvalho de Melo
2022-01-11 15:12                 ` Arnaldo Carvalho de Melo
2021-12-30  7:19 ` [PATCH v3 07/48] perf cpumap: Remove map+index get_socket Ian Rogers
2021-12-30  7:19   ` Ian Rogers
2021-12-30  7:19 ` [PATCH v3 08/48] perf cpumap: Remove map+index get_die Ian Rogers
2021-12-30  7:19   ` Ian Rogers
2022-01-04 14:19   ` Jiri Olsa
2022-01-04 14:19     ` Jiri Olsa
2021-12-30  7:19 ` [PATCH v3 09/48] perf cpumap: Remove map+index get_core Ian Rogers
2021-12-30  7:19   ` Ian Rogers
2021-12-30  7:19 ` [PATCH v3 10/48] perf cpumap: Remove map+index get_node Ian Rogers
2021-12-30  7:19   ` Ian Rogers
2021-12-30  7:19 ` [PATCH v3 11/48] perf cpumap: Add comments to aggr_cpu_id Ian Rogers
2021-12-30  7:19   ` Ian Rogers
2021-12-30  7:19 ` [PATCH v3 12/48] perf cpumap: Remove unused cpu_map__socket Ian Rogers
2021-12-30  7:19   ` Ian Rogers
2021-12-30  7:19 ` [PATCH v3 13/48] perf cpumap: Simplify equal function name Ian Rogers
2021-12-30  7:19   ` Ian Rogers
2021-12-30  7:19 ` [PATCH v3 14/48] perf cpumap: Rename empty functions Ian Rogers
2021-12-30  7:19   ` Ian Rogers
2021-12-30  7:19 ` [PATCH v3 15/48] perf cpumap: Document cpu__get_node and remove redundant function Ian Rogers
2021-12-30  7:19   ` Ian Rogers
2021-12-30  7:19 ` [PATCH v3 16/48] perf cpumap: Remove map from function names that don't use a map Ian Rogers
2021-12-30  7:19   ` Ian Rogers
2021-12-30  7:19 ` [PATCH v3 17/48] perf cpumap: Remove cpu_map__cpu, use libperf function Ian Rogers
2021-12-30  7:19   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 18/48] perf cpumap: Refactor cpu_map__build_map Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2022-01-04 14:20   ` Jiri Olsa
2022-01-04 14:20     ` Jiri Olsa
2021-12-30  7:20 ` [PATCH v3 19/48] perf cpumap: Rename cpu_map__get_X_aggr_by_cpu functions Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 20/48] perf cpumap: Move 'has' function to libperf Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 21/48] perf cpumap: Add some comments to cpu_aggr_map Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 22/48] perf cpumap: Trim the cpu_aggr_map Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 23/48] perf stat: Fix memory leak in check_per_pkg Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 24/48] perf cpumap: Add CPU to aggr_cpu_id Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 25/48] perf stat-display: Avoid use of core for CPU Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 26/48] perf evsel: Derive CPUs and threads in alloc_counts Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 27/48] libperf: Switch cpu to more accurate cpu_map_idx Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 28/48] libperf: Use cpu not index for evsel mmap Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 29/48] perf counts: Switch name cpu to cpu_map_idx Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 30/48] perf stat: Rename aggr_data cpu to imply it's an index Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 31/48] perf stat: Use perf_cpu_map__for_each_cpu Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 32/48] perf script: Use for each cpu to aid readability Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 33/48] libperf: Allow NULL in perf_cpu_map__idx Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 34/48] perf evlist: Refactor evlist__for_each_cpu Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 35/48] perf evsel: Pass cpu not cpu map index to synthesize Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 36/48] perf stat: Correct variable name for read counter Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 37/48] perf evsel: Rename CPU around get_group_fd Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 38/48] perf evsel: Reduce scope of evsel__ignore_missing_thread Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 39/48] perf evsel: Rename variable cpu to index Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 40/48] perf test: Use perf_cpu_map__for_each_cpu Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 41/48] perf stat: Correct check_per_pkg cpu Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 42/48] perf stat: Swap variable name cpu to index Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 43/48] libperf: Sync evsel documentation Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 44/48] perf bpf: Rename cpu to cpu_map_idx Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 45/48] perf c2c: Use more intention revealing iterator Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 46/48] perf script: Fix flipped index and cpu Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 47/48] perf stat: Correct first_shadow_cpu to return index Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2021-12-30  7:20 ` [PATCH v3 48/48] perf cpumap: Give CPUs their own type Ian Rogers
2021-12-30  7:20   ` Ian Rogers
2022-01-04 14:24 ` [PATCH v3 00/48] Refactor perf cpumap Jiri Olsa
2022-01-04 14:24   ` Jiri Olsa
2022-01-04 17:08   ` Ian Rogers
2022-01-04 17:08     ` Ian Rogers
  -- strict thread matches above, loose matches on Subject: below --
2021-12-23 19:28 [PATCH v3] perf evlist: Remove group option Ian Rogers

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAP-5=fXyBU4yF=S2FSjd6sZXCwqqJ=BS5eOynPk0C4KTs9EcsQ@mail.gmail.com' \
    --to=irogers@google.com \
    --cc=acme@kernel.org \
    --cc=ak@linux.intel.com \
    --cc=alexander.shishkin@linux.intel.com \
    --cc=coresight@lists.linaro.org \
    --cc=eranian@google.com \
    --cc=james.clark@arm.com \
    --cc=john.garry@huawei.com \
    --cc=jolsa@redhat.com \
    --cc=kan.liang@linux.intel.com \
    --cc=kjain@linux.ibm.com \
    --cc=leo.yan@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=mathieu.poirier@linaro.org \
    --cc=mike.leach@linaro.org \
    --cc=mingo@redhat.com \
    --cc=namhyung@kernel.org \
    --cc=pc@us.ibm.com \
    --cc=peterz@infradead.org \
    --cc=rickyman7@gmail.com \
    --cc=suzuki.poulose@arm.com \
    --cc=vineet.singh@intel.com \
    --cc=zhengjun.xing@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.