From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Ingo Molnar <mingo@kernel.org>
Cc: linux-kernel@vger.kernel.org,
Arnaldo Carvalho de Melo <acme@redhat.com>,
Adrian Hunter <adrian.hunter@intel.com>,
David Ahern <dsahern@gmail.com>, Jiri Olsa <jolsa@kernel.org>,
Namhyung Kim <namhyung@kernel.org>,
Steven Rostedt <rostedt@goodmis.org>,
Wang Nan <wangnan0@huawei.com>
Subject: [PATCH 01/35] tools: Introduce tools/include/linux/time64.h for *SEC_PER_*SEC macros
Date: Tue, 23 Aug 2016 18:03:02 -0300 [thread overview]
Message-ID: <1471986216-18390-2-git-send-email-acme@kernel.org> (raw)
In-Reply-To: <1471986216-18390-1-git-send-email-acme@kernel.org>
From: Arnaldo Carvalho de Melo <acme@redhat.com>
And remove it from tools/perf/{perf,util}.h, making code that needs
these macros to include linux/time64.h instead, to match how this is
used in the kernel sources.
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Wang Nan <wangnan0@huawei.com>
Link: http://lkml.kernel.org/n/tip-e69fc1pvkgt57yvxqt6eunyg@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/include/linux/time64.h | 12 ++++++++++++
tools/perf/MANIFEST | 1 +
tools/perf/builtin-kvm.c | 1 +
tools/perf/builtin-script.c | 7 ++++---
tools/perf/builtin-stat.c | 7 ++++---
tools/perf/builtin-trace.c | 1 +
tools/perf/perf.h | 7 -------
tools/perf/util/debug.c | 10 ++++------
tools/perf/util/scripting-engines/trace-event-perl.c | 5 +++--
tools/perf/util/scripting-engines/trace-event-python.c | 5 +++--
tools/perf/util/util.c | 1 +
tools/perf/util/util.h | 4 ----
12 files changed, 34 insertions(+), 27 deletions(-)
create mode 100644 tools/include/linux/time64.h
diff --git a/tools/include/linux/time64.h b/tools/include/linux/time64.h
new file mode 100644
index 000000000000..df9265483d65
--- /dev/null
+++ b/tools/include/linux/time64.h
@@ -0,0 +1,12 @@
+#ifndef _TOOLS_LINUX_TIME64_H
+#define _TOOLS_LINUX_TIME64_H
+
+#define MSEC_PER_SEC 1000L
+#define USEC_PER_MSEC 1000L
+#define NSEC_PER_USEC 1000L
+#define NSEC_PER_MSEC 1000000L
+#define USEC_PER_SEC 1000000L
+#define NSEC_PER_SEC 1000000000L
+#define FSEC_PER_SEC 1000000000000000LL
+
+#endif /* _LINUX_TIME64_H */
diff --git a/tools/perf/MANIFEST b/tools/perf/MANIFEST
index ad2534df4ba6..f23a5e72aaa5 100644
--- a/tools/perf/MANIFEST
+++ b/tools/perf/MANIFEST
@@ -77,4 +77,5 @@ tools/include/linux/stringify.h
tools/include/linux/types.h
tools/include/linux/err.h
tools/include/linux/bitmap.h
+tools/include/linux/time64.h
tools/arch/*/include/uapi/asm/perf_regs.h
diff --git a/tools/perf/builtin-kvm.c b/tools/perf/builtin-kvm.c
index 5e2127e04f83..a0040f74e935 100644
--- a/tools/perf/builtin-kvm.c
+++ b/tools/perf/builtin-kvm.c
@@ -24,6 +24,7 @@
#include <sys/timerfd.h>
#endif
+#include <linux/time64.h>
#include <termios.h>
#include <semaphore.h>
#include <pthread.h>
diff --git a/tools/perf/builtin-script.c b/tools/perf/builtin-script.c
index c859e59dfe3e..6b3c8b0d3276 100644
--- a/tools/perf/builtin-script.c
+++ b/tools/perf/builtin-script.c
@@ -24,6 +24,7 @@
#include "util/thread-stack.h"
#include <linux/bitmap.h>
#include <linux/stringify.h>
+#include <linux/time64.h>
#include "asm/bug.h"
#include "util/mem-events.h"
@@ -464,9 +465,9 @@ static void print_sample_start(struct perf_sample *sample,
if (PRINT_FIELD(TIME)) {
nsecs = sample->time;
- secs = nsecs / NSECS_PER_SEC;
- nsecs -= secs * NSECS_PER_SEC;
- usecs = nsecs / NSECS_PER_USEC;
+ secs = nsecs / NSEC_PER_SEC;
+ nsecs -= secs * NSEC_PER_SEC;
+ usecs = nsecs / NSEC_PER_USEC;
if (nanosecs)
printf("%5lu.%09llu: ", secs, nsecs);
else
diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c
index 3c7452b39f57..e33a66bffbdb 100644
--- a/tools/perf/builtin-stat.c
+++ b/tools/perf/builtin-stat.c
@@ -65,6 +65,7 @@
#include "util/group.h"
#include "asm/bug.h"
+#include <linux/time64.h>
#include <api/fs/fs.h>
#include <stdlib.h>
#include <sys/prctl.h>
@@ -354,7 +355,7 @@ static void process_interval(void)
diff_timespec(&rs, &ts, &ref_time);
if (STAT_RECORD) {
- if (WRITE_STAT_ROUND_EVENT(rs.tv_sec * NSECS_PER_SEC + rs.tv_nsec, INTERVAL))
+ if (WRITE_STAT_ROUND_EVENT(rs.tv_sec * NSEC_PER_SEC + rs.tv_nsec, INTERVAL))
pr_err("failed to write stat round event\n");
}
@@ -2175,8 +2176,8 @@ static int process_stat_round_event(struct perf_tool *tool __maybe_unused,
update_stats(&walltime_nsecs_stats, stat_round->time);
if (stat_config.interval && stat_round->time) {
- tsh.tv_sec = stat_round->time / NSECS_PER_SEC;
- tsh.tv_nsec = stat_round->time % NSECS_PER_SEC;
+ tsh.tv_sec = stat_round->time / NSEC_PER_SEC;
+ tsh.tv_nsec = stat_round->time % NSEC_PER_SEC;
ts = &tsh;
}
diff --git a/tools/perf/builtin-trace.c b/tools/perf/builtin-trace.c
index b8c6766301db..b4fc1ab3d2a7 100644
--- a/tools/perf/builtin-trace.c
+++ b/tools/perf/builtin-trace.c
@@ -45,6 +45,7 @@
#include <linux/audit.h>
#include <linux/random.h>
#include <linux/stringify.h>
+#include <linux/time64.h>
#ifndef O_CLOEXEC
# define O_CLOEXEC 02000000
diff --git a/tools/perf/perf.h b/tools/perf/perf.h
index cb0f1356ff81..9a0236a4cf95 100644
--- a/tools/perf/perf.h
+++ b/tools/perf/perf.h
@@ -14,13 +14,6 @@ void test_attr__open(struct perf_event_attr *attr, pid_t pid, int cpu,
#define HAVE_ATTR_TEST
#include "perf-sys.h"
-#ifndef NSEC_PER_SEC
-# define NSEC_PER_SEC 1000000000ULL
-#endif
-#ifndef NSEC_PER_USEC
-# define NSEC_PER_USEC 1000ULL
-#endif
-
static inline unsigned long long rdclock(void)
{
struct timespec ts;
diff --git a/tools/perf/util/debug.c b/tools/perf/util/debug.c
index 8c4212abd19b..c1838b643108 100644
--- a/tools/perf/util/debug.c
+++ b/tools/perf/util/debug.c
@@ -6,6 +6,7 @@
#include <stdarg.h>
#include <stdio.h>
#include <api/debug.h>
+#include <linux/time64.h>
#include "cache.h"
#include "color.h"
@@ -14,9 +15,6 @@
#include "util.h"
#include "target.h"
-#define NSECS_PER_SEC 1000000000ULL
-#define NSECS_PER_USEC 1000ULL
-
int verbose;
bool dump_trace = false, quiet = false;
int debug_ordered_events;
@@ -54,9 +52,9 @@ static int veprintf_time(u64 t, const char *fmt, va_list args)
int ret = 0;
u64 secs, usecs, nsecs = t;
- secs = nsecs / NSECS_PER_SEC;
- nsecs -= secs * NSECS_PER_SEC;
- usecs = nsecs / NSECS_PER_USEC;
+ secs = nsecs / NSEC_PER_SEC;
+ nsecs -= secs * NSEC_PER_SEC;
+ usecs = nsecs / NSEC_PER_USEC;
ret = fprintf(stderr, "[%13" PRIu64 ".%06" PRIu64 "] ",
secs, usecs);
diff --git a/tools/perf/util/scripting-engines/trace-event-perl.c b/tools/perf/util/scripting-engines/trace-event-perl.c
index 5d1eb1ccd96c..e55a132f69b7 100644
--- a/tools/perf/util/scripting-engines/trace-event-perl.c
+++ b/tools/perf/util/scripting-engines/trace-event-perl.c
@@ -25,6 +25,7 @@
#include <ctype.h>
#include <errno.h>
#include <linux/bitmap.h>
+#include <linux/time64.h>
#include "../util.h"
#include <EXTERN.h>
@@ -359,8 +360,8 @@ static void perl_process_tracepoint(struct perf_sample *sample,
if (!test_and_set_bit(event->id, events_defined))
define_event_symbols(event, handler, event->print_fmt.args);
- s = nsecs / NSECS_PER_SEC;
- ns = nsecs - s * NSECS_PER_SEC;
+ s = nsecs / NSEC_PER_SEC;
+ ns = nsecs - s * NSEC_PER_SEC;
scripting_context->event_data = data;
scripting_context->pevent = evsel->tp_format->pevent;
diff --git a/tools/perf/util/scripting-engines/trace-event-python.c b/tools/perf/util/scripting-engines/trace-event-python.c
index e0203b979474..089438da1f7f 100644
--- a/tools/perf/util/scripting-engines/trace-event-python.c
+++ b/tools/perf/util/scripting-engines/trace-event-python.c
@@ -27,6 +27,7 @@
#include <stdbool.h>
#include <errno.h>
#include <linux/bitmap.h>
+#include <linux/time64.h>
#include "../../perf.h"
#include "../debug.h"
@@ -426,8 +427,8 @@ static void python_process_tracepoint(struct perf_sample *sample,
if (!dict)
Py_FatalError("couldn't create Python dict");
}
- s = nsecs / NSECS_PER_SEC;
- ns = nsecs - s * NSECS_PER_SEC;
+ s = nsecs / NSEC_PER_SEC;
+ ns = nsecs - s * NSEC_PER_SEC;
scripting_context->event_data = data;
scripting_context->pevent = evsel->tp_format->pevent;
diff --git a/tools/perf/util/util.c b/tools/perf/util/util.c
index cee559d8c9e8..85c56800f17a 100644
--- a/tools/perf/util/util.c
+++ b/tools/perf/util/util.c
@@ -15,6 +15,7 @@
#include <byteswap.h>
#include <linux/kernel.h>
#include <linux/log2.h>
+#include <linux/time64.h>
#include <unistd.h>
#include "callchain.h"
#include "strlist.h"
diff --git a/tools/perf/util/util.h b/tools/perf/util/util.h
index e5f55477491d..43899e0d6fa1 100644
--- a/tools/perf/util/util.h
+++ b/tools/perf/util/util.h
@@ -179,10 +179,6 @@ static inline void *zalloc(size_t size)
#undef tolower
#undef toupper
-#ifndef NSEC_PER_MSEC
-#define NSEC_PER_MSEC 1000000L
-#endif
-
int parse_nsec_time(const char *str, u64 *ptime);
extern unsigned char sane_ctype[256];
--
2.7.4
next prev parent reply other threads:[~2016-08-23 21:49 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-23 21:03 [GIT PULL 00/35] perf/core improvements and fixes Arnaldo Carvalho de Melo
2016-08-23 21:03 ` Arnaldo Carvalho de Melo [this message]
2016-08-23 21:03 ` [PATCH 02/35] perf bench numa: Use NSEC_PER_U?SEC Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 03/35] perf sched: Use linux/time64.h Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 04/35] perf timechart: Use NSEC_PER_U?SEC Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 05/35] perf bench sched-pipe: Use linux/time64.h, USEC_PER_SEC Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 06/35] perf stat: Use *SEC_PER_*SEC macros Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 07/35] perf bench mem: Use USEC_PER_SEC Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 08/35] perf bench sched-messaging: Use USEC_PER_MSEC Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 09/35] perf record: " Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 10/35] perf kvm: Use NSEC_PER_USEC Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 11/35] perf bench futex: " Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 12/35] perf top: Use MSEC_PER_SEC Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 13/35] perf hists: Introduce nr_header_lines into struct perf_hpp_list Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 14/35] perf hists: Add line argument into perf_hpp_fmt's header callback Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 15/35] perf tools tui: Display multiple header lines Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 16/35] perf tools stdio: " Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 17/35] perf hists: Add support for header span Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 18/35] perf disassemble: Move check for kallsyms + !kcore Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 19/35] perf disassemble: Simplify logic for picking the filename to disassemble Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 20/35] perf disassemble: Extract logic to find file to pass to objdump to a separate function Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 21/35] tools: Copy coresight-pmu.h header file needed by perf tools Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 22/35] perf report: Allow configuring the default sort order in ~/.perfconfig Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 23/35] perf tools: Use __weak definition from linux/compiler.h Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 24/35] perf tools: Skip running the feature tests for 'make install-doc' Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 25/35] perf hists browser: Remove superfluous null check on map Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 26/35] ftrace: kprobe: uprobe: Add x8/x16/x32/x64 for hexadecimal types Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 27/35] ftrace: probe: Add README entries for k/uprobe-events Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 28/35] perf probe: Add supported for type casting by the running kernel Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 29/35] perf probe: Support hexadecimal casting Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 30/35] perf probe: Use hexadecimal type by default if possible Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 31/35] ftrace: kprobe: uprobe: Show u8/u16/u32/u64 types in decimal Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 32/35] perf tools: Fix typo: "ehough" -> "enough" Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 33/35] perf test bpf: " Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 34/35] perf " Arnaldo Carvalho de Melo
2016-08-23 21:03 ` [PATCH 35/35] perf record: Fix spelling mistake "Finshed" -> "Finished" Arnaldo Carvalho de Melo
2016-08-24 9:09 ` [GIT PULL 00/35] perf/core improvements and fixes Ingo Molnar
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=1471986216-18390-2-git-send-email-acme@kernel.org \
--to=acme@kernel.org \
--cc=acme@redhat.com \
--cc=adrian.hunter@intel.com \
--cc=dsahern@gmail.com \
--cc=jolsa@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=namhyung@kernel.org \
--cc=rostedt@goodmis.org \
--cc=wangnan0@huawei.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.