[RFC PATCH 7/8] crypto: cipher - Remove support for cloning cipher tfms
From: Eric Biggers
Date: Sat Mar 07 2026 - 17:48:22 EST
Since the only caller of crypto_clone_cipher() was cmac_clone_tfm()
which has been removed, remove crypto_clone_cipher() as well.
Signed-off-by: Eric Biggers <ebiggers@xxxxxxxxxx>
---
crypto/cipher.c | 28 ----------------------------
include/crypto/internal/cipher.h | 2 --
2 files changed, 30 deletions(-)
diff --git a/crypto/cipher.c b/crypto/cipher.c
index 1fe62bf79656b..c9dab656a622e 100644
--- a/crypto/cipher.c
+++ b/crypto/cipher.c
@@ -87,33 +87,5 @@ void crypto_cipher_decrypt_one(struct crypto_cipher *tfm,
u8 *dst, const u8 *src)
{
cipher_crypt_one(tfm, dst, src, false);
}
EXPORT_SYMBOL_NS_GPL(crypto_cipher_decrypt_one, "CRYPTO_INTERNAL");
-
-struct crypto_cipher *crypto_clone_cipher(struct crypto_cipher *cipher)
-{
- struct crypto_tfm *tfm = crypto_cipher_tfm(cipher);
- struct crypto_alg *alg = tfm->__crt_alg;
- struct crypto_cipher *ncipher;
- struct crypto_tfm *ntfm;
-
- if (alg->cra_init)
- return ERR_PTR(-ENOSYS);
-
- if (unlikely(!crypto_mod_get(alg)))
- return ERR_PTR(-ESTALE);
-
- ntfm = __crypto_alloc_tfmgfp(alg, CRYPTO_ALG_TYPE_CIPHER,
- CRYPTO_ALG_TYPE_MASK, GFP_ATOMIC);
- if (IS_ERR(ntfm)) {
- crypto_mod_put(alg);
- return ERR_CAST(ntfm);
- }
-
- ntfm->crt_flags = tfm->crt_flags;
-
- ncipher = __crypto_cipher_cast(ntfm);
-
- return ncipher;
-}
-EXPORT_SYMBOL_GPL(crypto_clone_cipher);
diff --git a/include/crypto/internal/cipher.h b/include/crypto/internal/cipher.h
index 5030f6d2df315..a9174ba902500 100644
--- a/include/crypto/internal/cipher.h
+++ b/include/crypto/internal/cipher.h
@@ -174,12 +174,10 @@ void crypto_cipher_encrypt_one(struct crypto_cipher *tfm,
* the plaintext and ciphertext buffers are at least one block in size.
*/
void crypto_cipher_decrypt_one(struct crypto_cipher *tfm,
u8 *dst, const u8 *src);
-struct crypto_cipher *crypto_clone_cipher(struct crypto_cipher *cipher);
-
struct crypto_cipher_spawn {
struct crypto_spawn base;
};
static inline int crypto_grab_cipher(struct crypto_cipher_spawn *spawn,
--
2.53.0