Re: [PATCH 1/3] perf: use hrtimer for event multiplexing

From: Peter Zijlstra
Date: Fri Sep 07 2012 - 11:39:18 EST


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