All of lore.kernel.org
 help / color / mirror / Atom feed
From: <mhklkml@zohomail.com>
To: "'Rong Zhang'" <i@rong.moe>, "'Huang Rui'" <ray.huang@amd.com>,
	"'Mario Limonciello'" <mario.limonciello@amd.com>,
	"'Perry Yuan'" <perry.yuan@amd.com>,
	"'K Prateek Nayak'" <kprateek.nayak@amd.com>,
	"'Rafael J. Wysocki'" <rafael@kernel.org>,
	"'Viresh Kumar'" <viresh.kumar@linaro.org>,
	"'Borislav Petkov'" <bp@alien8.de>,
	"'Jason Andryuk'" <jason.andryuk@amd.com>
Cc: "'Michael Kelley'" <mhklinux@outlook.com>,
	<linux-pm@vger.kernel.org>, <linux-kernel@vger.kernel.org>
Subject: RE: [PATCH v2] cpufreq/amd-pstate: Bail out early if !X86_FEATURE_HW_PSTATE
Date: Sun, 19 Jul 2026 08:03:51 -0700	[thread overview]
Message-ID: <001601dd178f$d032df60$70989e20$@zohomail.com> (raw)
In-Reply-To: <20260718-amd-pstate-vm-v2-1-6ed5f3b2c89e@rong.moe>

From: Rong Zhang <i@rong.moe> Sent: Saturday, July 18, 2026 8:16 AM
> 
> When booting a VM that simulates or passes-through a relatively new CPU
> model, these warning messages are printed to kmsg:
> 
>     amd_pstate: The CPPC feature is supported but currently disabled by the BIOS.
>     Please enable it if your BIOS has the CPPC option.
>     amd_pstate: the _CPC object is not present in SBIOS or ACPI disabled
> 
> Technically the check is not wrong and acts as a safetynet that prevents
> the driver from being registered incorrectly, but the warning messages
> are noisy and incorrect, as the CPPC feature is neither supported in a
> VM nor disabled by the VM's BIOS.
> 
> The CPPC feature is disabled by the hypervisor as it makes no sense to
> expose them to guests. It creates a paradox that the same kernel both
> disables CPPC as a hypervisor (KVM) and warns about it being disabled
> as a guest.
> 
> X86_FEATURE_HW_PSTATE indicates if the platform supports frequency
> scaling or not. It is disabled on virtualized platforms (namely, KVM and
> Hyper-V have been reported to do so) and is always set on physical
> platforms that support frequency scaling.
> 
> Check for X86_FEATURE_HW_PSTATE as a prerequisite and bail out early if
> it's unsupported.
> 
> Fixes: cb817ec6673b ("cpufreq: amd-pstate: show CPPC debug message if CPPC is not supported")
> Signed-off-by: Rong Zhang <i@rong.moe>

Built a kernel with this patch against linux-next20260717. Tested
on guests in the Azure public cloud, which are running on Hyper-V.
Tested where the underlying processor is a Zen2, and also on a
Zen4. The warning messages are gone as expected.

Reviewed-by: Michael Kelley <mhklinux@outlook.com>
Tested-by: Michael Kelley <mhklinux@outlook.com> 

> ---
> Changes in v2:
> - Check for X86_FEATURE_HW_PSTATE instead of X86_FEATURE_HYPERVISOR
>   (thanks K Prateek Nayak)
> - Remove the check against Xen dom0, as it doesn't need the amd-pstate
>   driver (thanks Jason Andryuk)
> - Reword comments and the commit message
> - Remove Gautham R. Shenoy from the To list due to email bounces
> - Link to v1: https://patch.msgid.link/20260716-amd-pstate-vm-v1-1-
> 2ac97d3cf6e7@rong.moe
> ---
>  drivers/cpufreq/amd-pstate.c | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/drivers/cpufreq/amd-pstate.c b/drivers/cpufreq/amd-pstate.c
> index a74a4cf99d22..877b4b30ecd0 100644
> --- a/drivers/cpufreq/amd-pstate.c
> +++ b/drivers/cpufreq/amd-pstate.c
> @@ -2228,6 +2228,13 @@ static int __init amd_pstate_init(void)
>  	if (boot_cpu_data.x86_vendor != X86_VENDOR_AMD)
>  		return -ENODEV;
> 
> +	/*
> +	 * Do not continue on the following checks and emit bogus warning
> +	 * messages if the platform doesn't support frequency scaling at all.
> +	 */
> +	if (!cpu_feature_enabled(X86_FEATURE_HW_PSTATE))
> +		return -ENODEV;
> +
>  	/* show debug message only if CPPC is not supported */
>  	if (!amd_cppc_supported())
>  		return -EOPNOTSUPP;
> 
> ---
> base-commit: 94515f3a7d4256a5062176b7d6ed0471938cd51a
> change-id: 1cc24037-amd-pstate-vm-d6ab4c959bd3
> 
> Thanks,
> Rong
> 



  reply	other threads:[~2026-07-19 15:04 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-18 15:15 [PATCH v2] cpufreq/amd-pstate: Bail out early if !X86_FEATURE_HW_PSTATE Rong Zhang
2026-07-19 15:03 ` mhklkml [this message]
2026-07-20  5:14 ` K Prateek Nayak
2026-07-20 15:37   ` Mario Limonciello

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='001601dd178f$d032df60$70989e20$@zohomail.com' \
    --to=mhklkml@zohomail.com \
    --cc=bp@alien8.de \
    --cc=i@rong.moe \
    --cc=jason.andryuk@amd.com \
    --cc=kprateek.nayak@amd.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=mario.limonciello@amd.com \
    --cc=mhklinux@outlook.com \
    --cc=perry.yuan@amd.com \
    --cc=rafael@kernel.org \
    --cc=ray.huang@amd.com \
    --cc=viresh.kumar@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.