Re: [PATCH 2/3] perf, x86: Use GO/HO bits in perf-ctr

From: Peter Zijlstra
Date: Tue May 10 2011 - 10:48:46 EST


On Tue, 2011-05-10 at 16:35 +0200, Joerg Roedel wrote:
> The AMD perf-counters support counting in guest or host-mode
> only. Make use of that feature when user-space specified
> guest/host-mode only counting.

Subject mentions x86, does Intel have anything similar so you can make
it work for them too?

Also, might be nice to ask the power and sparc64 people if their archs
can also differentiate between guest and host thingies.

> diff --git a/arch/x86/kernel/cpu/perf_event_amd.c b/arch/x86/kernel/cpu/perf_event_amd.c
> index cf4e369..afc21f3 100644
> --- a/arch/x86/kernel/cpu/perf_event_amd.c
> +++ b/arch/x86/kernel/cpu/perf_event_amd.c
> @@ -116,6 +116,12 @@ static int amd_pmu_hw_config(struct perf_event *event)
> if (ret)
> return ret;
>
> + if (event->attr.exclude_host)
> + event->hw.config |= AMD_PERFMON_EVENTSEL_GUESTONLY;
> +
> + if (event->attr.exclude_guest)
> + event->hw.config |= AMD_PERFMON_EVENTSEL_HOSTONLY;
> +
> if (event->attr.type != PERF_TYPE_RAW)
> return 0;

--
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/