[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20250816020457.432040-1-ebiggers@kernel.org>
Date: Fri, 15 Aug 2025 19:04:57 -0700
From: Eric Biggers <ebiggers@...nel.org>
To: linux-crypto@...r.kernel.org
Cc: linux-kernel@...r.kernel.org,
Ard Biesheuvel <ardb@...nel.org>,
"Jason A . Donenfeld" <Jason@...c4.com>,
Eric Biggers <ebiggers@...nel.org>
Subject: [PATCH] lib/crypto: Drop inline from all *_mod_init_arch() functions
Drop 'inline' from all the *_mod_init_arch() functions so that the
compiler will warn about any bugs where they are unused due to not being
wired up properly. (There are no such bugs currently, so this just
establishes a more robust convention for the future. Of course, these
functions also tend to get inlined anyway, regardless of the keyword.)
Signed-off-by: Eric Biggers <ebiggers@...nel.org>
---
lib/crypto/arm/sha1.h | 2 +-
lib/crypto/arm/sha256.h | 2 +-
lib/crypto/arm/sha512.h | 2 +-
lib/crypto/arm64/sha1.h | 2 +-
lib/crypto/arm64/sha256.h | 2 +-
lib/crypto/arm64/sha512.h | 2 +-
lib/crypto/riscv/sha256.h | 2 +-
lib/crypto/riscv/sha512.h | 2 +-
lib/crypto/s390/sha1.h | 2 +-
lib/crypto/s390/sha256.h | 2 +-
lib/crypto/s390/sha512.h | 2 +-
lib/crypto/sparc/md5.h | 2 +-
lib/crypto/sparc/sha1.h | 2 +-
lib/crypto/sparc/sha256.h | 2 +-
lib/crypto/sparc/sha512.h | 2 +-
lib/crypto/x86/sha1.h | 2 +-
lib/crypto/x86/sha256.h | 2 +-
lib/crypto/x86/sha512.h | 2 +-
18 files changed, 18 insertions(+), 18 deletions(-)
diff --git a/lib/crypto/arm/sha1.h b/lib/crypto/arm/sha1.h
index fa1e924190006..29f8bcad0447c 100644
--- a/lib/crypto/arm/sha1.h
+++ b/lib/crypto/arm/sha1.h
@@ -33,11 +33,11 @@ static void sha1_blocks(struct sha1_block_state *state,
}
}
#ifdef CONFIG_KERNEL_MODE_NEON
#define sha1_mod_init_arch sha1_mod_init_arch
-static inline void sha1_mod_init_arch(void)
+static void sha1_mod_init_arch(void)
{
if (elf_hwcap & HWCAP_NEON) {
static_branch_enable(&have_neon);
if (elf_hwcap2 & HWCAP2_SHA1)
static_branch_enable(&have_ce);
diff --git a/lib/crypto/arm/sha256.h b/lib/crypto/arm/sha256.h
index eab713e650f33..7556457b3094b 100644
--- a/lib/crypto/arm/sha256.h
+++ b/lib/crypto/arm/sha256.h
@@ -33,11 +33,11 @@ static void sha256_blocks(struct sha256_block_state *state,
}
}
#ifdef CONFIG_KERNEL_MODE_NEON
#define sha256_mod_init_arch sha256_mod_init_arch
-static inline void sha256_mod_init_arch(void)
+static void sha256_mod_init_arch(void)
{
if (elf_hwcap & HWCAP_NEON) {
static_branch_enable(&have_neon);
if (elf_hwcap2 & HWCAP2_SHA2)
static_branch_enable(&have_ce);
diff --git a/lib/crypto/arm/sha512.h b/lib/crypto/arm/sha512.h
index cc2447acd5621..d1b485dd275db 100644
--- a/lib/crypto/arm/sha512.h
+++ b/lib/crypto/arm/sha512.h
@@ -27,11 +27,11 @@ static void sha512_blocks(struct sha512_block_state *state,
}
}
#ifdef CONFIG_KERNEL_MODE_NEON
#define sha512_mod_init_arch sha512_mod_init_arch
-static inline void sha512_mod_init_arch(void)
+static void sha512_mod_init_arch(void)
{
if (cpu_has_neon())
static_branch_enable(&have_neon);
}
#endif /* CONFIG_KERNEL_MODE_NEON */
diff --git a/lib/crypto/arm64/sha1.h b/lib/crypto/arm64/sha1.h
index f822563538cc8..aaef4ebfc5e34 100644
--- a/lib/crypto/arm64/sha1.h
+++ b/lib/crypto/arm64/sha1.h
@@ -30,10 +30,10 @@ static void sha1_blocks(struct sha1_block_state *state,
sha1_blocks_generic(state, data, nblocks);
}
}
#define sha1_mod_init_arch sha1_mod_init_arch
-static inline void sha1_mod_init_arch(void)
+static void sha1_mod_init_arch(void)
{
if (cpu_have_named_feature(SHA1))
static_branch_enable(&have_ce);
}
diff --git a/lib/crypto/arm64/sha256.h b/lib/crypto/arm64/sha256.h
index d95f1077c32bd..be4aeda9d0e6e 100644
--- a/lib/crypto/arm64/sha256.h
+++ b/lib/crypto/arm64/sha256.h
@@ -44,11 +44,11 @@ static void sha256_blocks(struct sha256_block_state *state,
}
}
#ifdef CONFIG_KERNEL_MODE_NEON
#define sha256_mod_init_arch sha256_mod_init_arch
-static inline void sha256_mod_init_arch(void)
+static void sha256_mod_init_arch(void)
{
if (cpu_have_named_feature(ASIMD)) {
static_branch_enable(&have_neon);
if (cpu_have_named_feature(SHA2))
static_branch_enable(&have_ce);
diff --git a/lib/crypto/arm64/sha512.h b/lib/crypto/arm64/sha512.h
index 7539ea3fef10d..ddb0d256f73aa 100644
--- a/lib/crypto/arm64/sha512.h
+++ b/lib/crypto/arm64/sha512.h
@@ -35,11 +35,11 @@ static void sha512_blocks(struct sha512_block_state *state,
}
}
#ifdef CONFIG_KERNEL_MODE_NEON
#define sha512_mod_init_arch sha512_mod_init_arch
-static inline void sha512_mod_init_arch(void)
+static void sha512_mod_init_arch(void)
{
if (cpu_have_named_feature(SHA512))
static_branch_enable(&have_sha512_insns);
}
#endif /* CONFIG_KERNEL_MODE_NEON */
diff --git a/lib/crypto/riscv/sha256.h b/lib/crypto/riscv/sha256.h
index f36f68d2e88cc..1def18b0a4fb5 100644
--- a/lib/crypto/riscv/sha256.h
+++ b/lib/crypto/riscv/sha256.h
@@ -29,11 +29,11 @@ static void sha256_blocks(struct sha256_block_state *state,
sha256_blocks_generic(state, data, nblocks);
}
}
#define sha256_mod_init_arch sha256_mod_init_arch
-static inline void sha256_mod_init_arch(void)
+static void sha256_mod_init_arch(void)
{
/* Both zvknha and zvknhb provide the SHA-256 instructions. */
if ((riscv_isa_extension_available(NULL, ZVKNHA) ||
riscv_isa_extension_available(NULL, ZVKNHB)) &&
riscv_isa_extension_available(NULL, ZVKB) &&
diff --git a/lib/crypto/riscv/sha512.h b/lib/crypto/riscv/sha512.h
index 59dc0294a9a7e..145bdab1214e3 100644
--- a/lib/crypto/riscv/sha512.h
+++ b/lib/crypto/riscv/sha512.h
@@ -28,11 +28,11 @@ static void sha512_blocks(struct sha512_block_state *state,
sha512_blocks_generic(state, data, nblocks);
}
}
#define sha512_mod_init_arch sha512_mod_init_arch
-static inline void sha512_mod_init_arch(void)
+static void sha512_mod_init_arch(void)
{
if (riscv_isa_extension_available(NULL, ZVKNHB) &&
riscv_isa_extension_available(NULL, ZVKB) &&
riscv_vector_vlen() >= 128)
static_branch_enable(&have_extensions);
diff --git a/lib/crypto/s390/sha1.h b/lib/crypto/s390/sha1.h
index 08bd138e881cc..73d94476a157a 100644
--- a/lib/crypto/s390/sha1.h
+++ b/lib/crypto/s390/sha1.h
@@ -18,11 +18,11 @@ static void sha1_blocks(struct sha1_block_state *state,
else
sha1_blocks_generic(state, data, nblocks);
}
#define sha1_mod_init_arch sha1_mod_init_arch
-static inline void sha1_mod_init_arch(void)
+static void sha1_mod_init_arch(void)
{
if (cpu_have_feature(S390_CPU_FEATURE_MSA) &&
cpacf_query_func(CPACF_KIMD, CPACF_KIMD_SHA_1))
static_branch_enable(&have_cpacf_sha1);
}
diff --git a/lib/crypto/s390/sha256.h b/lib/crypto/s390/sha256.h
index 70a81cbc06b2c..acd4835087897 100644
--- a/lib/crypto/s390/sha256.h
+++ b/lib/crypto/s390/sha256.h
@@ -18,11 +18,11 @@ static void sha256_blocks(struct sha256_block_state *state,
else
sha256_blocks_generic(state, data, nblocks);
}
#define sha256_mod_init_arch sha256_mod_init_arch
-static inline void sha256_mod_init_arch(void)
+static void sha256_mod_init_arch(void)
{
if (cpu_have_feature(S390_CPU_FEATURE_MSA) &&
cpacf_query_func(CPACF_KIMD, CPACF_KIMD_SHA_256))
static_branch_enable(&have_cpacf_sha256);
}
diff --git a/lib/crypto/s390/sha512.h b/lib/crypto/s390/sha512.h
index 24744651550cb..46699d43df7eb 100644
--- a/lib/crypto/s390/sha512.h
+++ b/lib/crypto/s390/sha512.h
@@ -18,11 +18,11 @@ static void sha512_blocks(struct sha512_block_state *state,
else
sha512_blocks_generic(state, data, nblocks);
}
#define sha512_mod_init_arch sha512_mod_init_arch
-static inline void sha512_mod_init_arch(void)
+static void sha512_mod_init_arch(void)
{
if (cpu_have_feature(S390_CPU_FEATURE_MSA) &&
cpacf_query_func(CPACF_KIMD, CPACF_KIMD_SHA_512))
static_branch_enable(&have_cpacf_sha512);
}
diff --git a/lib/crypto/sparc/md5.h b/lib/crypto/sparc/md5.h
index 3f1b0ed8c0b3f..3995f3e075eb6 100644
--- a/lib/crypto/sparc/md5.h
+++ b/lib/crypto/sparc/md5.h
@@ -30,11 +30,11 @@ static void md5_blocks(struct md5_block_state *state,
md5_blocks_generic(state, data, nblocks);
}
}
#define md5_mod_init_arch md5_mod_init_arch
-static inline void md5_mod_init_arch(void)
+static void md5_mod_init_arch(void)
{
unsigned long cfr;
if (!(sparc64_elf_hwcap & HWCAP_SPARC_CRYPTO))
return;
diff --git a/lib/crypto/sparc/sha1.h b/lib/crypto/sparc/sha1.h
index 5015f93584b7e..bdf771fcc1f73 100644
--- a/lib/crypto/sparc/sha1.h
+++ b/lib/crypto/sparc/sha1.h
@@ -25,11 +25,11 @@ static void sha1_blocks(struct sha1_block_state *state,
else
sha1_blocks_generic(state, data, nblocks);
}
#define sha1_mod_init_arch sha1_mod_init_arch
-static inline void sha1_mod_init_arch(void)
+static void sha1_mod_init_arch(void)
{
unsigned long cfr;
if (!(sparc64_elf_hwcap & HWCAP_SPARC_CRYPTO))
return;
diff --git a/lib/crypto/sparc/sha256.h b/lib/crypto/sparc/sha256.h
index 1d10108eb1954..b2f4419ec7781 100644
--- a/lib/crypto/sparc/sha256.h
+++ b/lib/crypto/sparc/sha256.h
@@ -25,11 +25,11 @@ static void sha256_blocks(struct sha256_block_state *state,
else
sha256_blocks_generic(state, data, nblocks);
}
#define sha256_mod_init_arch sha256_mod_init_arch
-static inline void sha256_mod_init_arch(void)
+static void sha256_mod_init_arch(void)
{
unsigned long cfr;
if (!(sparc64_elf_hwcap & HWCAP_SPARC_CRYPTO))
return;
diff --git a/lib/crypto/sparc/sha512.h b/lib/crypto/sparc/sha512.h
index 55303ab6b15f7..a8c37a7d4c393 100644
--- a/lib/crypto/sparc/sha512.h
+++ b/lib/crypto/sparc/sha512.h
@@ -24,11 +24,11 @@ static void sha512_blocks(struct sha512_block_state *state,
else
sha512_blocks_generic(state, data, nblocks);
}
#define sha512_mod_init_arch sha512_mod_init_arch
-static inline void sha512_mod_init_arch(void)
+static void sha512_mod_init_arch(void)
{
unsigned long cfr;
if (!(sparc64_elf_hwcap & HWCAP_SPARC_CRYPTO))
return;
diff --git a/lib/crypto/x86/sha1.h b/lib/crypto/x86/sha1.h
index e308379d89bcf..c48a0131fd12c 100644
--- a/lib/crypto/x86/sha1.h
+++ b/lib/crypto/x86/sha1.h
@@ -53,11 +53,11 @@ static void sha1_blocks(struct sha1_block_state *state,
{
static_call(sha1_blocks_x86)(state, data, nblocks);
}
#define sha1_mod_init_arch sha1_mod_init_arch
-static inline void sha1_mod_init_arch(void)
+static void sha1_mod_init_arch(void)
{
if (boot_cpu_has(X86_FEATURE_SHA_NI)) {
static_call_update(sha1_blocks_x86, sha1_blocks_ni);
} else if (cpu_has_xfeatures(XFEATURE_MASK_SSE | XFEATURE_MASK_YMM,
NULL) &&
diff --git a/lib/crypto/x86/sha256.h b/lib/crypto/x86/sha256.h
index c852396ef3190..41fa95fbc3bf8 100644
--- a/lib/crypto/x86/sha256.h
+++ b/lib/crypto/x86/sha256.h
@@ -34,11 +34,11 @@ static void sha256_blocks(struct sha256_block_state *state,
{
static_call(sha256_blocks_x86)(state, data, nblocks);
}
#define sha256_mod_init_arch sha256_mod_init_arch
-static inline void sha256_mod_init_arch(void)
+static void sha256_mod_init_arch(void)
{
if (boot_cpu_has(X86_FEATURE_SHA_NI)) {
static_call_update(sha256_blocks_x86, sha256_blocks_ni);
} else if (cpu_has_xfeatures(XFEATURE_MASK_SSE | XFEATURE_MASK_YMM,
NULL) &&
diff --git a/lib/crypto/x86/sha512.h b/lib/crypto/x86/sha512.h
index be2c8fc122469..0213c70cedd01 100644
--- a/lib/crypto/x86/sha512.h
+++ b/lib/crypto/x86/sha512.h
@@ -33,11 +33,11 @@ static void sha512_blocks(struct sha512_block_state *state,
{
static_call(sha512_blocks_x86)(state, data, nblocks);
}
#define sha512_mod_init_arch sha512_mod_init_arch
-static inline void sha512_mod_init_arch(void)
+static void sha512_mod_init_arch(void)
{
if (cpu_has_xfeatures(XFEATURE_MASK_SSE | XFEATURE_MASK_YMM, NULL) &&
boot_cpu_has(X86_FEATURE_AVX)) {
if (boot_cpu_has(X86_FEATURE_AVX2) &&
boot_cpu_has(X86_FEATURE_BMI2))
base-commit: 56784a42208677e6fb24ba0bd93a2ea0bd9f41ff
--
2.50.1
Powered by blists - more mailing lists