lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <ZmHHGLbWbwIzel0z@BLRRASHENOY1.amd.com>
Date: Thu, 6 Jun 2024 19:56:32 +0530
From: "Gautham R. Shenoy" <gautham.shenoy@....com>
To: Perry Yuan <perry.yuan@....com>
Cc: Mario.Limonciello@....com, Ray.Huang@....com, Borislav.Petkov@....com,
	rafael.j.wysocki@...el.com, Alexander.Deucher@....com,
	Xinmei.Huang@....com, Xiaojian.Du@....com, Li.Meng@....com,
	linux-pm@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 03/10] cpufreq: amd-pstate: show CPPC debug message if
 CPPC is not supported

On Mon, May 13, 2024 at 10:07:21AM +0800, Perry Yuan wrote:
> Add CPU ID checking in case the driver attempt to load on systems where
> CPPC functionality is unavailable. And the warning message will not
> be shown if CPPC is not supported.
> 
> It will also print debug message if the CPU has no CPPC support that
> helps to debug the driver loading failure issue.
> 
> Reported-by: Paul Menzel <pmenzel@...gen.mpg.de>
> Closes: https://lore.kernel.org/linux-pm/CYYPR12MB8655D32EA18574C9497E888A9C122@CYYPR12MB8655.namprd12.prod.outlook.com/T/#t
> Signed-off-by: Perry Yuan <perry.yuan@....com>

Reviewed-by: Gautham R. Shenoy <gautham.shenoy@....com>

> ---
>  drivers/cpufreq/amd-pstate.c | 19 +++++++++++++++++++
>  1 file changed, 19 insertions(+)
> 
> diff --git a/drivers/cpufreq/amd-pstate.c b/drivers/cpufreq/amd-pstate.c
> index 9ca22e94f3f3..3109b46fb02e 100644
> --- a/drivers/cpufreq/amd-pstate.c
> +++ b/drivers/cpufreq/amd-pstate.c
> @@ -1701,6 +1701,20 @@ static int __init amd_pstate_set_driver(int mode_idx)
>  	return -EINVAL;
>  }
>  
> +/**
> + * CPPC function is not supported for family ID 17H with model_ID ranging from 0x10 to 0x2F.
> + * show the debug message that helps to check if the CPU has CPPC support for loading issue.
> + */
> +static bool amd_cppc_supported(void)
> +{
> +	if ((boot_cpu_data.x86 == 0x17) && (boot_cpu_data.x86_model < 0x30)) {
> +		pr_debug_once("CPPC feature is not supported by the processor\n");
> +		return false;
> +	}
> +
> +	return true;
> +}
> +
>  static int __init amd_pstate_init(void)
>  {
>  	struct device *dev_root;
> @@ -1709,6 +1723,11 @@ static int __init amd_pstate_init(void)
>  	if (boot_cpu_data.x86_vendor != X86_VENDOR_AMD)
>  		return -ENODEV;
>  
> +	/* show debug message only if CPPC is not supported */
> +	if (!amd_cppc_supported())
> +		return -EOPNOTSUPP;
> +
> +	/* show warning message when BIOS broken or ACPI disabled */
>  	if (!acpi_cpc_valid()) {
>  		pr_warn_once("the _CPC object is not present in SBIOS or ACPI disabled\n");
>  		return -ENODEV;
> -- 
> 2.34.1
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