From: Pawel Moll <pawel.moll@arm.com> To: Peter Zijlstra <peterz@infradead.org> Cc: Richard Cochran <richardcochran@gmail.com>, Steven Rostedt <rostedt@goodmis.org>, Ingo Molnar <mingo@redhat.com>, Paul Mackerras <paulus@samba.org>, Arnaldo Carvalho de Melo <acme@kernel.org>, John Stultz <john.stultz@linaro.org>, Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>, Christopher Covington <cov@codeaurora.org>, Namhyung Kim <namhyung@kernel.org>, David Ahern <dsahern@gmail.com>, Thomas Gleixner <tglx@linutronix.de>, Tomeu Vizoso <tomeu@tomeuvizoso.net>, "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>, "linux-api@vger.kernel.org" <linux-api@vger.kernel.org> Subject: Re: [PATCH v4 1/3] perf: Use monotonic clock as a source for timestamps Date: Wed, 21 Jan 2015 15:52:23 +0000 [thread overview] Message-ID: <1421855543.14076.68.camel@arm.com> (raw) In-Reply-To: <20150105130035.GP30905@twins.programming.kicks-ass.net> On Mon, 2015-01-05 at 13:00 +0000, Peter Zijlstra wrote: > On Thu, Nov 06, 2014 at 04:51:56PM +0000, Pawel Moll wrote: > > Documentation/kernel-parameters.txt | 9 +++++++++ > > kernel/events/core.c | 37 +++++++++++++++++++++++++++++++++++++ > > 2 files changed, 46 insertions(+) > > > diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt > > index 4c81a86..8ead8d8 100644 > > --- a/Documentation/kernel-parameters.txt > > +++ b/Documentation/kernel-parameters.txt > > > @@ -2763,6 +2764,14 @@ bytes respectively. Such letter suffixes can also be entirely omitted. > > allocator. This parameter is primarily for debugging > > and performance comparison. > > > > + perf_use_local_clock > > + [PERF] > > + Use local_clock() as a source for perf timestamps > > + generation. This was be the default behaviour and > > + this parameter can be used to maintain backward > > + compatibility or on older hardware with expensive > > + monotonic clock source. > > + > > pf. [PARIDE] > > See Documentation/blockdev/paride.txt. > > So I'm always terminally confused on the naming of kernel parameters, > sometimes things are modules (even when they're not actually =m capable) > and get a module::foo naming or so and sometimes they're not. I guess you mean module.foo? > So we want to use the module naming thing or not? Honestly, I don't mind either way. For one thing ftrace doesn't bother and just uses __setup() as well. > > diff --git a/kernel/events/core.c b/kernel/events/core.c > > index 2b02c9f..5d0aa03 100644 > > --- a/kernel/events/core.c > > +++ b/kernel/events/core.c > > > @@ -322,8 +323,41 @@ extern __weak const char *perf_pmu_name(void) > > return "pmu"; > > } > > > > +static bool perf_use_local_clock; > > +static int __init perf_use_local_clock_setup(char *__unused) > > +{ > > + perf_use_local_clock = true; > > + return 1; > > +} > > +__setup("perf_use_local_clock", perf_use_local_clock_setup); > > > static inline u64 perf_clock(void) > > { > > + if (likely(!perf_use_local_clock)) > > + return ktime_get_mono_fast_ns(); > > + > > return local_clock(); > > } > > Since this all is boot time, should we not use things like static_key > and avoid the 'pointless' conditional at runtime? Right. it's good to learn new stuff - I didn't know there was architecture-agnostic support for jump labels. Definitely worth the effort, will give it a try and spin the patch. Pawel
WARNING: multiple messages have this Message-ID (diff)
From: Pawel Moll <pawel.moll-5wv7dgnIgG8@public.gmane.org> To: Peter Zijlstra <peterz-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org> Cc: Richard Cochran <richardcochran-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>, Steven Rostedt <rostedt-nx8X9YLhiw1AfugRpC6u6w@public.gmane.org>, Ingo Molnar <mingo-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>, Paul Mackerras <paulus-eUNUBHrolfbYtjvyW6yDsg@public.gmane.org>, Arnaldo Carvalho de Melo <acme-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>, John Stultz <john.stultz-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>, Masami Hiramatsu <masami.hiramatsu.pt-FCd8Q96Dh0JBDgjK7y7TUQ@public.gmane.org>, Christopher Covington <cov-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>, Namhyung Kim <namhyung-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>, David Ahern <dsahern-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>, Thomas Gleixner <tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org>, Tomeu Vizoso <tomeu-XCtybt49RKsYaV1qd6yewg@public.gmane.org>, "linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" <linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>, "linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" <linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org> Subject: Re: [PATCH v4 1/3] perf: Use monotonic clock as a source for timestamps Date: Wed, 21 Jan 2015 15:52:23 +0000 [thread overview] Message-ID: <1421855543.14076.68.camel@arm.com> (raw) In-Reply-To: <20150105130035.GP30905-ndre7Fmf5hadTX5a5knrm8zTDFooKrT+cvkQGrU6aU0@public.gmane.org> On Mon, 2015-01-05 at 13:00 +0000, Peter Zijlstra wrote: > On Thu, Nov 06, 2014 at 04:51:56PM +0000, Pawel Moll wrote: > > Documentation/kernel-parameters.txt | 9 +++++++++ > > kernel/events/core.c | 37 +++++++++++++++++++++++++++++++++++++ > > 2 files changed, 46 insertions(+) > > > diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt > > index 4c81a86..8ead8d8 100644 > > --- a/Documentation/kernel-parameters.txt > > +++ b/Documentation/kernel-parameters.txt > > > @@ -2763,6 +2764,14 @@ bytes respectively. Such letter suffixes can also be entirely omitted. > > allocator. This parameter is primarily for debugging > > and performance comparison. > > > > + perf_use_local_clock > > + [PERF] > > + Use local_clock() as a source for perf timestamps > > + generation. This was be the default behaviour and > > + this parameter can be used to maintain backward > > + compatibility or on older hardware with expensive > > + monotonic clock source. > > + > > pf. [PARIDE] > > See Documentation/blockdev/paride.txt. > > So I'm always terminally confused on the naming of kernel parameters, > sometimes things are modules (even when they're not actually =m capable) > and get a module::foo naming or so and sometimes they're not. I guess you mean module.foo? > So we want to use the module naming thing or not? Honestly, I don't mind either way. For one thing ftrace doesn't bother and just uses __setup() as well. > > diff --git a/kernel/events/core.c b/kernel/events/core.c > > index 2b02c9f..5d0aa03 100644 > > --- a/kernel/events/core.c > > +++ b/kernel/events/core.c > > > @@ -322,8 +323,41 @@ extern __weak const char *perf_pmu_name(void) > > return "pmu"; > > } > > > > +static bool perf_use_local_clock; > > +static int __init perf_use_local_clock_setup(char *__unused) > > +{ > > + perf_use_local_clock = true; > > + return 1; > > +} > > +__setup("perf_use_local_clock", perf_use_local_clock_setup); > > > static inline u64 perf_clock(void) > > { > > + if (likely(!perf_use_local_clock)) > > + return ktime_get_mono_fast_ns(); > > + > > return local_clock(); > > } > > Since this all is boot time, should we not use things like static_key > and avoid the 'pointless' conditional at runtime? Right. it's good to learn new stuff - I didn't know there was architecture-agnostic support for jump labels. Definitely worth the effort, will give it a try and spin the patch. Pawel
next prev parent reply other threads:[~2015-01-21 15:52 UTC|newest] Thread overview: 58+ messages / expand[flat|nested] mbox.gz Atom feed top 2014-11-06 16:51 [PATCH v4 0/3] perf: User/kernel time correlation and event generation Pawel Moll 2014-11-06 16:51 ` [PATCH v4 1/3] perf: Use monotonic clock as a source for timestamps Pawel Moll 2014-11-27 15:05 ` Pawel Moll 2014-11-27 15:05 ` Pawel Moll 2014-12-11 13:39 ` Pawel Moll 2014-12-11 13:39 ` Pawel Moll 2015-01-05 13:01 ` Peter Zijlstra 2015-01-05 13:01 ` Peter Zijlstra 2015-01-21 15:47 ` Pawel Moll 2015-01-05 13:00 ` Peter Zijlstra 2015-01-21 15:52 ` Pawel Moll [this message] 2015-01-21 15:52 ` Pawel Moll 2015-01-21 19:48 ` Pawel Moll 2015-01-21 19:48 ` Pawel Moll 2015-01-21 20:07 ` Pawel Moll 2015-01-21 20:07 ` Pawel Moll 2015-01-16 12:41 ` Adrian Hunter 2015-01-16 12:41 ` Adrian Hunter 2015-01-21 20:27 ` [PATCH v5] " Pawel Moll 2015-01-21 20:27 ` Pawel Moll 2015-02-02 16:52 ` Pawel Moll 2015-02-02 16:52 ` Pawel Moll [not found] ` <CAN+dfcT_6zZZ4oeyngUE5N0Wtx2B9CvXsfU71m+cuyXpq2KBdw@mail.gmail.com> 2015-02-03 9:20 ` Pawel Moll 2015-02-03 9:20 ` Pawel Moll 2015-02-11 16:12 ` Peter Zijlstra 2015-02-11 16:12 ` Peter Zijlstra 2015-02-12 10:04 ` Adrian Hunter 2015-02-12 10:04 ` Adrian Hunter 2015-02-12 10:28 ` Peter Zijlstra 2015-02-12 10:28 ` Peter Zijlstra 2015-02-12 15:38 ` Peter Zijlstra 2015-02-12 15:38 ` Peter Zijlstra 2015-02-13 0:25 ` John Stultz 2015-02-13 0:25 ` John Stultz 2015-02-13 7:07 ` Adrian Hunter 2015-02-13 7:07 ` Adrian Hunter 2014-11-06 16:51 ` [PATCH v4 2/3] perf: Userspace event Pawel Moll 2014-11-06 16:51 ` Pawel Moll 2015-01-05 13:12 ` Peter Zijlstra 2015-01-05 13:12 ` Peter Zijlstra 2015-01-21 16:01 ` Pawel Moll 2015-01-21 16:01 ` Pawel Moll 2014-11-06 16:51 ` [PATCH v4 3/3] perf: Sample additional clock value Pawel Moll 2015-01-05 13:45 ` Peter Zijlstra 2015-01-05 13:45 ` Peter Zijlstra 2015-01-05 19:17 ` John Stultz 2015-01-21 17:12 ` Pawel Moll 2015-01-21 17:12 ` Pawel Moll 2015-01-21 17:44 ` John Stultz 2015-01-21 17:44 ` John Stultz 2015-01-21 17:54 ` Pawel Moll 2015-01-21 17:54 ` Pawel Moll 2015-01-21 18:05 ` John Stultz 2015-01-21 18:05 ` John Stultz 2015-01-23 17:06 ` Pawel Moll 2015-01-23 17:06 ` Pawel Moll 2015-01-23 18:05 ` David Ahern 2015-01-23 18:05 ` David Ahern
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=1421855543.14076.68.camel@arm.com \ --to=pawel.moll@arm.com \ --cc=acme@kernel.org \ --cc=cov@codeaurora.org \ --cc=dsahern@gmail.com \ --cc=john.stultz@linaro.org \ --cc=linux-api@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=masami.hiramatsu.pt@hitachi.com \ --cc=mingo@redhat.com \ --cc=namhyung@kernel.org \ --cc=paulus@samba.org \ --cc=peterz@infradead.org \ --cc=richardcochran@gmail.com \ --cc=rostedt@goodmis.org \ --cc=tglx@linutronix.de \ --cc=tomeu@tomeuvizoso.net \ /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: linkBe 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.