[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] RFC: Linux: disable APERF/MPERF feature in PV kernels

>>> On 22.05.12 at 18:07, Andre Przywara <andre.przywara@xxxxxxx> wrote:
> while testing some APERF/MPERF semantics I discovered that this feature 
> is enabled in Xen Dom0, but is not reliable.
> The Linux kernel's scheduler uses this feature if it sees the CPUID bit, 
> leading to costly RDMSR traps (a few 100,000s during a kernel compile) 
> and bogus values due to VCPU migration during the measurement.
> The attached patch explicitly disables this CPU capability inside the 
> Linux kernel, I couldn't measure any APERF/MPERF reads anymore with the 
> patch applied.
> I am not sure if the PVOPS code is the right place to fix this, we could 
> as well do it in the HV's xen/arch/x86/traps.c:pv_cpuid().
> Also when the Dom0 VCPUs are pinned, we could allow this, but I am not 
> sure if it's worth to do so.
> Awaiting your comments.

First of all I'm of the opinion that this indeed should not be
masked in the hypervisor - there's no reason to disallow the
guest to read these registers (but we should of course deny
writes as long as Xen is controlling P-states, which we do).

Next I'd like to note that in our kernels we simply don't build
arch/x86/kernel/cpu/sched.o. Together with CPU_FREQ being
suppressed, there's no consumer of the feature flag in our

So I would think that your suggested change is appropriate,
but I'm adding Konrad to Cc as these days he's the one to pick
this up.


Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.