Re: [PATCH 03/11] x86/fpu: make __raw_xsave_addr() use feature number instead of mask
From: Sebastian Andrzej Siewior
Date: Thu Oct 18 2018 - 07:19:49 EST
On 2018-10-11 19:30:07 [+0200], Christophe de Dinechin wrote:
> > diff --git a/arch/x86/kernel/fpu/xstate.c b/arch/x86/kernel/fpu/xstate.c
> > index 87a57b7642d36..38d0b5ea40425 100644
> > --- a/arch/x86/kernel/fpu/xstate.c
> > +++ b/arch/x86/kernel/fpu/xstate.c
> > @@ -811,10 +811,8 @@ void fpu__resume_cpu(void)
> > *
> > * Note: does not work for compacted buffers.
> > */
> > -void *__raw_xsave_addr(struct xregs_state *xsave, int xstate_feature_mask)
> > +void *__raw_xsave_addr(struct xregs_state *xsave, int feature_nr)
>
> It might be clearer to offer both interfaces, since both are used?
>
â
> > @@ -869,7 +868,8 @@ void *get_xsave_addr(struct xregs_state *xsave, int xstate_feature)
> > if (!(xsave->header.xfeatures & xstate_feature))
> > return NULL;
> >
> > - return __raw_xsave_addr(xsave, xstate_feature);
> > + feature_nr = fls64(xstate_feature) - 1;
> > + return __raw_xsave_addr(xsave, feature_nr);
>
> and then move that to a wrapper function that takes a mask?
made another patch this fls is gone now and everyone is using a number
instead of a mask.
Sebastian