Re: [PATCH] ACPI : Disable the C2C3_FFH access mode if MWAIT is unsupported

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

 




On Thu, 5 Jun 2008, Zhao Yakui wrote:

> Subject: ACPI: Disable the C2C3_FFH access mode if MWAIT is unsupported
> From: Zhao Yakui <yakui.zhao@xxxxxxxxx>
> 
>    After the following commit is merged, C2C3_FFH mode will be enabled and 
> passed into the _PDC object. But because MWAIT is unsupported on some laptops, 
> the different power states will be returned by the _CST object.
> Maybe it will be better to disable C2C3_FFH access mode if MWAIT is unsupported.
>  
> commit 991528d7348667924176f3e29addea0675298944
> Author: Venkatesh Pallipadi <venkatesh.pallipadi@xxxxxxxxx>
> Date:   Mon Sep 25 16:28:13 2006 -0700
> 
>     ACPI: Processor native C-states using MWAIT
 
> http://bugzilla.kernel.org/show_bug.cgi?id=10807

Interesting bug report. 
Unfortunately, it is a BIOS bug that the BIOS exposes C3
when the OS doesn't support MWAIT, but neglects to expose
C3 when the OS does support MWAIT. 

This patch will have no effect on the system in the bug report.
Indeed, it would benefit only a system with a BIOS that thinks
it has MWAIT support but a CPU that thinks it doesn't...

probably good hygine to do this, but I don't think it will
help anything.

I think the fix for the machine in bug 10807 is to
have a bootparam that disables mwait support,
say "idle=!mwait" and a DMI entry for that box
that invokes it to work around the BIOS bug.

thanks,
-Len
 
> Signed-off-by: Zhao Yakui <yakui.zhao@xxxxxxxxx>
> Signed-off-by: Li Shaohua <shaohua.li@xxxxxxxxx>
> 
> ---
>  arch/x86/kernel/acpi/processor.c |    5 +++++
>  1 file changed, 5 insertions(+)
> 
> Index: linux-2.6/arch/x86/kernel/acpi/processor.c
> ===================================================================
> --- linux-2.6.orig/arch/x86/kernel/acpi/processor.c
> +++ linux-2.6/arch/x86/kernel/acpi/processor.c
> @@ -43,6 +43,11 @@ static void init_intel_pdc(struct acpi_p
>  	buf[0] = ACPI_PDC_REVISION_ID;
>  	buf[1] = 1;
>  	buf[2] = ACPI_PDC_C_CAPABILITY_SMP;
> +	/*
> +	 * If mwait/monitor is unsupported, C2/C3_FFH will be disabled.
> +	 */
> +	if (!cpu_has(c, X86_FEATURE_MWAIT))
> +		buf[2] &= ~ACPI_PDC_C_C2C3_FFH;
>  
>  	/*
>  	 * The default of PDC_SMP_T_SWCOORD bit is set for intel x86 cpu so
> 
> 



--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux