aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@suse.com>2013-09-23 17:37:50 +0200
committerJan Beulich <jbeulich@suse.com>2013-09-23 17:37:50 +0200
commit5fc2176d9b3c5988c041fa5926fdd2da2ad560b9 (patch)
tree81556b99eadc66ff00a31ba4f21fceb1fd868b9a
parent36291997b655421e1b5d3cfe5c012464b1041ba8 (diff)
downloadxen-5fc2176d9b3c5988c041fa5926fdd2da2ad560b9.tar.gz
xen-5fc2176d9b3c5988c041fa5926fdd2da2ad560b9.tar.bz2
xen-5fc2176d9b3c5988c041fa5926fdd2da2ad560b9.zip
VMX: drop memory clobbers from vmread/vmwrite wrappers
All effects are properly being described by the asm() constraints. Signed-off-by: Jan Beulich <jbeulich@suse.com> Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com> Acked-by: Jun Nakajima <jun.nakajima@intel.com>
-rw-r--r--xen/include/asm-x86/hvm/vmx/vmx.h15
1 files changed, 6 insertions, 9 deletions
diff --git a/xen/include/asm-x86/hvm/vmx/vmx.h b/xen/include/asm-x86/hvm/vmx/vmx.h
index 0cb6a427ec..6f6b6728df 100644
--- a/xen/include/asm-x86/hvm/vmx/vmx.h
+++ b/xen/include/asm-x86/hvm/vmx/vmx.h
@@ -336,12 +336,11 @@ static inline void __vmread(unsigned long field, unsigned long *value)
UNLIKELY_END_SECTION
#ifdef HAVE_GAS_VMX
: "=rm" (*value)
- : "r" (field)
+ : "r" (field));
#else
: "=c" (*value)
- : "a" (field)
+ : "a" (field));
#endif
- : "memory");
}
static inline void __vmwrite(unsigned long field, unsigned long value)
@@ -358,11 +357,10 @@ static inline void __vmwrite(unsigned long field, unsigned long value)
UNLIKELY_END_SECTION
:
#ifdef HAVE_GAS_VMX
- : "r" (field) , "rm" (value)
+ : "r" (field) , "rm" (value));
#else
- : "a" (field) , "c" (value)
+ : "a" (field) , "c" (value));
#endif
- : "memory");
}
static inline bool_t __vmread_safe(unsigned long field, unsigned long *value)
@@ -379,12 +377,11 @@ static inline bool_t __vmread_safe(unsigned long field, unsigned long *value)
"setnbe %0"
#ifdef HAVE_GAS_VMX
: "=qm" (okay), "=rm" (*value)
- : "r" (field)
+ : "r" (field));
#else
: "=qm" (okay), "=c" (*value)
- : "a" (field)
+ : "a" (field));
#endif
- : "memory");
return okay;
}