• Fenghua Yu's avatar
    x86/xsaves: Detect xsaves/xrstors feature · 6229ad27
    Fenghua Yu authored
    Detect the xsaveopt, xsavec, xgetbv, and xsaves features in processor extended
    state enumberation sub-leaf (eax=0x0d, ecx=1):
    Bit 00: XSAVEOPT is available
    Bit 01: Supports XSAVEC and the compacted form of XRSTOR if set
    Bit 02: Supports XGETBV with ECX = 1 if set
    Bit 03: Supports XSAVES/XRSTORS and IA32_XSS if set
    
    The above features are defined in the new word 10 in cpu features.
    
    The IA32_XSS MSR (index DA0H) contains a state-component bitmap that specifies
    the state components that software has enabled xsaves and xrstors to manage.
    If the bit corresponding to a state component is clear in XCR0 | IA32_XSS,
    xsaves and xrstors will not operate on that state component, regardless of
    the value of the instruction mask.
    Signed-off-by: default avatarFenghua Yu <fenghua.yu@intel.com>
    Link: http://lkml.kernel.org/r/1401387164-43416-3-git-send-email-fenghua.yu@intel.comSigned-off-by: default avatarH. Peter Anvin <hpa@linux.intel.com>
    6229ad27
cpufeature.h 24.9 KB