From: Jiri Olsa <jolsa@redhat.com> To: Arnaldo Carvalho de Melo <acme@kernel.org> Cc: Andi Kleen <ak@linux.intel.com>, Jiri Olsa <jolsa@kernel.org>, lkml <linux-kernel@vger.kernel.org>, Ingo Molnar <mingo@kernel.org>, Namhyung Kim <namhyung@kernel.org>, Alexander Shishkin <alexander.shishkin@linux.intel.com>, Peter Zijlstra <a.p.zijlstra@chello.nl>, Jonas Rabenstein <jonas.rabenstein@studium.uni-erlangen.de>, Nageswara R Sastry <nasastry@in.ibm.com>, Ravi Bangoria <ravi.bangoria@linux.ibm.com> Subject: Re: [PATCH] perf tools: Move precise_ip detection into perf_evsel__open Date: Fri, 15 Mar 2019 15:52:25 +0100 Message-ID: <20190315145225.GC5200@krava> (raw) In-Reply-To: <20190315143504.GA24482@kernel.org> On Fri, Mar 15, 2019 at 11:35:04AM -0300, Arnaldo Carvalho de Melo wrote: SNIP > > +static void display_attr(struct perf_event_attr *attr) > > +{ > > + if (verbose >= 2) { > > + fprintf(stderr, "%.60s\n", graph_dotted_line); > > + fprintf(stderr, "perf_event_attr:\n"); > > + perf_event_attr__fprintf(stderr, attr, __open_attr__fprintf, NULL); > > + fprintf(stderr, "%.60s\n", graph_dotted_line); > > + } > > +} > > + > > +static int perf_event_open(struct perf_evsel *evsel, > > + pid_t pid, int cpu, int group_fd, > > + unsigned long flags) > > > The patch is ok, but I think the naming of this function is too generic, > so I'm renaming it to: > > static int perf_evsel__open_adjust_precise_ip(struct perf_evsel *evsel, > pid_t pid, int cpu, int group_fd, > unsigned long flags) > > Ok? ok > > The perf_evsel__open() code is already complex with that fallback > mechanism, this is just one more way of fallbacking when asking the > kernel for something that may fail. > > In fact what happens if the precise_ip that is being asked _is_ > supported but sys_perf_event_open() fails because some other > perf_event_attr attribute that is set is not supported? it's outside the scope of standard feature fallback code, so we will try it for any possible fallback variant, so: we will try all possible precise_ip (3,2,1,0) and they will all fail because of the unsupported attribute - so we will restore the precise_ip back and continue in standard fallback code that will eventualy switch that attribute off > > I see, it gets it back restored to what the user asked so that the > standard fallback is tried, ok, I'll apply with just the rename for this > function, thanks, jirka
next prev parent reply index Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-03-05 15:25 [PATCH 0/8] perf tools: Assorted fixes Jiri Olsa 2019-03-05 15:25 ` [PATCH 1/8] perf c2c: Fix c2c report for empty numa node Jiri Olsa 2019-03-09 20:05 ` [tip:perf/urgent] " tip-bot for Jiri Olsa 2019-03-05 15:25 ` [PATCH 2/8] perf tools: Add error path into hist_entry__init Jiri Olsa 2019-03-09 20:06 ` [tip:perf/urgent] perf hist: " tip-bot for Jiri Olsa 2019-03-05 15:25 ` [PATCH 3/8] perf hist: Fix memory leak of srcline Jiri Olsa 2019-03-09 20:07 ` [tip:perf/urgent] " tip-bot for Jiri Olsa 2019-03-05 15:25 ` [PATCH 4/8] perf tools: Read and store caps/max_precise in perf_pmu Jiri Olsa 2019-03-09 20:07 ` [tip:perf/urgent] " tip-bot for Jiri Olsa 2019-03-05 15:25 ` [PATCH 5/8] perf tools: Get precise_ip from the pmu config Jiri Olsa 2019-03-05 16:13 ` Andi Kleen 2019-03-05 16:28 ` Jiri Olsa 2019-03-05 16:40 ` Andi Kleen 2019-03-07 15:35 ` [PATCHv2 " Jiri Olsa 2019-03-07 16:51 ` Andi Kleen 2019-03-07 22:32 ` Jiri Olsa 2019-03-14 14:01 ` Jiri Olsa 2019-03-14 15:49 ` Andi Kleen 2019-03-15 12:15 ` [PATCH] perf tools: Move precise_ip detection into perf_evsel__open Jiri Olsa 2019-03-15 14:05 ` Andi Kleen 2019-03-15 14:35 ` Arnaldo Carvalho de Melo 2019-03-15 14:52 ` Jiri Olsa [this message] 2019-03-23 15:04 ` Jiri Olsa 2019-03-25 14:53 ` Arnaldo Carvalho de Melo 2019-03-05 15:25 ` [PATCH 6/8] perf tools: Probe for precise_ip with simple attr Jiri Olsa 2019-03-09 20:08 ` [tip:perf/urgent] perf evsel: " tip-bot for Jiri Olsa 2019-03-05 15:25 ` [PATCH 7/8] perf tools: Fix double free in perf_data__close Jiri Olsa 2019-03-09 20:09 ` [tip:perf/urgent] perf session: " tip-bot for Jiri Olsa 2019-03-05 15:25 ` [PATCH 8/8] perf tools: Force perf_data__open|close zero data->file.path Jiri Olsa 2019-03-09 20:09 ` [tip:perf/urgent] perf data: " tip-bot for Jiri Olsa
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=20190315145225.GC5200@krava \ --to=jolsa@redhat.com \ --cc=a.p.zijlstra@chello.nl \ --cc=acme@kernel.org \ --cc=ak@linux.intel.com \ --cc=alexander.shishkin@linux.intel.com \ --cc=jolsa@kernel.org \ --cc=jonas.rabenstein@studium.uni-erlangen.de \ --cc=linux-kernel@vger.kernel.org \ --cc=mingo@kernel.org \ --cc=namhyung@kernel.org \ --cc=nasastry@in.ibm.com \ --cc=ravi.bangoria@linux.ibm.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
LKML Archive on lore.kernel.org Archives are clonable: git clone --mirror https://lore.kernel.org/lkml/0 lkml/git/0.git git clone --mirror https://lore.kernel.org/lkml/1 lkml/git/1.git git clone --mirror https://lore.kernel.org/lkml/2 lkml/git/2.git git clone --mirror https://lore.kernel.org/lkml/3 lkml/git/3.git git clone --mirror https://lore.kernel.org/lkml/4 lkml/git/4.git git clone --mirror https://lore.kernel.org/lkml/5 lkml/git/5.git git clone --mirror https://lore.kernel.org/lkml/6 lkml/git/6.git git clone --mirror https://lore.kernel.org/lkml/7 lkml/git/7.git git clone --mirror https://lore.kernel.org/lkml/8 lkml/git/8.git git clone --mirror https://lore.kernel.org/lkml/9 lkml/git/9.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 lkml lkml/ https://lore.kernel.org/lkml \ linux-kernel@vger.kernel.org public-inbox-index lkml Example config snippet for mirrors Newsgroup available over NNTP: nntp://nntp.lore.kernel.org/org.kernel.vger.linux-kernel AGPL code for this site: git clone https://public-inbox.org/public-inbox.git