[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 05/23/2012 09:34 AM, Jan Beulich wrote:
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).

Ok. Thanks for the acknowledgment.

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
kernels.

With "our kernels" you mean OpenSuSE/SLES kernels? I quickly checked upstream as well as the repos on kernel.opensuse.org. In all of them sched.o is unconditionally included in the Makefile. So is there a build patch to exclude this file for builds of distro Xen kernels?

Regards,
Andre.


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.

Jan

--
Andre Przywara
AMD-Operating System Research Center (OSRC), Dresden, Germany


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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