[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150112211802.GE5016@pd.tnic>
Date: Mon, 12 Jan 2015 22:18:02 +0100
From: Borislav Petkov <bp@...e.de>
To: riel@...hat.com
Cc: linux-kernel@...r.kernel.org, mingo@...hat.com, hpa@...or.com,
matt.fleming@...el.com, oleg@...hat.com, pbonzini@...hat.com,
tglx@...utronix.de, luto@...capital.net
Subject: Re: [RFC PATCH 01/11] x86,fpu: document the data structures a little
On Sun, Jan 11, 2015 at 04:46:23PM -0500, riel@...hat.com wrote:
> From: Rik van Riel <riel@...hat.com>
>
> Add some documentation to data structures used for FPU context
> switching.
>
> Signed-off-by: Rik van Riel <riel@...hat.com>
> ---
> arch/x86/include/asm/processor.h | 9 +++++++--
> arch/x86/kernel/cpu/common.c | 1 +
> 2 files changed, 8 insertions(+), 2 deletions(-)
>
> diff --git a/arch/x86/include/asm/processor.h b/arch/x86/include/asm/processor.h
> index a092a0c..17bd8a0 100644
> --- a/arch/x86/include/asm/processor.h
> +++ b/arch/x86/include/asm/processor.h
> @@ -400,6 +400,11 @@ struct xsave_struct {
> /* new processor state extensions will go here */
> } __attribute__ ((packed, aligned (64)));
>
> +/*
> + * The FPU state used depends on the capabilities of the hardware; the
> + * registers used for vector instructions on newer hardware are included
> + * in the FPU state.
> + */
> union thread_xstate {
> struct i387_fsave_struct fsave;
> struct i387_fxsave_struct fxsave;
> @@ -408,8 +413,8 @@ union thread_xstate {
> };
>
> struct fpu {
> - unsigned int last_cpu;
> - unsigned int has_fpu;
> + unsigned int last_cpu; /* FPU state last loaded on this CPU */
Isn't that the last CPU which had the FPU?
> + unsigned int has_fpu; /* FPU state in current use on CPU */
I understand ->has_fpu as this thread has the FPU. See comment over
user_has_fpu().
--
Regards/Gruss,
Boris.
Sent from a fat crate under my desk. Formatting is fine.
--
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists