From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dan Magenheimer Subject: [PATCH] pvcpuid: mask TSC invariant bit for various circumstances Date: Mon, 26 Oct 2009 16:12:37 -0700 (PDT) Message-ID: <8a95a56e-c387-46c7-a7d2-5a84bdfd1485@default> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="__12565987797956376abhmt014.oracle.com" Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: "Xen-Devel (E-mail)" List-Id: xen-devel@lists.xenproject.org --__12565987797956376abhmt014.oracle.com Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable pvcpuid: mask TSC invariant bit for PV domains if migration is not disabled and TSC is not emulated (Need similar patch for HVM domain) Signed-off-by: Dan Magenheimer diff -r d7d7f978d704 xen/arch/x86/domain.c --- a/xen/arch/x86/domain.c=09Tue Oct 20 14:36:01 2009 +0100 +++ b/xen/arch/x86/domain.c=09Mon Oct 26 16:13:43 2009 -0600 @@ -51,6 +51,7 @@ #include #include #include +#include #ifdef CONFIG_COMPAT #include #endif @@ -2044,6 +2045,13 @@ void domain_cpuid( *ebx =3D cpuid->ebx; *ecx =3D cpuid->ecx; *edx =3D cpuid->edx; + if ( input =3D=3D XEN_CPUID_APM_FUNCTION ) + { + /* mask TSC invariant bit if migration is not disabled + and TSC is not emulated */ + if ( !d->disable_migrate && !d->arch.vtsc ) + *edx &=3D ~XEN_CPUID_APM_EDX_TSC_INVARIANT; + } return; } } diff -r d7d7f978d704 xen/include/public/arch-x86/cpuid.h --- a/xen/include/public/arch-x86/cpuid.h=09Tue Oct 20 14:36:01 2009 +0100 +++ b/xen/include/public/arch-x86/cpuid.h=09Mon Oct 26 16:13:43 2009 -0600 @@ -65,4 +65,8 @@ #define _XEN_CPUID_FEAT1_MMU_PT_UPDATE_PRESERVE_AD 0 #define XEN_CPUID_FEAT1_MMU_PT_UPDATE_PRESERVE_AD (1u<<0) =20 +/* Does the host support TSC Invariance (in Advanced Power Management)? */ +#define XEN_CPUID_APM_FUNCTION 0x80000007 +#define XEN_CPUID_APM_EDX_TSC_INVARIANT (1u<<8) + #endif /* __XEN_PUBLIC_ARCH_X86_CPUID_H__ */ --__12565987797956376abhmt014.oracle.com Content-Type: application/octet-stream; name="cpuid-invariant.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="cpuid-invariant.patch" ZGlmZiAtciBkN2Q3Zjk3OGQ3MDQgeGVuL2FyY2gveDg2L2RvbWFpbi5jCi0tLSBhL3hlbi9hcmNo L3g4Ni9kb21haW4uYwlUdWUgT2N0IDIwIDE0OjM2OjAxIDIwMDkgKzAxMDAKKysrIGIveGVuL2Fy Y2gveDg2L2RvbWFpbi5jCU1vbiBPY3QgMjYgMTY6MTM6NDMgMjAwOSAtMDYwMApAQCAtNTEsNiAr NTEsNyBAQAogI2luY2x1ZGUgPGFzbS9ubWkuaD4KICNpbmNsdWRlIDx4ZW4vbnVtYS5oPgogI2lu Y2x1ZGUgPHhlbi9pb21tdS5oPgorI2luY2x1ZGUgPHB1YmxpYy9hcmNoLXg4Ni9jcHVpZC5oPgog I2lmZGVmIENPTkZJR19DT01QQVQKICNpbmNsdWRlIDxjb21wYXQvdmNwdS5oPgogI2VuZGlmCkBA IC0yMDQ0LDYgKzIwNDUsMTMgQEAgdm9pZCBkb21haW5fY3B1aWQoCiAgICAgICAgICAgICAqZWJ4 ID0gY3B1aWQtPmVieDsKICAgICAgICAgICAgICplY3ggPSBjcHVpZC0+ZWN4OwogICAgICAgICAg ICAgKmVkeCA9IGNwdWlkLT5lZHg7CisgICAgICAgICAgICBpZiAoIGlucHV0ID09IFhFTl9DUFVJ RF9BUE1fRlVOQ1RJT04gKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIC8qIG1hc2sg VFNDIGludmFyaWFudCBiaXQgaWYgbWlncmF0aW9uIGlzIG5vdCBkaXNhYmxlZAorICAgICAgICAg ICAgICAgICAgIGFuZCBUU0MgaXMgbm90IGVtdWxhdGVkICovCisgICAgICAgICAgICAgICAgaWYg KCAhZC0+ZGlzYWJsZV9taWdyYXRlICYmICFkLT5hcmNoLnZ0c2MgKQorICAgICAgICAgICAgICAg ICAgICAqZWR4ICY9IH5YRU5fQ1BVSURfQVBNX0VEWF9UU0NfSU5WQVJJQU5UOworICAgICAgICAg ICAgfQogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CiAgICAgfQpkaWZmIC1yIGQ3ZDdm OTc4ZDcwNCB4ZW4vaW5jbHVkZS9wdWJsaWMvYXJjaC14ODYvY3B1aWQuaAotLS0gYS94ZW4vaW5j bHVkZS9wdWJsaWMvYXJjaC14ODYvY3B1aWQuaAlUdWUgT2N0IDIwIDE0OjM2OjAxIDIwMDkgKzAx MDAKKysrIGIveGVuL2luY2x1ZGUvcHVibGljL2FyY2gteDg2L2NwdWlkLmgJTW9uIE9jdCAyNiAx NjoxMzo0MyAyMDA5IC0wNjAwCkBAIC02NSw0ICs2NSw4IEBACiAjZGVmaW5lIF9YRU5fQ1BVSURf RkVBVDFfTU1VX1BUX1VQREFURV9QUkVTRVJWRV9BRCAwCiAjZGVmaW5lIFhFTl9DUFVJRF9GRUFU MV9NTVVfUFRfVVBEQVRFX1BSRVNFUlZFX0FEICAoMXU8PDApCiAKKy8qIERvZXMgdGhlIGhvc3Qg c3VwcG9ydCBUU0MgSW52YXJpYW5jZSAoaW4gQWR2YW5jZWQgUG93ZXIgTWFuYWdlbWVudCk/ICov CisjZGVmaW5lIFhFTl9DUFVJRF9BUE1fRlVOQ1RJT04gICAgICAgICAgMHg4MDAwMDAwNworI2Rl ZmluZSBYRU5fQ1BVSURfQVBNX0VEWF9UU0NfSU5WQVJJQU5UICgxdTw8OCkKKwogI2VuZGlmIC8q IF9fWEVOX1BVQkxJQ19BUkNIX1g4Nl9DUFVJRF9IX18gKi8K --__12565987797956376abhmt014.oracle.com Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel --__12565987797956376abhmt014.oracle.com--