mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 18:50:05 +01:00
x86: Enable THERM_CONTROL_MSR write for dom0 even when cpufreq=xen
Signed-off-by: Wei Gang <gang.wei@intel.com> Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
This commit is contained in:
1 parent
ca1c7b25a6
commit
f78e2193b6
1 file changed
+8
-1
@@ -2187,7 +2187,6 @@ static int emulate_privileged_op(struct cpu_user_regs *regs)
|
||||
case MSR_IA32_MPERF:
|
||||
case MSR_IA32_APERF:
|
||||
case MSR_IA32_PERF_CTL:
|
||||
case MSR_IA32_THERM_CONTROL:
|
||||
if ( boot_cpu_data.x86_vendor != X86_VENDOR_INTEL )
|
||||
goto fail;
|
||||
if ( !is_cpufreq_controller(v->domain) )
|
||||
@@ -2195,6 +2194,14 @@ static int emulate_privileged_op(struct cpu_user_regs *regs)
|
||||
if ( wrmsr_safe(regs->ecx, eax, edx) != 0 )
|
||||
goto fail;
|
||||
break;
|
||||
case MSR_IA32_THERM_CONTROL:
|
||||
if ( boot_cpu_data.x86_vendor != X86_VENDOR_INTEL )
|
||||
goto fail;
|
||||
if ( (v->domain->domain_id != 0) || !v->domain->is_pinned )
|
||||
break;
|
||||
if ( wrmsr_safe(regs->ecx, eax, edx) != 0 )
|
||||
goto fail;
|
||||
break;
|
||||
default:
|
||||
if ( wrmsr_hypervisor_regs(regs->ecx, eax, edx) )
|
||||
break;
|
||||
|
||||