RE: [Qemu-devel] [PATCH v2 3/3] X86, mpx: Intel MPX xstate featuredefinition

From: Liu, Jinsong
Date: Fri Dec 06 2013 - 15:06:06 EST


Paolo Bonzini wrote:
> Il 07/12/2013 01:20, Qiaowei Ren ha scritto:
>> This patch defines xstate feature and extends struct xsave_hdr_struct
>> to support Intel MPX.
>>
>> Signed-off-by: Qiaowei Ren <qiaowei.ren@xxxxxxxxx>
>> Signed-off-by: Xudong Hao <xudong.hao@xxxxxxxxx>
>> Signed-off-by: Liu Jinsong <jinsong.liu@xxxxxxxxx>
>> ---
>> arch/x86/include/asm/processor.h | 12 ++++++++++++
>> arch/x86/include/asm/xsave.h | 5 ++++-
>> 2 files changed, 16 insertions(+), 1 deletions(-)
>>
>> diff --git a/arch/x86/include/asm/processor.h
>> b/arch/x86/include/asm/processor.h index 987c75e..2fe2e75 100644 ---
>> a/arch/x86/include/asm/processor.h +++
>> b/arch/x86/include/asm/processor.h @@ -370,6 +370,15 @@ struct
>> ymmh_struct { u32 ymmh_space[64];
>> };
>>
>> +struct bndregs_struct {
>> + u64 bndregs[8];
>> +} __packed;
>> +
>> +struct bndcsr_struct {
>> + u64 cfg_reg_u;
>> + u64 status_reg;
>> +} __packed;
>> +
>> struct xsave_hdr_struct {
>> u64 xstate_bv;
>> u64 reserved1[2];
>> @@ -380,6 +389,9 @@ struct xsave_struct {
>> struct i387_fxsave_struct i387;
>> struct xsave_hdr_struct xsave_hdr;
>> struct ymmh_struct ymmh;
>> + u8 lwp_area[128];
>
> Sorry for the back-and-forth, but I think this and the removal of
> XSTATE_FLEXIBLE (perhaps XSTATE_LAZY?) makes your v2 worse than v1.
>
> Since Peter already said the same, please undo these changes.
>
> Also, how is XSTATE_EAGER used? Should MPX be disabled when xsaveopt
> is disabled on the kernel command line? (Liu, how would this affect
> the KVM patches, too?)
>
> Paolo

Currently seems no, and if needed we can add a new patch at kvm side accordingly when native mpx patches checked in.

Jinsong

>
>> +#define XSTATE_EAGER (XSTATE_BNDREGS | XSTATE_BNDCSR) /*
>> * These are the features that the OS can handle currently. */
>> -#define XCNTXT_MASK (XSTATE_FP | XSTATE_SSE | XSTATE_YMM)
>> +#define XCNTXT_MASK (XSTATE_FP | XSTATE_SSE | XSTATE_YMM |
>> XSTATE_EAGER)
>>
>> #ifdef CONFIG_X86_64
>> #define REX_PREFIX "0x48, "

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/