debuggers.hg
changeset 22734:2a18d709f6e9
Update AMD SVM feature flags
This patch updates AMD SVM feature flags (0x8000000A:EDX). It adds
several new feature bits, along with feature description. The feature
names are changed to be consistent with Linux kernel.
Signed-off-by: Wei Huang <wei.huang2@amd.com>
Signed-off-by: Keir Fraser <keir@xen.org>
This patch updates AMD SVM feature flags (0x8000000A:EDX). It adds
several new feature bits, along with feature description. The feature
names are changed to be consistent with Linux kernel.
Signed-off-by: Wei Huang <wei.huang2@amd.com>
Signed-off-by: Keir Fraser <keir@xen.org>
author | Keir Fraser <keir@xen.org> |
---|---|
date | Sat Jan 08 10:52:45 2011 +0000 (2011-01-08) |
parents | aa3242c34dda |
children | b0e8e00f5be2 |
files | xen/include/asm-x86/hvm/svm/svm.h |
line diff
1.1 --- a/xen/include/asm-x86/hvm/svm/svm.h Sat Jan 08 10:48:46 2011 +0000 1.2 +++ b/xen/include/asm-x86/hvm/svm/svm.h Sat Jan 08 10:52:45 2011 +0000 1.3 @@ -64,18 +64,22 @@ static inline void svm_vmsave(void *vmcb 1.4 1.5 extern u32 svm_feature_flags; 1.6 1.7 -#define SVM_FEATURE_NPT 0 1.8 -#define SVM_FEATURE_LBRV 1 1.9 -#define SVM_FEATURE_SVML 2 1.10 -#define SVM_FEATURE_NRIPS 3 1.11 -#define SVM_FEATURE_CLEAN 5 1.12 -#define SVM_FEATURE_PAUSEF 10 1.13 +#define SVM_FEATURE_NPT 0 /* Nested page table support */ 1.14 +#define SVM_FEATURE_LBRV 1 /* LBR virtualization support */ 1.15 +#define SVM_FEATURE_SVML 2 /* SVM locking MSR support */ 1.16 +#define SVM_FEATURE_NRIPS 3 /* Next RIP save on VMEXIT support */ 1.17 +#define SVM_FEATURE_TSCRATEMSR 4 /* TSC ratio MSR support */ 1.18 +#define SVM_FEATURE_VMCBCLEAN 5 /* VMCB clean bits support */ 1.19 +#define SVM_FEATURE_FLUSHBYASID 6 /* TLB flush by ASID support */ 1.20 +#define SVM_FEATURE_DECODEASSISTS 7 /* Decode assists support */ 1.21 +#define SVM_FEATURE_PAUSEFILTER 10 /* Pause intercept filter support */ 1.22 1.23 -#define cpu_has_svm_npt test_bit(SVM_FEATURE_NPT, &svm_feature_flags) 1.24 -#define cpu_has_svm_lbrv test_bit(SVM_FEATURE_LBRV, &svm_feature_flags) 1.25 -#define cpu_has_svm_svml test_bit(SVM_FEATURE_SVML, &svm_feature_flags) 1.26 -#define cpu_has_svm_nrips test_bit(SVM_FEATURE_NRIPS, &svm_feature_flags) 1.27 -#define cpu_has_svm_cleanbits test_bit(SVM_FEATURE_CLEAN, &svm_feature_flags) 1.28 -#define cpu_has_pause_filter test_bit(SVM_FEATURE_PAUSEF, &svm_feature_flags) 1.29 +#define cpu_has_svm_feature(f) test_bit(f, &svm_feature_flags) 1.30 +#define cpu_has_svm_npt cpu_has_svm_feature(SVM_FEATURE_NPT) 1.31 +#define cpu_has_svm_lbrv cpu_has_svm_feature(SVM_FEATURE_LBRV) 1.32 +#define cpu_has_svm_svml cpu_has_svm_feature(SVM_FEATURE_SVML) 1.33 +#define cpu_has_svm_nrips cpu_has_svm_feature(SVM_FEATURE_NRIPS) 1.34 +#define cpu_has_svm_cleanbits cpu_has_svm_feature(SVM_FEATURE_VMCBCLEAN) 1.35 +#define cpu_has_pause_filter cpu_has_svm_feature(SVM_FEATURE_PAUSEFILTER) 1.36 1.37 #endif /* __ASM_X86_HVM_SVM_H__ */