[Intel-gfx] [PATCH] Revert "ICL HACK: Disable ACPI idle driver"

Aditya Swarup aditya.swarup at intel.com
Fri May 17 21:59:30 UTC 2019


The patch looks fine to me.
On Thu, May 16, 2019 at 10:41:56PM +0530, Anshuman Gupta wrote:
> This reverts commit 99b69db57544ec7ed427607f1a2a1858a7d43b61
> Core-for-CI:ICL_only  Disable ACPI idle driver.
> 
> This hack has been provided considering the Bug assessment
> that ACPI idle driver page fault causes below bug.
> FDO https://bugs.freedesktop.org/show_bug.cgi?id=108840
> But this bug is still reproducible after disabling ACPI idle driver.
> 
> It looks "rcu_preempt self-detected stall on CPU" causes to
> hung kworker and followed by panic resulted this bug.
> 
> Hence it make sense to revert this patch.
> 
> Cc: martin.peres at intel.com
> Cc: daniel.vetter at intel.com
> Cc: ville.syrjala at intel.com

Reviewed-by: Aditya Swarup <aditya.swarup at intel.com>

> Signed-off-by: Anshuman Gupta <anshuman.gupta at intel.com>
> ---
>  drivers/acpi/processor_driver.c | 18 +-----------------
>  1 file changed, 1 insertion(+), 17 deletions(-)
> 
> diff --git a/drivers/acpi/processor_driver.c b/drivers/acpi/processor_driver.c
> index ee842a2f..9d6aff2 100644
> --- a/drivers/acpi/processor_driver.c
> +++ b/drivers/acpi/processor_driver.c
> @@ -35,12 +35,6 @@
>  
>  #include <acpi/processor.h>
>  
> -/* Only for Core-for-CI so don't want ia64 to fail compilation.*/
> -#ifdef CONFIG_X86
> -#include <asm/cpu_device_id.h>
> -#include <asm/intel-family.h>
> -#endif
> -
>  #include "internal.h"
>  
>  #define ACPI_PROCESSOR_NOTIFY_PERFORMANCE 0x80
> @@ -64,13 +58,6 @@ static const struct acpi_device_id processor_device_ids[] = {
>  };
>  MODULE_DEVICE_TABLE(acpi, processor_device_ids);
>  
> -#define ICPU(model)	{ X86_VENDOR_INTEL, 6, model, X86_FEATURE_ANY, }
> -static const struct x86_cpu_id intel_cpu_ids[] = {
> -	ICPU(INTEL_FAM6_ICELAKE_MOBILE),	/* ICL */
> -	{}
> -};
> -MODULE_DEVICE_TABLE(x86cpu, intel_cpu_ids);
> -
>  static struct device_driver acpi_processor_driver = {
>  	.name = "processor",
>  	.bus = &cpu_subsys,
> @@ -239,7 +226,6 @@ static inline void acpi_pss_perf_exit(struct acpi_processor *pr,
>  static int __acpi_processor_start(struct acpi_device *device)
>  {
>  	struct acpi_processor *pr = acpi_driver_data(device);
> -	const struct x86_cpu_id *id;
>  	acpi_status status;
>  	int result = 0;
>  
> @@ -253,9 +239,7 @@ static int __acpi_processor_start(struct acpi_device *device)
>  	if (result && !IS_ENABLED(CONFIG_ACPI_CPU_FREQ_PSS))
>  		dev_dbg(&device->dev, "CPPC data invalid or not present\n");
>  
> -	id = x86_match_cpu(intel_cpu_ids);
> -	if (!id && (!cpuidle_get_driver() || cpuidle_get_driver() ==
> -		&acpi_idle_driver))
> +	if (!cpuidle_get_driver() || cpuidle_get_driver() == &acpi_idle_driver)
>  		acpi_processor_power_init(pr);
>  
>  	result = acpi_pss_perf_init(pr, device);
> -- 
> 2.7.4
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx


More information about the Intel-gfx mailing list