• Fenghua Yu's avatar
    x86/xsaves: Change compacted format xsave area header · 0b29643a
    Fenghua Yu authored
    The XSAVE area header is changed to support both compacted format and
    standard format of xsave area.
    
    The XSAVE header of an xsave area comprises the 64 bytes starting at offset
    512 from the area base address:
    
    - Bytes 7:0 of the xsave header is a state-component bitmap called
      xstate_bv. It identifies the state components in the xsave area.
    
    - Bytes 15:8 of the xsave header is a state-component bitmap called
      xcomp_bv. It is used as follows:
      - xcomp_bv[63] indicates the format of the extended region of
        the xsave area. If it is clear, the standard format is used.
        If it is set, the compacted format is used.
      - xcomp_bv[62:0] indicate which features (starting at feature 2)
        have space allocated for them in the compacted format.
    
    - Bytes 63:16 of the xsave header are reserved.
    Signed-off-by: default avatarFenghua Yu <fenghua.yu@intel.com>
    Link: http://lkml.kernel.org/r/1401387164-43416-6-git-send-email-fenghua.yu@intel.comSigned-off-by: default avatarH. Peter Anvin <hpa@linux.intel.com>
    0b29643a
processor.h 23.8 KB