aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorOlivier Certner <olce@FreeBSD.org>2026-06-26 14:03:51 +0000
committerOlivier Certner <olce@FreeBSD.org>2026-06-26 21:36:44 +0000
commit8ea6d9f33ee3bb37b381d547517ae612ba1640db (patch)
tree88884ffe72d860a8739ebd075602e489391a8174 /sys
parent9320b99017d598cb7295a1bf21f227aaaefcf9df (diff)
Diffstat (limited to 'sys')
-rw-r--r--sys/x86/cpufreq/hwpstate_intel.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/sys/x86/cpufreq/hwpstate_intel.c b/sys/x86/cpufreq/hwpstate_intel.c
index 71f490a00bdc..b02d212653d3 100644
--- a/sys/x86/cpufreq/hwpstate_intel.c
+++ b/sys/x86/cpufreq/hwpstate_intel.c
@@ -157,18 +157,26 @@ static void
get_cppc_regs_cb(void *args)
{
struct get_cppc_regs_data *const data = args;
+ int error;
data->res = 0;
- if (rdmsr_safe(MSR_IA32_PM_ENABLE, &data->enabled))
+ error = rdmsr_safe(MSR_IA32_PM_ENABLE, &data->enabled);
+ if (error != 0)
data->res |= HWP_ERROR_CPPC_ENABLE;
- if (rdmsr_safe(MSR_IA32_HWP_CAPABILITIES, &data->caps))
+
+ error = rdmsr_safe(MSR_IA32_HWP_CAPABILITIES, &data->caps);
+ if (error != 0)
data->res |= HWP_ERROR_CPPC_CAPS;
- if (rdmsr_safe(MSR_IA32_HWP_REQUEST, &data->request))
+
+ error = rdmsr_safe(MSR_IA32_HWP_REQUEST, &data->request);
+ if (error != 0)
data->res |= HWP_ERROR_CPPC_REQUEST;
if (data->sc->hwp_pkg_ctrl) {
- if (rdmsr_safe(MSR_IA32_HWP_REQUEST_PKG, &data->request_pkg))
+ error = rdmsr_safe(MSR_IA32_HWP_REQUEST_PKG,
+ &data->request_pkg);
+ if (error != 0)
data->res |= HWP_ERROR_CPPC_REQUEST_PKG;
}
}