All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Daniel Sangorrin" <daniel.sangorrin@toshiba.co.jp>
To: <stable@vger.kernel.org>
Cc: "'Greg Kroah-Hartman'" <gregkh@linuxfoundation.org>,
	<ben.hutchings@codethink.co.uk>
Subject: RE: [PATCH v2 4.4 3/3] x86/fpu: Finish excising 'eagerfpu'
Date: Mon, 9 Jul 2018 16:34:57 +0900	[thread overview]
Message-ID: <003401d41757$5601f730$0205e590$@toshiba.co.jp> (raw)
In-Reply-To: <1531118410-3186-1-git-send-email-daniel.sangorrin@toshiba.co.jp>

Oops, So sorry.
I finally figured out why cc-cmd was not working.
I had "suppresscc all" on my gitconfig for another project.
I will resend the patches.

> -----Original Message-----
> From: stable-owner@vger.kernel.org <stable-owner@vger.kernel.org> On Behalf
> Of Daniel Sangorrin
> Sent: Monday, July 9, 2018 3:40 PM
> To: stable@vger.kernel.org
> Cc: greg@linuxfoundation.com; ben.hutchings@codethink.co.uk
> Subject: [PATCH v2 4.4 3/3] x86/fpu: Finish excising 'eagerfpu'
> 
> From: Andy Lutomirski <luto@kernel.org>
> 
> commit e63650840e8b053aa09ad934877e87e9941ed135 upstream
> 
> Now that eagerfpu= is gone, remove it from the docs and some
> comments.  Also sync the changes to tools/.
> 
> Signed-off-by: Andy Lutomirski <luto@kernel.org>
> Cc: Borislav Petkov <bp@alien8.de>
> Cc: Brian Gerst <brgerst@gmail.com>
> Cc: Dave Hansen <dave.hansen@linux.intel.com>
> Cc: Denys Vlasenko <dvlasenk@redhat.com>
> Cc: Fenghua Yu <fenghua.yu@intel.com>
> Cc: H. Peter Anvin <hpa@zytor.com>
> Cc: Josh Poimboeuf <jpoimboe@redhat.com>
> Cc: Linus Torvalds <torvalds@linux-foundation.org>
> Cc: Oleg Nesterov <oleg@redhat.com>
> Cc: Peter Zijlstra <peterz@infradead.org>
> Cc: Quentin Casasnovas <quentin.casasnovas@oracle.com>
> Cc: Rik van Riel <riel@redhat.com>
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Link:
> http://lkml.kernel.org/r/cf430dd4481d41280e93ac6cf0def1007a67fc8e.14767403
> 97.git.luto@kernel.org
> Signed-off-by: Ingo Molnar <mingo@kernel.org>
> Signed-off-by: Daniel Sangorrin <daniel.sangorrin@toshiba.co.jp>
> ---
> 
> This is the 3rd of 3 patches that I backported to remove fpu lazy mode
> deadcode from stable 4.4.
> Fixed a small conflict due to 'nopku' not being in 4.4.y.
> I also solved another conflict caused by not having these files in 4.4.y
> arch/x86/include/asm/cpufeatures.h
> arch/x86/mm/pkeys.c
> tools/arch/x86/include/asm/cpufeatures.h
> Instead I removed the X86_FEATURE_EAGER_FPU definition from
> arch/x86/include/asm/cpufeature.h
> 
>  Documentation/kernel-parameters.txt | 10 ++--------
>  arch/x86/include/asm/cpufeature.h   |  1 -
>  arch/x86/include/asm/fpu/types.h    | 23 -----------------------
>  3 files changed, 2 insertions(+), 32 deletions(-)
> 
> diff --git a/Documentation/kernel-parameters.txt
> b/Documentation/kernel-parameters.txt
> index 4df6bd7..e0f9b21 100644
> --- a/Documentation/kernel-parameters.txt
> +++ b/Documentation/kernel-parameters.txt
> @@ -961,12 +961,6 @@ bytes respectively. Such letter suffixes can also be entirely
> omitted.
>  			See Documentation/x86/intel_mpx.txt for more
>  			information about the feature.
> 
> -	eagerfpu=	[X86]
> -			on	enable eager fpu restore
> -			off	disable eager fpu restore
> -			auto	selects the default scheme, which automatically
> -				enables eagerfpu restore for xsaveopt.
> -
>  	module.async_probe [KNL]
>  			Enable asynchronous probe on this module.
> 
> @@ -2321,7 +2315,7 @@ bytes respectively. Such letter suffixes can also be entirely
> omitted.
>  			will be sent.
>  			The default is to send the implementation identification
>  			information.
> -
> +
>  	nfs.recover_lost_locks =
>  			[NFSv4] Attempt to recover locks that were lost due
>  			to a lease timeout on the server. Please note that
> @@ -3907,7 +3901,7 @@ bytes respectively. Such letter suffixes can also be entirely
> omitted.
>  			See also Documentation/input/joystick-parport.txt
> 
>  	udbg-immortal	[PPC] When debugging early kernel crashes that
> -			happen after console_init() and before a proper
> +			happen after console_init() and before a proper
>  			console driver takes over, this boot options might
>  			help "seeing" what's going on.
> 
> diff --git a/arch/x86/include/asm/cpufeature.h
> b/arch/x86/include/asm/cpufeature.h
> index 232621c..ac4aa86 100644
> --- a/arch/x86/include/asm/cpufeature.h
> +++ b/arch/x86/include/asm/cpufeature.h
> @@ -104,7 +104,6 @@
>  #define X86_FEATURE_EXTD_APICID	( 3*32+26) /* has extended APICID
> (8 bits) */
>  #define X86_FEATURE_AMD_DCM     ( 3*32+27) /* multi-node processor */
>  #define X86_FEATURE_APERFMPERF	( 3*32+28) /* APERFMPERF */
> -/* free, was #define X86_FEATURE_EAGER_FPU	( 3*32+29) * "eagerfpu" Non
> lazy FPU restore */
>  #define X86_FEATURE_NONSTOP_TSC_S3 ( 3*32+30) /* TSC doesn't stop in S3
> state */
> 
>  /* Intel-defined CPU features, CPUID level 0x00000001 (ecx), word 4 */
> diff --git a/arch/x86/include/asm/fpu/types.h
> b/arch/x86/include/asm/fpu/types.h
> index dcb85a9..0d81c7d 100644
> --- a/arch/x86/include/asm/fpu/types.h
> +++ b/arch/x86/include/asm/fpu/types.h
> @@ -310,29 +310,6 @@ struct fpu {
>  	 * the registers in the FPU are more recent than this state
>  	 * copy. If the task context-switches away then they get
>  	 * saved here and represent the FPU state.
> -	 *
> -	 * After context switches there may be a (short) time period
> -	 * during which the in-FPU hardware registers are unchanged
> -	 * and still perfectly match this state, if the tasks
> -	 * scheduled afterwards are not using the FPU.
> -	 *
> -	 * This is the 'lazy restore' window of optimization, which
> -	 * we track though 'fpu_fpregs_owner_ctx' and 'fpu->last_cpu'.
> -	 *
> -	 * We detect whether a subsequent task uses the FPU via setting
> -	 * CR0::TS to 1, which causes any FPU use to raise a #NM fault.
> -	 *
> -	 * During this window, if the task gets scheduled again, we
> -	 * might be able to skip having to do a restore from this
> -	 * memory buffer to the hardware registers - at the cost of
> -	 * incurring the overhead of #NM fault traps.
> -	 *
> -	 * Note that on modern CPUs that support the XSAVEOPT (or other
> -	 * optimized XSAVE instructions), we don't use #NM traps anymore,
> -	 * as the hardware can track whether FPU registers need saving
> -	 * or not. On such CPUs we activate the non-lazy ('eagerfpu')
> -	 * logic, which unconditionally saves/restores all FPU state
> -	 * across context switches. (if FPU state exists.)
>  	 */
>  	union fpregs_state		state;
>  	/*
> --
> 2.1.4
> 
> 

  reply	other threads:[~2018-07-09  7:35 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-07-09  6:15 [PATCH v2 4.4 1/3] x86/fpu: Remove use_eager_fpu() Daniel Sangorrin
2018-07-09  6:31 ` [PATCH v2 4.4 2/3] x86/fpu: Remove struct fpu::counter Daniel Sangorrin
2018-07-09  6:40   ` [PATCH v2 4.4 3/3] x86/fpu: Finish excising 'eagerfpu' Daniel Sangorrin
2018-07-09  7:34     ` Daniel Sangorrin [this message]
2018-07-10 14:10       ` 'Greg Kroah-Hartman'
2018-07-11  0:59         ` Daniel Sangorrin
2018-07-11 11:07           ` 'Greg Kroah-Hartman'
2018-07-12  0:38             ` Daniel Sangorrin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='003401d41757$5601f730$0205e590$@toshiba.co.jp' \
    --to=daniel.sangorrin@toshiba.co.jp \
    --cc=ben.hutchings@codethink.co.uk \
    --cc=gregkh@linuxfoundation.org \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.