linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] arm64: move --fix-cortex-a53-843419 linker test to Kconfig
@ 2021-03-24  7:11 Masahiro Yamada
  2021-03-24 16:46 ` Will Deacon
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Masahiro Yamada @ 2021-03-24  7:11 UTC (permalink / raw)
  To: linux-arm-kernel
  Cc: linux-kernel, Masahiro Yamada, Nathan Chancellor,
	Catalin Marinas, Will Deacon

$(call ld-option, --fix-cortex-a53-843419) in arch/arm64/Makefile is
evaluated every time even for Make targets that do not need the linker,
such as "make ARCH=arm64 install".

Recently, the Kbuild tree queued up a patch to avoid needless
compiler/linker flag evaluation. I beleive it is a good improvement
itself, but causing a false-positive warning for arm64 installation
in linux-next. (Thanks to Nathan for the report)

Kconfig can test the linker capability just once, and store it in the
.config file. The build and installation steps that follow do not need
to test the liniker over again.

Reported-by: Nathan Chancellor <nathan@kernel.org>
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
---

I was not sure what the preferred CONFIG option name is.
Please suggest a one if you have a better idea.


 arch/arm64/Kconfig  | 3 +++
 arch/arm64/Makefile | 2 +-
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 5656e7aacd69..4a33428de8ac 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -521,6 +521,9 @@ config ARM64_ERRATUM_843419
 
 	  If unsure, say Y.
 
+config ARM64_LD_HAS_FIX_ERRATUM_843419
+	def_bool $(ld-option,--fix-cortex-a53-843419)
+
 config ARM64_ERRATUM_1024718
 	bool "Cortex-A55: 1024718: Update of DBM/AP bits without break before make might result in incorrect update"
 	default y
diff --git a/arch/arm64/Makefile b/arch/arm64/Makefile
index 5b84aec31ed3..7ef44478560d 100644
--- a/arch/arm64/Makefile
+++ b/arch/arm64/Makefile
@@ -21,7 +21,7 @@ LDFLAGS_vmlinux		+= -shared -Bsymbolic -z notext \
 endif
 
 ifeq ($(CONFIG_ARM64_ERRATUM_843419),y)
-  ifeq ($(call ld-option, --fix-cortex-a53-843419),)
+  ifneq ($(CONFIG_ARM64_LD_HAS_FIX_ERRATUM_843419),y)
 $(warning ld does not support --fix-cortex-a53-843419; kernel may be susceptible to erratum)
   else
 LDFLAGS_vmlinux	+= --fix-cortex-a53-843419
-- 
2.27.0


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH] arm64: move --fix-cortex-a53-843419 linker test to Kconfig
  2021-03-24  7:11 [PATCH] arm64: move --fix-cortex-a53-843419 linker test to Kconfig Masahiro Yamada
@ 2021-03-24 16:46 ` Will Deacon
  2021-03-24 17:41 ` Nathan Chancellor
  2021-03-26 14:36 ` Catalin Marinas
  2 siblings, 0 replies; 6+ messages in thread
From: Will Deacon @ 2021-03-24 16:46 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: linux-arm-kernel, linux-kernel, Nathan Chancellor, Catalin Marinas

On Wed, Mar 24, 2021 at 04:11:28PM +0900, Masahiro Yamada wrote:
> $(call ld-option, --fix-cortex-a53-843419) in arch/arm64/Makefile is
> evaluated every time even for Make targets that do not need the linker,
> such as "make ARCH=arm64 install".
> 
> Recently, the Kbuild tree queued up a patch to avoid needless
> compiler/linker flag evaluation. I beleive it is a good improvement
> itself, but causing a false-positive warning for arm64 installation
> in linux-next. (Thanks to Nathan for the report)
> 
> Kconfig can test the linker capability just once, and store it in the
> .config file. The build and installation steps that follow do not need
> to test the liniker over again.
> 
> Reported-by: Nathan Chancellor <nathan@kernel.org>
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> ---
> 
> I was not sure what the preferred CONFIG option name is.
> Please suggest a one if you have a better idea.
> 
> 
>  arch/arm64/Kconfig  | 3 +++
>  arch/arm64/Makefile | 2 +-
>  2 files changed, 4 insertions(+), 1 deletion(-)

Acked-by: Will Deacon <will@kernel.org>

