[PATCH 3/9] perf session: export a few functions for event processing

2013-08-02 Thread David Ahern
Allows kvm live mode to reuse the event processing and ordered samples
processing used by the perf-report path.

v2: removed flush_sample_queue as noticed by Jiri

Signed-off-by: David Ahern 
Cc: Arnaldo Carvalho de Melo 
Cc: Ingo Molnar 
Cc: Frederic Weisbecker 
Cc: Peter Zijlstra 
Cc: Jiri Olsa 
Cc: Namhyung Kim 
Cc: Xiao Guangrong 
Cc: Runzhen Wang 
---
 tools/perf/util/session.c |   12 ++--
 tools/perf/util/session.h |7 +++
 2 files changed, 13 insertions(+), 6 deletions(-)

diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c
index a0ce5a4..b5ebd47 100644
--- a/tools/perf/util/session.c
+++ b/tools/perf/util/session.c
@@ -250,7 +250,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;
@@ -495,7 +495,7 @@ static int perf_session_deliver_event(struct perf_session 
*session,
  u64 file_offset);
 
 static int flush_sample_queue(struct perf_session *s,
-  struct perf_tool *tool)
+  struct perf_tool *tool)
 {
struct ordered_samples *os = >ordered_samples;
struct list_head *head = >samples;
@@ -1049,10 +1049,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 ad8d3d4..9818fc2 100644
--- a/tools/perf/util/session.h
+++ b/tools/perf/util/session.h
@@ -56,6 +56,13 @@ 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);
+
+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/


[PATCH 3/9] perf session: export a few functions for event processing

2013-08-02 Thread David Ahern
Allows kvm live mode to reuse the event processing and ordered samples
processing used by the perf-report path.

v2: removed flush_sample_queue as noticed by Jiri

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
Cc: Runzhen Wang runz...@linux.vnet.ibm.com
---
 tools/perf/util/session.c |   12 ++--
 tools/perf/util/session.h |7 +++
 2 files changed, 13 insertions(+), 6 deletions(-)

diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c
index a0ce5a4..b5ebd47 100644
--- a/tools/perf/util/session.c
+++ b/tools/perf/util/session.c
@@ -250,7 +250,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;
@@ -495,7 +495,7 @@ static int perf_session_deliver_event(struct perf_session 
*session,
  u64 file_offset);
 
 static int flush_sample_queue(struct perf_session *s,
-  struct perf_tool *tool)
+  struct perf_tool *tool)
 {
struct ordered_samples *os = s-ordered_samples;
struct list_head *head = os-samples;
@@ -1049,10 +1049,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 ad8d3d4..9818fc2 100644
--- a/tools/perf/util/session.h
+++ b/tools/perf/util/session.h
@@ -56,6 +56,13 @@ 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);
+
+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/