Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932176AbbEHOan (ORCPT ); Fri, 8 May 2015 10:30:43 -0400 Received: from foss.arm.com ([217.140.101.70]:53184 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932149AbbEHOak (ORCPT ); Fri, 8 May 2015 10:30:40 -0400 Date: Fri, 8 May 2015 07:30:39 -0700 From: Drew Richardson To: Steven Rostedt Cc: Peter Zijlstra , Mathieu Desnoyers , Ingo Molnar , "linux-kernel@vger.kernel.org" , Thomas Gleixner , John Stultz , Wade Cherry , Pawel Moll Subject: [PATCHv3] ftrace: Provide trace clock monotonic raw Message-ID: <20150508143037.GB1276@dreric01-Precision-T1650> References: <1430750469-16428-1-git-send-email-drew.richardson@arm.com> <199091314.42407.1430752205090.JavaMail.zimbra@efficios.com> <20150504200515.GA24626@dreric01-Precision-T1650> <20150504205748.GB21418@twins.programming.kicks-ass.net> <20150505145438.GA5145@dreric01-Precision-T1650> <20150508100903.39641009@gandalf.local.home> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150508100903.39641009@gandalf.local.home> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2062 Lines: 51 Expose the NMI safe accessor to the monotonic raw clock to the tracer. The mono clock was added with commit 1b3e5c0936046e7e023149ddc8946d21c2ea20eb. The advantage of the monotonic raw clock is that it will advance more constantly than the monotonic clock. Imagine someone is trying to optimize a particular program to reduce instructions executed for a given workload while minimizing the effect on runtime. Also suppose that NTP is running and potentially making larger adjustments to the monotonic clock. If NTP is adjusting the monotonic clock to advance more rapidly, the program will appear to use fewer instructions per second but run longer than if the monotonic raw clock had been used. The total number of instructions observed would be the same regardless of the clock source used, but how it's attributed to time would be affected. Conversely if NTP is adjusting the monotonic clock to advance more slowly, the program will appear to use more instructions per second but run more quickly. Of course there are many sources that can cause jitter in performance measurements on modern processors, but let's remove NTP from the list. The monotonic raw clock can also be useful for tracing early boot, e.g. when debugging issues with NTP. Signed-off-by: Drew Richardson Acked-by: Mathieu Desnoyers --- kernel/trace/trace.c | 1 + 1 file changed, 1 insertion(+) diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c index 05330494a0df..458031c31a37 100644 --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c @@ -876,6 +876,7 @@ static struct { { trace_clock_jiffies, "uptime", 0 }, { trace_clock, "perf", 1 }, { ktime_get_mono_fast_ns, "mono", 1 }, + { ktime_get_raw_fast_ns, "mono_raw", 1 }, ARCH_TRACE_CLOCKS }; -- 2.1.4 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/