[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] RE: [Xen-devel] [PATCH]ACPI: re-enable mwait for xen cpuidle
Here is the alternative patch you expected. ACPI: re-enable mwait for xen cpuidle Xen hypervisor doesn't export mwait feature to dom0, but latest Linux kernel start to check this feature while initializing _PDC object. Modify xen_cpuid to re-enable mwait for xen cpuidle. Signed-off-by: Wei Gang <gang.wei@xxxxxxxxx> diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c index c3e8bff..565244f 100644 --- a/arch/x86/xen/enlighten.c +++ b/arch/x86/xen/enlighten.c @@ -189,6 +189,8 @@ static void xen_cpuid(unsigned int *ax, unsigned int *bx, unsigned maskebx = ~0; unsigned maskecx = ~0; unsigned maskedx = ~0; + unsigned setecx = 0; + unsigned setedx = 0; /* * Mask out inconvenient features, to try and disable as many @@ -198,6 +200,12 @@ static void xen_cpuid(unsigned int *ax, unsigned int *bx, case 0x1: maskecx = cpuid_leaf1_ecx_mask; maskedx = cpuid_leaf1_edx_mask; + setecx = 1 << (X86_FEATURE_MWAIT % 32); + break; + + case 0x5: /* MWAIT INFO */ + setecx = 0x3; /* EXTENSIONS_SUPPORTED | INTERRUPT_BREAK */ + setedx = ~0; break; case 0xb: @@ -220,6 +228,8 @@ static void xen_cpuid(unsigned int *ax, unsigned int *bx, *bx &= maskebx; *cx &= maskecx; *dx &= maskedx; + *cx |= setecx; + *dx |= setedx; } static __init void xen_init_cpuid_mask(void) On Friday, 2010-4-2 2:33 PM, Wei, Gang wrote: > On Friday, 2010-4-2 1:41 PM, Jeremy Fitzhardinge wrote: >> On 04/01/2010 07:38 PM, Wei, Gang wrote: >>> I suggest including this patch in Xen 4.0 release. It is quite >>> straightforward, and make sure the better and widely equipped cpu >>> idle entry method MWAIT is used by xen if available. >>> >>> BTW, can we consider re-open MWAIT freature for dom0 in xen >>> hypervisor? We can discuss it post 4.0. >>> >>> Jimmy >>> >>> ACPI: re-enable mwait for xen cpuidle >>> >>> Xen hypervisor doesn't export mwait feature to dom0, but latest >>> Linux kernel start to check this feature while initializing _PDC >>> object. Bypass such check in pv-ops case to re-enable mwait for xen >>> cpuidle. >>> >> >> Why not just set or clear the MWAIT feature flag in xen_cpuid? > > Yes, you pointed out another approach in dom0 side which has similar > effect as re-open MWAIT feature for dom0 in xen. I am not sure > whether exposing the MWAIT feature to whole dom0 kernel is ok. My way > is just to narrow the impact. > > Jimmy Attachment:
re-enable-mwait_pv-ops-dom0-v2.patch _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |