Commit-ID: 5a0cb2ffce065d738d90c0bf372a79ddc961c9ff Gitweb: https://git.kernel.org/tip/5a0cb2ffce065d738d90c0bf372a79ddc961c9ff Author: Jiri Olsa <jo...@kernel.org> AuthorDate: Thu, 6 Dec 2018 14:38:52 -0300 Committer: Arnaldo Carvalho de Melo <a...@redhat.com> CommitDate: Thu, 6 Dec 2018 16:43:28 -0300
perf ordered_events: Add first_time() method To get the timestamp in the first event in the queue. Cc: Adrian Hunter <adrian.hun...@intel.com> Cc: Alexander Shishkin <alexander.shish...@linux.intel.com> Cc: Dmitry Levin <l...@altlinux.org> Cc: Eugene Syromiatnikov <e...@redhat.com> Cc: Frederic Weisbecker <fweis...@gmail.com> Cc: Jiri Olsa <jo...@kernel.org> Cc: Luis Cláudio Gonçalves <lclau...@uudg.org> Cc: Namhyung Kim <namhy...@kernel.org> Cc: Peter Zijlstra <pet...@infradead.org> Cc: Steven Rostedt (VMware) <rost...@goodmis.org> Cc: Thomas Gleixner <t...@linutronix.de> Link: https://lkml.kernel.org/n/tip-appp27jw1ul8kgg872j43...@git.kernel.org [ split from a larger patch ] Signed-off-by: Arnaldo Carvalho de Melo <a...@redhat.com> --- tools/perf/util/ordered-events.c | 11 +++++++++++ tools/perf/util/ordered-events.h | 1 + 2 files changed, 12 insertions(+) diff --git a/tools/perf/util/ordered-events.c b/tools/perf/util/ordered-events.c index 46965643020b..897589507d97 100644 --- a/tools/perf/util/ordered-events.c +++ b/tools/perf/util/ordered-events.c @@ -343,6 +343,17 @@ int ordered_events__flush_time(struct ordered_events *oe, u64 timestamp) return __ordered_events__flush(oe, OE_FLUSH__TIME, timestamp); } +u64 ordered_events__first_time(struct ordered_events *oe) +{ + struct ordered_event *event; + + if (list_empty(&oe->events)) + return 0; + + event = list_first_entry(&oe->events, struct ordered_event, list); + return event->timestamp; +} + void ordered_events__init(struct ordered_events *oe, ordered_events__deliver_t deliver, void *data) { diff --git a/tools/perf/util/ordered-events.h b/tools/perf/util/ordered-events.h index f352af20e167..0920fb0ec6cc 100644 --- a/tools/perf/util/ordered-events.h +++ b/tools/perf/util/ordered-events.h @@ -61,6 +61,7 @@ void ordered_events__init(struct ordered_events *oe, ordered_events__deliver_t d void *data); void ordered_events__free(struct ordered_events *oe); void ordered_events__reinit(struct ordered_events *oe); +u64 ordered_events__first_time(struct ordered_events *oe); static inline void ordered_events__set_alloc_size(struct ordered_events *oe, u64 size)