Will

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] arm64: move --fix-cortex-a53-843419 linker test to Kconfig
  2021-03-24  7:11 [PATCH] arm64: move --fix-cortex-a53-843419 linker test to Kconfig Masahiro Yamada
  2021-03-24 16:46 ` Will Deacon
@ 2021-03-24 17:41 ` Nathan Chancellor
  2021-03-26 14:36 ` Catalin Marinas
  2 siblings, 0 replies; 6+ messages in thread
From: Nathan Chancellor @ 2021-03-24 17:41 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: linux-arm-kernel, linux-kernel, Catalin Marinas, Will Deacon

On Wed, Mar 24, 2021 at 04:11:28PM +0900, Masahiro Yamada wrote:
> $(call ld-option, --fix-cortex-a53-843419) in arch/arm64/Makefile is
> evaluated every time even for Make targets that do not need the linker,
> such as "make ARCH=arm64 install".
> 
> Recently, the Kbuild tree queued up a patch to avoid needless
> compiler/linker flag evaluation. I beleive it is a good improvement
> itself, but causing a false-positive warning for arm64 installation
> in linux-next. (Thanks to Nathan for the report)
> 
> Kconfig can test the linker capability just once, and store it in the
> .config file. The build and installation steps that follow do not need
> to test the liniker over again.
> 
> Reported-by: Nathan Chancellor <nathan@kernel.org>
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>

Tested-by: Nathan Chancellor <nathan@kernel.org>
Reviewed-by: Nathan Chancellor <nathan@kernel.org>

Thanks for the quick fix!

> ---
> 
> I was not sure what the preferred CONFIG option name is.
> Please suggest a one if you have a better idea.
> 
> 
>  arch/arm64/Kconfig  | 3 +++
>  arch/arm64/Makefile | 2 +-
>  2 files changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index 5656e7aacd69..4a33428de8ac 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -521,6 +521,9 @@ config ARM64_ERRATUM_843419
>  
>  	  If unsure, say Y.
>  
> +config ARM64_LD_HAS_FIX_ERRATUM_843419
> +	def_bool $(ld-option,--fix-cortex-a53-843419)
> +
>  config ARM64_ERRATUM_1024718
>  	bool "Cortex-A55: 1024718: Update of DBM/AP bits without break before make might result in incorrect update"
>  	default y
> diff --git a/arch/arm64/Makefile b/arch/arm64/Makefile
> index 5b84aec31ed3..7ef44478560d 100644
> --- a/arch/arm64/Makefile
> +++ b/arch/arm64/Makefile
> @@ -21,7 +21,7 @@ LDFLAGS_vmlinux		+= -shared -Bsymbolic -z notext \
>  endif
>  
>  ifeq ($(CONFIG_ARM64_ERRATUM_843419),y)
> -  ifeq ($(call ld-option, --fix-cortex-a53-843419),)
> +  ifneq ($(CONFIG_ARM64_LD_HAS_FIX_ERRATUM_843419),y)
>  $(warning ld does not support --fix-cortex-a53-843419; kernel may be susceptible to erratum)
>    else
>  LDFLAGS_vmlinux	+= --fix-cortex-a53-843419
> -- 
> 2.27.0
> 
> 
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] arm64: move --fix-cortex-a53-843419 linker test to Kconfig
  2021-03-24  7:11 [PATCH] arm64: move --fix-cortex-a53-843419 linker test to Kconfig Masahiro Yamada
  2021-03-24 16:46 ` Will Deacon
  2021-03-24 17:41 ` Nathan Chancellor
@ 2021-03-26 14:36 ` Catalin Marinas
  2021-03-28  6:59   ` Masahiro Yamada
  2 siblings, 1 reply; 6+ messages in thread
From: Catalin Marinas @ 2021-03-26 14:36 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: linux-arm-kernel, linux-kernel, Nathan Chancellor, Will Deacon

Hi Masahiro,

On Wed, Mar 24, 2021 at 04:11:28PM +0900, Masahiro Yamada wrote:
> $(call ld-option, --fix-cortex-a53-843419) in arch/arm64/Makefile is
> evaluated every time even for Make targets that do not need the linker,
> such as "make ARCH=arm64 install".
> 
> Recently, the Kbuild tree queued up a patch to avoid needless
> compiler/linker flag evaluation. I beleive it is a good improvement
> itself, but causing a false-positive warning for arm64 installation
> in linux-next. (Thanks to Nathan for the report)
> 
> Kconfig can test the linker capability just once, and store it in the
> .config file. The build and installation steps that follow do not need
> to test the liniker over again.
> 
> Reported-by: Nathan Chancellor <nathan@kernel.org>
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> ---
> 
> I was not sure what the preferred CONFIG option name is.
> Please suggest a one if you have a better idea.
> 
> 
>  arch/arm64/Kconfig  | 3 +++
>  arch/arm64/Makefile | 2 +-
>  2 files changed, 4 insertions(+), 1 deletion(-)

Would you like this patch to go in via the arm64 tree or you will queue
it via the kbuild tree?

Thanks.

-- 
Catalin

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] arm64: move --fix-cortex-a53-843419 linker test to Kconfig
  2021-03-26 14:36 ` Catalin Marinas
