Allows kvm live mode to reuse the event processing and ordered samples
processing used by the perf-report path.

Signed-off-by: David Ahern <dsah...@gmail.com>
Cc: Arnaldo Carvalho de Melo <a...@ghostprotocols.net>
Cc: Ingo Molnar <mi...@kernel.org>
Cc: Frederic Weisbecker <fweis...@gmail.com>
Cc: Peter Zijlstra <pet...@infradead.org>
Cc: Jiri Olsa <jo...@redhat.com>
Cc: Namhyung Kim <namhy...@kernel.org>
Cc: Xiao Guangrong <xiaoguangr...@linux.vnet.ibm.com>
---
 tools/perf/util/session.c |   14 +++++++-------
 tools/perf/util/session.h |    9 +++++++++
 2 files changed, 16 insertions(+), 7 deletions(-)

diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c
index 7e2c4c7..355b01f 100644
--- a/tools/perf/util/session.c
+++ b/tools/perf/util/session.c
@@ -248,7 +248,7 @@ static int process_finished_round(struct perf_tool *tool,
                                  union perf_event *event,
                                  struct perf_session *session);
 
-static void perf_tool__fill_defaults(struct perf_tool *tool)
+void perf_tool__fill_defaults(struct perf_tool *tool)
 {
        if (tool->sample == NULL)
                tool->sample = process_event_sample_stub;
@@ -494,8 +494,8 @@ static int perf_session_deliver_event(struct perf_session 
*session,
                                      struct perf_tool *tool,
                                      u64 file_offset);
 
-static int flush_sample_queue(struct perf_session *s,
-                              struct perf_tool *tool)
+int flush_sample_queue(struct perf_session *s,
+                      struct perf_tool *tool)
 {
        struct ordered_samples *os = &s->ordered_samples;
        struct list_head *head = &os->samples;
@@ -948,10 +948,10 @@ static void event_swap(union perf_event *event, bool 
sample_id_all)
                swap(event, sample_id_all);
 }
 
-static int perf_session__process_event(struct perf_session *session,
-                                      union perf_event *event,
-                                      struct perf_tool *tool,
-                                      u64 file_offset)
+int perf_session__process_event(struct perf_session *session,
+                               union perf_event *event,
+                               struct perf_tool *tool,
+                               u64 file_offset)
 {
        struct perf_sample sample;
        int ret;
diff --git a/tools/perf/util/session.h b/tools/perf/util/session.h
index 6b51d47..864db2b 100644
--- a/tools/perf/util/session.h
+++ b/tools/perf/util/session.h
@@ -58,6 +58,15 @@ int __perf_session__process_events(struct perf_session *self,
 int perf_session__process_events(struct perf_session *self,
                                 struct perf_tool *tool);
 
+int perf_session__process_event(struct perf_session *session,
+                               union perf_event *event,
+                               struct perf_tool *tool,
+                               u64 file_offset);
+
+int flush_sample_queue(struct perf_session *s, struct perf_tool *tool);
+
+void perf_tool__fill_defaults(struct perf_tool *tool);
+
 int perf_session__resolve_callchain(struct perf_session *self, struct 
perf_evsel *evsel,
                                    struct thread *thread,
                                    struct ip_callchain *chain,
-- 
1.7.10.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to