summaryrefslogtreecommitdiffstats
path: root/cpufreq-intel-pstate-validate-msrs.patch
diff options
context:
space:
mode:
authorJustin M. Forbes <jforbes@redhat.com>2013-04-01 11:15:57 -0500
committerJustin M. Forbes <jforbes@redhat.com>2013-04-01 11:15:57 -0500
commit6e429107c2fa5b88eabcfda9db729eea93095534 (patch)
tree522d15ad107d1740cc744e545ee6413a7956e2c8 /cpufreq-intel-pstate-validate-msrs.patch
parent831cb39c244ee79e36eae1a98dbc96e1a53f7513 (diff)
downloadkernel-6e429107c2fa5b88eabcfda9db729eea93095534.tar.gz
kernel-6e429107c2fa5b88eabcfda9db729eea93095534.tar.xz
kernel-6e429107c2fa5b88eabcfda9db729eea93095534.zip
Linux v3.9-rc5
Diffstat (limited to 'cpufreq-intel-pstate-validate-msrs.patch')
-rw-r--r--cpufreq-intel-pstate-validate-msrs.patch56
1 files changed, 0 insertions, 56 deletions
diff --git a/cpufreq-intel-pstate-validate-msrs.patch b/cpufreq-intel-pstate-validate-msrs.patch
deleted file mode 100644
index 0a790a0b6..000000000
--- a/cpufreq-intel-pstate-validate-msrs.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-commit 866111646f2c5d4c6c25e2bb97f5c61c3992defb
-Author: Dirk Brandewie <dirk.brandewie@gmail.com>
-Date: Mon Mar 18 16:55:02 2013 -0700
-
- cpufreq/intel_pstate: Add function to check that all MSR's are valid
-
- Some VMs seem to try to implement some MSRs but not all the registers
- the driver needs. Check to make sure all the MSR that we need are
- available. If any of the required MSRs are not available refuse to
- load.
-
- Signed-off-by: Dirk Brandewie <dirk.brandewie@gmail.com>
-
---- linux-3.9.0-0.rc3.git0.2.fc19.x86_64/drivers/cpufreq/intel_pstate.c~ 2013-03-19 14:54:33.489581718 -0400
-+++ linux-3.9.0-0.rc3.git0.2.fc19.x86_64/drivers/cpufreq/intel_pstate.c 2013-03-19 14:55:09.667523730 -0400
-@@ -752,6 +752,30 @@ static struct cpufreq_driver intel_pstat
-
- static int __initdata no_load;
-
-+static int intel_pstate_msrs_not_valid(void)
-+{
-+ /* Check that all the msr's we are using are valid. */
-+ u64 aperf, mperf, tmp;
-+
-+ rdmsrl(MSR_IA32_APERF, aperf);
-+ rdmsrl(MSR_IA32_MPERF, mperf);
-+
-+ if (!intel_pstate_min_pstate() ||
-+ !intel_pstate_max_pstate() ||
-+ !intel_pstate_turbo_pstate())
-+ return -ENODEV;
-+
-+ rdmsrl(MSR_IA32_APERF, tmp);
-+ if (!(tmp - aperf))
-+ return -ENODEV;
-+
-+ rdmsrl(MSR_IA32_MPERF, tmp);
-+ if (!(tmp - mperf))
-+ return -ENODEV;
-+
-+ return 0;
-+}
-+
- static int __init intel_pstate_init(void)
- {
- int cpu, rc = 0;
-@@ -764,6 +788,9 @@ static int __init intel_pstate_init(void
- if (!id)
- return -ENODEV;
-
-+ if (intel_pstate_msrs_not_valid())
-+ return -ENODEV;
-+
- pr_info("Intel P-state driver initializing.\n");
-
- all_cpu_data = vmalloc(sizeof(void *) * num_possible_cpus());