@ 2021-03-28  6:59   ` Masahiro Yamada
  2021-03-28 11:12     ` Catalin Marinas
  0 siblings, 1 reply; 6+ messages in thread
From: Masahiro Yamada @ 2021-03-28  6:59 UTC (permalink / raw)
  To: Catalin Marinas
  Cc: linux-arm-kernel, Linux Kernel Mailing List, Nathan Chancellor,
	Will Deacon

On Fri, Mar 26, 2021 at 11:36 PM Catalin Marinas
<catalin.marinas@arm.com> wrote:
>
> Hi Masahiro,
>
> On Wed, Mar 24, 2021 at 04:11:28PM +0900, Masahiro Yamada wrote:
> > $(call ld-option, --fix-cortex-a53-843419) in arch/arm64/Makefile is
> > evaluated every time even for Make targets that do not need the linker,
> > such as "make ARCH=arm64 install".
> >
> > Recently, the Kbuild tree queued up a patch to avoid needless
> > compiler/linker flag evaluation. I beleive it is a good improvement
> > itself, but causing a false-positive warning for arm64 installation
> > in linux-next. (Thanks to Nathan for the report)
> >
> > Kconfig can test the linker capability just once, and store it in the
> > .config file. The build and installation steps that follow do not need
> > to test the liniker over again.
> >
> > Reported-by: Nathan Chancellor <nathan@kernel.org>
> > Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> > ---
> >
> > I was not sure what the preferred CONFIG option name is.
> > Please suggest a one if you have a better idea.
> >
> >
> >  arch/arm64/Kconfig  | 3 +++
> >  arch/arm64/Makefile | 2 +-
> >  2 files changed, 4 insertions(+), 1 deletion(-)
>
> Would you like this patch to go in via the arm64 tree or you will queue
> it via the kbuild tree?

I applied this to linux-kbuild with Will's Ack.
Thanks.




-- 
Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] arm64: move --fix-cortex-a53-843419 linker test to Kconfig
  2021-03-28  6:59   ` Masahiro Yamada
@ 2021-03-28 11:12     ` Catalin Marinas
  0 siblings, 0 replies; 6+ messages in thread
From: Catalin Marinas @ 2021-03-28 11:12 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: linux-arm-kernel, Linux Kernel Mailing List, Nathan Chancellor,
	Will Deacon

On Sun, Mar 28, 2021 at 03:59:29PM +0900, Masahiro Yamada wrote:
> On Fri, Mar 26, 2021 at 11:36 PM Catalin Marinas
> <catalin.marinas@arm.com> wrote:
> > On Wed, Mar 24, 2021 at 04:11:28PM +0900, Masahiro Yamada wrote:
> > > $(call ld-option, --fix-cortex-a53-843419) in arch/arm64/Makefile is
> > > evaluated every time even for Make targets that do not need the linker,
> > > such as "make ARCH=arm64 install".
> > >
> > > Recently, the Kbuild tree queued up a patch to avoid needless
> > > compiler/linker flag evaluation. I beleive it is a good improvement
> > > itself, but causing a false-positive warning for arm64 installation
> > > in linux-next. (Thanks to Nathan for the report)
> > >
> > > Kconfig can test the linker capability just once, and store it in the
> > > .config file. The build and installation steps that follow do not need
> > > to test the liniker over again.
> > >
> > > Reported-by: Nathan Chancellor <nathan@kernel.org>
> > > Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> > > ---
> > >
> > > I was not sure what the preferred CONFIG option name is.
> > > Please suggest a one if you have a better idea.
> > >
> > >
> > >  arch/arm64/Kconfig  | 3 +++
> > >  arch/arm64/Makefile | 2 +-
> > >  2 files changed, 4 insertions(+), 1 deletion(-)
> >
> > Would you like this patch to go in via the arm64 tree or you will queue
> > it via the kbuild tree?
> 
> I applied this to linux-kbuild with Will's Ack.

Great, I'll cross it off my list. Thanks.

-- 
Catalin

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2021-03-28 11:13 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-24  7:11 [PATCH] arm64: move --fix-cortex-a53-843419 linker test to Kconfig Masahiro Yamada
2021-03-24 16:46 ` Will Deacon
2021-03-24 17:41 ` Nathan Chancellor
2021-03-26 14:36 ` Catalin Marinas
2021-03-28  6:59   ` Masahiro Yamada
2021-03-28 11:12     ` Catalin Marinas

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).