KVM: expose latest Intel cpu new features (BMI1/BMI2/FMA/AVX2) to guest
authorLiu, Jinsong <jinsong.liu@intel.com>
Mon, 28 Nov 2011 11:55:19 +0000 (03:55 -0800)
committerAvi Kivity <avi@redhat.com>
Tue, 27 Dec 2011 09:22:01 +0000 (11:22 +0200)
commitfb215366b3c7320ac25dca766a0152df16534932
treeaf89c80a04274cc52d488728f7cc1eef53deff5a
parent00b27a3efb116062ca5a276ad5cb01ea1b80b5f6
KVM: expose latest Intel cpu new features (BMI1/BMI2/FMA/AVX2) to guest

Intel latest cpu add 6 new features, refer http://software.intel.com/file/36945
The new feature cpuid listed as below:

1. FMA CPUID.EAX=01H:ECX.FMA[bit 12]
2. MOVBE CPUID.EAX=01H:ECX.MOVBE[bit 22]
3. BMI1 CPUID.EAX=07H,ECX=0H:EBX.BMI1[bit 3]
4. AVX2 CPUID.EAX=07H,ECX=0H:EBX.AVX2[bit 5]
5. BMI2 CPUID.EAX=07H,ECX=0H:EBX.BMI2[bit 8]
6. LZCNT CPUID.EAX=80000001H:ECX.LZCNT[bit 5]

This patch expose these features to guest.
Among them, FMA/MOVBE/LZCNT has already been defined, MOVBE/LZCNT has
already been exposed.

This patch defines BMI1/AVX2/BMI2, and exposes FMA/BMI1/AVX2/BMI2 to guest.

Signed-off-by: Liu, Jinsong <jinsong.liu@intel.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
arch/x86/include/asm/cpufeature.h
arch/x86/kvm/cpuid.c