diff options
author | Wei Gang <gang.wei@intel.com> | 2011-02-09 08:58:11 +0000 |
---|---|---|
committer | Wei Gang <gang.wei@intel.com> | 2011-02-09 08:58:11 +0000 |
commit | aa479ce9d1295d153db641ead0d174d9ef9fffa8 (patch) | |
tree | 54d43136ffd9fc778572a9e4701ebdca0037bf4a | |
parent | 76bb33a03ee333e57b91620132df7a61c31c5097 (diff) | |
download | xen-aa479ce9d1295d153db641ead0d174d9ef9fffa8.tar.gz xen-aa479ce9d1295d153db641ead0d174d9ef9fffa8.tar.bz2 xen-aa479ce9d1295d153db641ead0d174d9ef9fffa8.zip |
x86: reduce magic number usage in XSAVE code
Signed-off-by: Wei Gang <gang.wei@intel.com>
-rw-r--r-- | xen/arch/x86/hvm/hvm.c | 2 | ||||
-rw-r--r-- | xen/arch/x86/i387.c | 1 | ||||
-rw-r--r-- | xen/include/asm-x86/i387.h | 3 |
3 files changed, 3 insertions, 3 deletions
diff --git a/xen/arch/x86/hvm/hvm.c b/xen/arch/x86/hvm/hvm.c index 51cde88e24..ec71dfcef3 100644 --- a/xen/arch/x86/hvm/hvm.c +++ b/xen/arch/x86/hvm/hvm.c @@ -2223,7 +2223,7 @@ void hvm_cpuid(unsigned int input, unsigned int *eax, unsigned int *ebx, if ( count == 0 && v->arch.xcr0 ) { /* reset EBX to default value first */ - *ebx = 576; + *ebx = XSAVE_AREA_MIN_SIZE; for ( sub_leaf = 2; sub_leaf < 64; sub_leaf++ ) { if ( !(v->arch.xcr0 & (1ULL << sub_leaf)) ) diff --git a/xen/arch/x86/i387.c b/xen/arch/x86/i387.c index 0b052349e3..5c96da0456 100644 --- a/xen/arch/x86/i387.c +++ b/xen/arch/x86/i387.c @@ -221,7 +221,6 @@ static void restore_fpu(struct vcpu *v) } #define XSTATE_CPUID 0xd -#define XSAVE_AREA_MIN_SIZE (512 + 64) /* FP/SSE + XSAVE.HEADER */ /* * Maximum size (in byte) of the XSAVE/XRSTOR save area required by all diff --git a/xen/include/asm-x86/i387.h b/xen/include/asm-x86/i387.h index 9be8206b82..2cbbbc40e9 100644 --- a/xen/include/asm-x86/i387.h +++ b/xen/include/asm-x86/i387.h @@ -21,13 +21,14 @@ void xsave_init(void); int xsave_alloc_save_area(struct vcpu *v); void xsave_free_save_area(struct vcpu *v); +#define XSAVE_AREA_MIN_SIZE (512 + 64) /* FP/SSE + XSAVE.HEADER */ #define XSTATE_FP (1ULL << 0) #define XSTATE_SSE (1ULL << 1) #define XSTATE_YMM (1ULL << 2) #define XSTATE_LWP (1ULL << 62) /* AMD lightweight profiling */ #define XSTATE_FP_SSE (XSTATE_FP | XSTATE_SSE) #define XCNTXT_MASK (XSTATE_FP | XSTATE_SSE | XSTATE_YMM | XSTATE_LWP) -#define XSTATE_YMM_OFFSET (512 + 64) +#define XSTATE_YMM_OFFSET XSAVE_AREA_MIN_SIZE #define XSTATE_YMM_SIZE 256 #define XSAVEOPT (1 << 0) |