On Mon, May 09, 2016 at 04:31:18PM -0700, Dave Hansen wrote:
> On 05/09/2016 01:46 PM, Yu-cheng Yu wrote:
> > Add a warning in case a disabled (not existing) xstate component offset
> > is requested.
> ...
> > diff --git a/arch/x86/kernel/fpu/xstate.c b/arch/x86/kernel/fpu/xstate.c
> > index 350814c..2e6dbfe 100644
> > --- a/arch/x86/kernel/fpu/xstate.c
> > +++ b/arch/x86/kernel/fpu/xstate.c
> > @@ -756,6 +756,7 @@ void *__raw_xsave_addr(struct xregs_state *xsave, int 
> > xstate_feature_mask)
> >  {
> >     int feature_nr = fls64(xstate_feature_mask) - 1;
> >  
> > +   WARN_ON_FPU(using_compacted_format() && !xfeature_enabled(feature_nr));
> >     return (void *)xsave + xstate_comp_offsets[feature_nr];
> >  }
> 
> Why the using_compacted_format()?  Shouldn't this be an error, regardless.

If the kernel is not using compacted format, I can get a component offset, no? 

> 
> Also, what is xstate_comp_offsets[feature_nr] in this case?  Isn't it
> -1?  Should we be returning NULL along with WARN()ing?

NULL makes sense. I will change it.

Reply via email to