Define kernel API to get address of each state in xsave area
authorFenghua Yu <fenghua.yu@intel.com>
Thu, 29 May 2014 18:12:44 +0000 (11:12 -0700)
committerH. Peter Anvin <hpa@linux.intel.com>
Thu, 29 May 2014 21:33:09 +0000 (14:33 -0700)
commit7496d6458fe3219d63848ce4a9afbd86245cab22
treee2f8a6a442d153b0708893aedc893469f6a0262d
parent7e7ce87f6ad4e1730364e5e76628b43c5759b700
Define kernel API to get address of each state in xsave area

In standard form, each state is saved in the xsave area in fixed offset.
But in compacted form, offset of each saved state only can be calculated during
run time because some xstates may not be enabled and saved.

We define kernel API get_xsave_addr() returns address of a given state saved in a xsave area.

It can be called in kernel to get address of each xstate in xsave area in
either standard format or compacted format.

It's useful when kernel wants to directly access each state in xsave area.

Signed-off-by: Fenghua Yu <fenghua.yu@intel.com>
Link: http://lkml.kernel.org/r/1401387164-43416-17-git-send-email-fenghua.yu@intel.com
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
arch/x86/include/asm/xsave.h
arch/x86/kernel/process.c
arch/x86/kernel/xsave.c