[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <1282118367.5181.116.camel@rui>
Date: Wed, 18 Aug 2010 15:59:27 +0800
From: Zhang Rui <rui.zhang@...el.com>
To: perterz@...radead.org
Cc: LKML <linux-kernel@...r.kernel.org>, mingo@...e.hu,
"robert .richter"@amd.com, fweisbec@...il.com, dzickus@...hat.com,
acme@...hat.com, paulus@...ba.org, gorcunov@...il.com,
Lin Ming <ming.m.lin@...el.com>,
"Brown, Len" <lenb@...nel.org>,
Matthew Garrett <mjg59@...f.ucam.org>,
"Zhang, Rui" <rui.zhang@...el.com>
Subject: [RFC PATCH 1/3] perf: export perf helper functions
Make more perf helper functions global, so that we can write a
new pmu more easily.
Signed-off-by: Zhang Rui <rui.zhang@...el.com>
---
include/linux/perf_event.h | 2 ++
kernel/perf_event.c | 12 ++++++++++--
2 files changed, 12 insertions(+), 2 deletions(-)
Index: linux-2.6/kernel/perf_event.c
===================================================================
--- linux-2.6.orig/kernel/perf_event.c
+++ linux-2.6/kernel/perf_event.c
@@ -4572,7 +4572,7 @@ static enum hrtimer_restart perf_swevent
return ret;
}
-static void perf_swevent_start_hrtimer(struct perf_event *event)
+void perf_swevent_start_hrtimer(struct perf_event *event)
{
struct hw_perf_event *hwc = &event->hw;
@@ -4595,7 +4595,9 @@ static void perf_swevent_start_hrtimer(s
}
}
-static void perf_swevent_cancel_hrtimer(struct perf_event *event)
+EXPORT_SYMBOL(perf_swevent_start_hrtimer);
+
+void perf_swevent_cancel_hrtimer(struct perf_event *event)
{
struct hw_perf_event *hwc = &event->hw;
@@ -4607,6 +4609,8 @@ static void perf_swevent_cancel_hrtimer(
}
}
+EXPORT_SYMBOL(perf_swevent_cancel_hrtimer);
+
/*
* Software event: cpu wall time clock
*/
@@ -4815,6 +4819,8 @@ unlock:
return ret;
}
+EXPORT_SYMBOL(perf_pmu_register);
+
void perf_pmu_unregister(struct pmu *pmu)
{
mutex_lock(&pmus_lock);
@@ -4825,6 +4831,8 @@ void perf_pmu_unregister(struct pmu *pmu
synchronize_srcu(&pmus_srcu);
}
+EXPORT_SYMBOL(perf_pmu_unregister);
+
struct pmu *perf_init_event(struct perf_event *event)
{
struct pmu *pmu = NULL;
Index: linux-2.6/include/linux/perf_event.h
===================================================================
--- linux-2.6.orig/include/linux/perf_event.h
+++ linux-2.6/include/linux/perf_event.h
@@ -888,6 +888,8 @@ extern int perf_max_events;
extern int perf_pmu_register(struct pmu *pmu);
extern void perf_pmu_unregister(struct pmu *pmu);
+extern void perf_swevent_start_hrtimer(struct perf_event *event);
+extern void perf_swevent_cancel_hrtimer(struct perf_event *event);
extern void perf_event_task_sched_in(struct task_struct *task);
extern void perf_event_task_sched_out(struct task_struct *task, struct task_struct *next);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists