perf: Export perf_assign_events()
Export perf_assign_events() so the uncore code can use it to schedule events. Signed-off-by: Zheng Yan <zheng.z.yan@intel.com> Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Link: http://lkml.kernel.org/r/1339741902-8449-2-git-send-email-zheng.z.yan@intel.com Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
parent
d1ece0998e
commit
4b4969b144
2 changed files with 5 additions and 3 deletions
|
@ -626,7 +626,7 @@ static bool __perf_sched_find_counter(struct perf_sched *sched)
|
||||||
c = sched->constraints[sched->state.event];
|
c = sched->constraints[sched->state.event];
|
||||||
|
|
||||||
/* Prefer fixed purpose counters */
|
/* Prefer fixed purpose counters */
|
||||||
if (x86_pmu.num_counters_fixed) {
|
if (c->idxmsk64 & (~0ULL << X86_PMC_IDX_FIXED)) {
|
||||||
idx = X86_PMC_IDX_FIXED;
|
idx = X86_PMC_IDX_FIXED;
|
||||||
for_each_set_bit_from(idx, c->idxmsk, X86_PMC_IDX_MAX) {
|
for_each_set_bit_from(idx, c->idxmsk, X86_PMC_IDX_MAX) {
|
||||||
if (!__test_and_set_bit(idx, sched->state.used))
|
if (!__test_and_set_bit(idx, sched->state.used))
|
||||||
|
@ -693,8 +693,8 @@ static bool perf_sched_next_event(struct perf_sched *sched)
|
||||||
/*
|
/*
|
||||||
* Assign a counter for each event.
|
* Assign a counter for each event.
|
||||||
*/
|
*/
|
||||||
static int perf_assign_events(struct event_constraint **constraints, int n,
|
int perf_assign_events(struct event_constraint **constraints, int n,
|
||||||
int wmin, int wmax, int *assign)
|
int wmin, int wmax, int *assign)
|
||||||
{
|
{
|
||||||
struct perf_sched sched;
|
struct perf_sched sched;
|
||||||
|
|
||||||
|
|
|
@ -481,6 +481,8 @@ static inline void __x86_pmu_enable_event(struct hw_perf_event *hwc,
|
||||||
|
|
||||||
void x86_pmu_enable_all(int added);
|
void x86_pmu_enable_all(int added);
|
||||||
|
|
||||||
|
int perf_assign_events(struct event_constraint **constraints, int n,
|
||||||
|
int wmin, int wmax, int *assign);
|
||||||
int x86_schedule_events(struct cpu_hw_events *cpuc, int n, int *assign);
|
int x86_schedule_events(struct cpu_hw_events *cpuc, int n, int *assign);
|
||||||
|
|
||||||
void x86_pmu_stop(struct perf_event *event, int flags);
|
void x86_pmu_stop(struct perf_event *event, int flags);
|
||||||
|
|
Loading…
Add table
Reference in a new issue