arm64: atomics: lse: remove stale dependency on JUMP_LABEL
authorMark Rutland <mark.rutland@arm.com>
Mon, 14 Nov 2022 12:54:24 +0000 (12:54 +0000)
committerWill Deacon <will@kernel.org>
Mon, 14 Nov 2022 14:44:14 +0000 (14:44 +0000)
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>
arch/arm64/Kconfig
arch/arm64/include/asm/lse.h

index 505c8a1ccbe0cd043d672a8e1192e052ac73d84a..6a4704d4e36b58ac9cd52d9e7a7a559dd33cfa75 100644 (file)
@@ -1714,7 +1714,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
index c503db8e73b01710d935d556143272b846d5f786..f99d74826a7ef8a98314bc6c5fa7793d4aba63e6 100644 (file)
@@ -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>