Re: [Xen-devel] Re: Regression in 3.1 causes Xen to use wrong idle routine

Konrad Rzeszutek Wilk
2011-11-14T18:20:03Z

On Sun, Nov 13, 2011 at 04:59:10PM +0000, Keir Fraser wrote:
> On 13/11/2011 03:46, "Len Brown" <lenb@kernel.org> wrote:
>
> >> The problem I see is that select_idle_routine() is called from
> >> arch/x86/kernel/cpu/common.c and since Xen setup does not set pm_idle
> >> anymore, it can cause mwait_idle or amd_e400_idle functions to be selected.
> >> In testing it seem amd_e400_idle in PVM domU at least does not immediately
> >> cause
> >> problems, but mwait_idle just causes crashes. From the reports I have
> >> this may be related to older hypervisors (3.1 and older) not clearing the
> >> mwait
> >> capability. But overall there seems something wrong in the interaction.
> >
> > Why is Xen advertising X86_FEATURE_MWAIT and then crashing
> > when the dom0 (or other guests) use what it advertises?
> >
> > What versions of Xen have this bug?
>
> Xen doesn't advertise MWAIT. Possibly Xen-pv_ops is lying to the rest of the
> kernel via the cpuid pv_ops hook. This would probably be because Xen is

I can't seem to find anything in there advertising the MWAIT feature.

> relying on the OSPM in dom0 kernel to parse out Cx/Px info which Xen itself
> *can* use.

The Cx/Px patches that would parse the Cx/Px and then percolate those up
to the hypervisor are in mainline. So that is not it.