Messages in this thread | | | Subject | Re: [PATCH 1/3] perf: use hrtimer for event multiplexing | From | Peter Zijlstra <> | Date | Fri, 07 Sep 2012 17:39:10 +0200 |
| |
On Fri, 2012-09-07 at 16:29 +0200, Stephane Eranian wrote: > @@ -148,6 +148,15 @@ static LIST_HEAD(pmus); > static DEFINE_MUTEX(pmus_lock); > static struct srcu_struct pmus_srcu; > > +struct perf_cpu_hrtimer { > + struct hrtimer hrtimer; > + int active; > +}; > + > +static DEFINE_PER_CPU(struct list_head, rotation_list); > + > +static DEFINE_PER_CPU(struct perf_cpu_hrtimer, perf_cpu_hrtimer);
How about sticking the hrtimer in perf_cpu_context so you can have a different rotation interval per PMU ?
Sorta like e9d2b064149ff7ef4acbc65a1b9374ac8b218d3e removed. Stopping the timer when the PMU isn't over committed should solve the NOHZ problem I think.
| |