* [PATCH 6.1] arm64: atomics: lse: remove stale dependency on JUMP_LABEL
@ 2024-05-21 14:51 Oleksandr Tymoshenko
2024-05-23 11:56 ` Greg KH
0 siblings, 1 reply; 2+ messages in thread
From: Oleksandr Tymoshenko @ 2024-05-21 14:51 UTC (permalink / raw)
To: Catalin Marinas, Will Deacon, stable
Cc: linux-arm-kernel, Mark Rutland, Oleksandr Tymoshenko
From: Mark Rutland <mark.rutland@arm.com>
[ Upstream commit 657eef0a5420a02c02945ed8c87f2ddcbd255772 ]
Currently CONFIG_ARM64_USE_LSE_ATOMICS depends upon CONFIG_JUMP_LABEL,
as the inline atomics were indirected with a static branch.
However, since commit:
21fb26bfb01ffe0d ("arm64: alternatives: add alternative_has_feature_*()")
... we use an alternative_branch (which is always available) rather than
a static branch, and hence the dependency is unnecessary.
Remove the stale dependency, along with the stale include. This will
allow the use of LSE atomics in kernels built with CONFIG_JUMP_LABEL=n,
and reduces the risk of circular header dependencies via <asm/lse.h>.
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will@kernel.org>
Link: https://lore.kernel.org/r/20221114125424.2998268-1-mark.rutland@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Oleksandr Tymoshenko <ovt@google.com>
---
arch/arm64/Kconfig | 1 -
arch/arm64/include/asm/lse.h | 1 -
2 files changed, 2 deletions(-)
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index c15f71501c6c..044b98a62f7b 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -1752,7 +1752,6 @@ config ARM64_LSE_ATOMICS
config ARM64_USE_LSE_ATOMICS
bool "Atomic instructions"
- depends on JUMP_LABEL
default y
help
As part of the Large System Extensions, ARMv8.1 introduces new
diff --git a/arch/arm64/include/asm/lse.h b/arch/arm64/include/asm/lse.h
index c503db8e73b0..f99d74826a7e 100644
--- a/arch/arm64/include/asm/lse.h
+++ b/arch/arm64/include/asm/lse.h
@@ -10,7 +10,6 @@
#include <linux/compiler_types.h>
#include <linux/export.h>
-#include <linux/jump_label.h>
#include <linux/stringify.h>
#include <asm/alternative.h>
#include <asm/alternative-macros.h>
---
base-commit: 4078fa637fcd80c8487680ec2e4ef7c58308e9aa
change-id: 20240521-lse-atomics-6-1-b0960e206035
Best regards,
--
Oleksandr Tymoshenko <ovt@google.com>
^ permalink raw reply related [flat|nested] 2+ messages in thread* Re: [PATCH 6.1] arm64: atomics: lse: remove stale dependency on JUMP_LABEL
2024-05-21 14:51 [PATCH 6.1] arm64: atomics: lse: remove stale dependency on JUMP_LABEL Oleksandr Tymoshenko
@ 2024-05-23 11:56 ` Greg KH
0 siblings, 0 replies; 2+ messages in thread
From: Greg KH @ 2024-05-23 11:56 UTC (permalink / raw)
To: Oleksandr Tymoshenko
Cc: Catalin Marinas, Will Deacon, stable, linux-arm-kernel,
Mark Rutland
On Tue, May 21, 2024 at 02:51:29PM +0000, Oleksandr Tymoshenko wrote:
> From: Mark Rutland <mark.rutland@arm.com>
>
> [ Upstream commit 657eef0a5420a02c02945ed8c87f2ddcbd255772 ]
>
> Currently CONFIG_ARM64_USE_LSE_ATOMICS depends upon CONFIG_JUMP_LABEL,
> as the inline atomics were indirected with a static branch.
>
> However, since commit:
>
> 21fb26bfb01ffe0d ("arm64: alternatives: add alternative_has_feature_*()")
>
> ... we use an alternative_branch (which is always available) rather than
> a static branch, and hence the dependency is unnecessary.
>
> Remove the stale dependency, along with the stale include. This will
> allow the use of LSE atomics in kernels built with CONFIG_JUMP_LABEL=n,
> and reduces the risk of circular header dependencies via <asm/lse.h>.
>
> Signed-off-by: Mark Rutland <mark.rutland@arm.com>
> Cc: Catalin Marinas <catalin.marinas@arm.com>
> Cc: Will Deacon <will@kernel.org>
> Link: https://lore.kernel.org/r/20221114125424.2998268-1-mark.rutland@arm.com
> Signed-off-by: Will Deacon <will@kernel.org>
> Signed-off-by: Oleksandr Tymoshenko <ovt@google.com>
> ---
> arch/arm64/Kconfig | 1 -
> arch/arm64/include/asm/lse.h | 1 -
> 2 files changed, 2 deletions(-)
>
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index c15f71501c6c..044b98a62f7b 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -1752,7 +1752,6 @@ config ARM64_LSE_ATOMICS
>
> config ARM64_USE_LSE_ATOMICS
> bool "Atomic instructions"
> - depends on JUMP_LABEL
> default y
> help
> As part of the Large System Extensions, ARMv8.1 introduces new
> diff --git a/arch/arm64/include/asm/lse.h b/arch/arm64/include/asm/lse.h
> index c503db8e73b0..f99d74826a7e 100644
> --- a/arch/arm64/include/asm/lse.h
> +++ b/arch/arm64/include/asm/lse.h
> @@ -10,7 +10,6 @@
>
> #include <linux/compiler_types.h>
> #include <linux/export.h>
> -#include <linux/jump_label.h>
> #include <linux/stringify.h>
> #include <asm/alternative.h>
> #include <asm/alternative-macros.h>
>
> ---
> base-commit: 4078fa637fcd80c8487680ec2e4ef7c58308e9aa
> change-id: 20240521-lse-atomics-6-1-b0960e206035
>
> Best regards,
> --
> Oleksandr Tymoshenko <ovt@google.com>
>
>
Now queued up, thanks.
greg k-h
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-05-23 11:56 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-05-21 14:51 [PATCH 6.1] arm64: atomics: lse: remove stale dependency on JUMP_LABEL Oleksandr Tymoshenko
2024-05-23 11:56 ` Greg KH
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox