This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-devel] [PATCH] Allow dom0 to write MSR IA32_ENERGY_PERF_BIAS

To: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] [PATCH] Allow dom0 to write MSR IA32_ENERGY_PERF_BIAS
From: "Wei, Gang" <gang.wei@xxxxxxxxx>
Date: Tue, 4 Jan 2011 11:04:54 +0800
Accept-language: zh-CN, en-US
Acceptlanguage: zh-CN, en-US
Cc: Keir Fraser <Keir.Fraser@xxxxxxxxxxxxx>, "Wei, Gang" <gang.wei@xxxxxxxxx>
Delivery-date: Mon, 03 Jan 2011 19:07:51 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcurvClJM/Ic/fsSThK6mzh02b4BZQ==
Thread-topic: [PATCH] Allow dom0 to write MSR IA32_ENERGY_PERF_BIAS
Allow dom0 to write MSR IA32_ENERGY_PERF_BIAS

There is a new hardware feature, which lets system software to set Energy 
Performance Preference. This is a opaque knob in the form of 
IA32_ENERGY_PERF_BIAS MSR, which has a 4 bit Energy Performance Preference Hint.

The support for this feature is indicated by CPUID.06H.ECX.bit3. Refer to Intel 
Architectures Software Developer's Manual for more info.

Let dom0 tools to control it.

Signed-off-by: Wei Gang <gang.wei@xxxxxxxxx>

diff -r 4e108cf56d07 xen/arch/x86/traps.c
--- a/xen/arch/x86/traps.c      Mon Dec 27 08:00:09 2010 +0000
+++ b/xen/arch/x86/traps.c      Sat Jan 01 20:01:43 2011 +0800
@@ -2333,6 +2333,7 @@ static int emulate_privileged_op(struct 
                 goto fail;
         case MSR_IA32_THERM_CONTROL:
+        case MSR_IA32_ENERGY_PERF_BIAS:
             if ( boot_cpu_data.x86_vendor != X86_VENDOR_INTEL )
                 goto fail;
             if ( (v->domain->domain_id != 0) || !v->domain->is_pinned )
diff -r 4e108cf56d07 xen/include/asm-x86/msr-index.h
--- a/xen/include/asm-x86/msr-index.h   Mon Dec 27 08:00:09 2010 +0000
+++ b/xen/include/asm-x86/msr-index.h   Sat Jan 01 19:57:58 2011 +0800
@@ -330,6 +330,7 @@
 #define MSR_IA32_TSC_DEADLINE          0x000006E0
+#define MSR_IA32_ENERGY_PERF_BIAS      0x000001b0
 /* Intel Model 6 */
 #define MSR_P6_EVNTSEL0                        0x00000186

Attachment: msr-energy_perf_bias.patch
Description: msr-energy_perf_bias.patch

Xen-devel mailing list