[GIT PULL] Crypto Update for 7.1
From: Herbert Xu
Date: Tue Apr 14 2026 - 21:51:17 EST
Hi Linus:
The following changes since commit d240b079a37e90af03fd7dfec94930eb6c83936e:
crypto: atmel-sha204a - Fix OOM ->tfm_count leak (2026-02-28 12:53:25 +0900)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 tags/v7.1-p1
for you to fetch changes up to 8879a3c110cb8ca5a69c937643f226697aa551d9:
crypto: af_alg - use sock_kmemdup in alg_setkey_by_key_serial (2026-04-12 16:47:10 +0800)
----------------------------------------------------------------
This update includes the following changes:
API:
- Replace crypto_get_default_rng with crypto_stdrng_get_bytes.
- Remove simd skcipher support.
- Allow algorithm types to be disabled when CRYPTO_SELFTESTS is off.
Algorithms:
- Remove CPU-based des/3des acceleration.
- Add test vectors for authenc(hmac(md5),cbc(aes)).
- Add test vectors for authenc(hmac(md5),cbc(des)).
- Add test vectors for authenc(hmac(md5),rfc3686(ctr(aes))).
- Add test vectors for authenc(hmac(sha1),rfc3686(ctr(aes))).
- Add test vectors for authenc(hmac(sha224),rfc3686(ctr(aes))).
- Add test vectors for authenc(hmac(sha256),rfc3686(ctr(aes))).
- Add test vectors for authenc(hmac(sha384),rfc3686(ctr(aes))).
- Add test vectors for authenc(hmac(sha512),rfc3686(ctr(aes))).
- Replace spin lock with mutex in jitterentropy.
Drivers:
- Add authenc algorithms to safexcel.
- Add support for zstd in qat.
- Add wireless mode support for QAT GEN6.
- Add anti-rollback support for QAT GEN6.
- Add support for ctr(aes), gcm(aes), and ccm(aes) in dthev2.
----------------------------------------------------------------
Abel Vesa (1):
dt-bindings: crypto: qcom,inline-crypto-engine: Document the Eliza ICE
Abhinaba Rakshit (1):
dt-bindings: crypto: ice: add operating-points-v2 property for QCOM ICE
Ahsan Atta (2):
crypto: qat - disable 4xxx AE cluster when lead engine is fused off
crypto: qat - disable 420xx AE cluster when lead engine is fused off
Aleksander Jan Bajkowski (15):
crypto: safexcel - Group authenc ciphersuites
crypto: safexcel - Add support for authenc(hmac(md5),*) suites
crypto: tesmgr - allow authenc(hmac(sha224/sha384),cbc(aes)) in fips mode
crypto: testmgr - Add test vectors for authenc(hmac(md5),cbc(des))
crypto: inside-secure/eip93 - fix register definition
dt-bindings: crypto: inside-secure,safexcel: add compatible for MT7981
crypto: testmgr - Add test vectors for authenc(hmac(sha1),rfc3686(ctr(aes)))
crypto: testmgr - Add test vectors for authenc(hmac(sha224),rfc3686(ctr(aes)))
crypto: testmgr - Add test vectors for authenc(hmac(sha256),rfc3686(ctr(aes)))
crypto: testmgr - Add test vectors for authenc(hmac(sha384),rfc3686(ctr(aes)))
crypto: testmgr - Add test vectors for authenc(hmac(sha512),rfc3686(ctr(aes)))
crypto: inside-secure/eip93 - register hash before authenc algorithms
crypto: testmgr - Add test vectors for authenc(hmac(md5),rfc3686(ctr(aes)))
crypto: inside-secure/eip93 - make it selectable for ECONET
crypto: testmgr - Add test vectors for authenc(hmac(md5),cbc(aes))
Alexander Dahl (1):
crypto: docs/userspace-if - Fix outdated links
Atharv Dubey (1):
crypto: qat - replace scnprintf() with sysfs_emit()
Chenghai Huang (4):
crypto: hisilicon/qm - add const qualifier to info_name in struct qm_cmd_dump_item
crypto: hisilicon/qm - remove else after return
crypto: hisilicon/qm - drop redundant variable initialization
crypto: hisilicon - remove unused and non-public APIs for qm and sec
Chuyi Zhou (1):
padata: Remove cpu online check from cpu add and removal
Daniel Jordan (1):
padata: Put CPU offline callback in ONLINE section to allow failure
Daniele Alessandrelli (1):
MAINTAINERS: Remove Daniele Alessandrelli as Keem Bay maintainer
Dave Hansen (1):
MAINTAINERS: Remove bouncing maintaner for IAA driver
Eric Biggers (18):
MAINTAINERS: remove outdated entry for crypto/rng.c
crypto: simd - Remove unused skcipher support
crypto: cryptd - Remove unused functions
crypto: rng - Add crypto_stdrng_get_bytes()
crypto: dh - Use crypto_stdrng_get_bytes()
crypto: ecc - Use crypto_stdrng_get_bytes()
crypto: geniv - Use crypto_stdrng_get_bytes()
crypto: hisilicon/hpre - Use crypto_stdrng_get_bytes()
crypto: intel/keembay-ocs-ecc - Use crypto_stdrng_get_bytes()
net: tipc: Use crypto_stdrng_get_bytes()
crypto: rng - Unexport "default RNG" symbols
crypto: rng - Make crypto_stdrng_get_bytes() use normal RNG in non-FIPS mode
crypto: fips - Depend on CRYPTO_DRBG=y
crypto: rng - Don't pull in DRBG when CRYPTO_FIPS=n
crypto: s390 - Remove des and des3_ede code
crypto: sparc - Remove des and des3_ede code
crypto: x86 - Remove des and des3_ede code
crypto: cryptomgr - Select algorithm types only when CRYPTO_SELFTESTS
George Abraham P (1):
crypto: qat - add wireless mode support for QAT GEN6
Giovanni Cabiddu (7):
crypto: qat - use acomp_tfm_ctx()
crypto: qat - fix compression instance leak
crypto: qat - fix type mismatch in RAS sysfs show functions
crypto: iaa - fix per-node CPU counter reset in rebalance_wq_table()
crypto: qat - use swab32 macro
crypto: qat - add support for zstd
crypto: qat - fix IRQ cleanup on 6xxx probe failure
Gustavo A. R. Silva (1):
crypto: nx - Fix packed layout in struct nx842_crypto_header
Haixin Xu (1):
crypto: jitterentropy - replace long-held spinlock with mutex
Haoxiang Li (1):
crypto: ccree - fix a memory leak in cc_mac_digest()
Herbert Xu (2):
crypto: tegra - Disable softirqs before finalizing request
crypto: geniv - Remove unused spinlock from struct aead_geniv_ctx
Kit Dallege (1):
crypto: add missing kernel-doc for anonymous union members
Mieczyslaw Nalewaj (2):
crypto: inside-secure/eip93 - correct ecb(des-eip93) typo
crypto: inside-secure/eip93 - add missing address terminator character
Mykyta Yatsenko (1):
rhashtable: consolidate hash computation in rht_key_get_hash()
Pat Somaru (1):
crypto: virtio - Convert from tasklet to BH workqueue
Paul Louvel (3):
crypto: aspeed - Use memcpy_from_sglist() in aspeed_ahash_dma_prepare()
crypto: talitos - fix SEC1 32k ahash request limitation
crypto: talitos - rename first/last to first_desc/last_desc
Randy Dunlap (4):
crypto: acomp - repair kernel-doc warnings
crypto: des - fix all kernel-doc warnings
crypto: ecc - correct kernel-doc format
hwrng: core - avoid kernel-doc warnings
Robert Marko (1):
dt-bindings: rng: atmel,at91-trng: add microchip,lan9691-trng
Saeed Mirzamohammadi (2):
crypto: tcrypt - clamp num_mb to avoid divide-by-zero
crypto: tcrypt - stop ahash speed tests when setkey fails
Suman Kumar Chakraborty (3):
crypto: qat - fix indentation of macros in qat_hal.c
crypto: qat - fix firmware loading failure for GEN6 devices
crypto: qat - add anti-rollback support for GEN6 devices
Sun Chaobo (1):
crypto: Fix several spelling mistakes in comments
T Pratham (3):
crypto: ti - Add support for AES-CTR in DTHEv2 driver
crypto: ti - Add support for AES-GCM in DTHEv2 driver
crypto: ti - Add support for AES-CCM in DTHEv2 driver
Thomas Fourier (1):
crypto: hisilicon - Fix dma_unmap_single() direction
Thorsten Blum (39):
crypto: octeontx - Replace scnprintf with strscpy in print_ucode_info
crypto: caam - Replace snprintf with strscpy in caam_hash_alloc
crypto: atmel-sha204a - Fix error codes in OTP reads
crypto: atmel-sha204a - Fix OTP sysfs read and error handling
crypto: atmel-sha204a - Fix uninitialized data access on OTP read error
crypto: atmel-ecc - Release client on allocation failure
crypto: vmx - Remove disabled build directive
crypto: qce - Replace snprintf("%s") with strscpy
crypto: atmel-i2c - Replace hard-coded bus clock rate with constant
crypto: qat - Drop redundant local variables
crypto: qce - Remove return variable and unused assignments
crypto: atmel-sha204a - Drop redundant I2C_FUNC_I2C check
crypto: atmel-tdes - fix DMA sync direction
crypto: atmel - use list_first_entry_or_null to simplify find_dev
crypto: artpec6 - use memcpy_and_pad to simplify prepare_hash
crypto: atmel-aes - Fix 3-page memory leak in atmel_aes_buff_cleanup
crypto: atmel-aes - guard unregister on error in atmel_aes_register_algs
crypto: nx - fix bounce buffer leaks in nx842_crypto_{alloc,free}_ctx
crypto: nx - fix context leak in nx842_crypto_free_ctx
crypto: atmel-sha204a - Fix potential UAF and memory leak in remove path
crypto: s5p-sss - use unregister_{ahashes,skciphers} in probe/remove
crypto: marvell/cesa - use memcpy_and_pad in mv_cesa_ahash_export
crypto: nx - annotate struct nx842_crypto_header with __counted_by
printk: add print_hex_dump_devel()
crypto: caam - guard HMAC key hex dumps in hash_digest_key
crypto: stm32 - use list_first_entry_or_null to simplify hash_find_dev
crypto: stm32 - use list_first_entry_or_null to simplify cryp_find_dev
crypto: qce - use memcpy_and_pad in qce_aead_setkey
crypto: hifn_795x - Replace snprintf("%s") with strscpy
crypto: ccp - Replace snprintf("%s") with strscpy
crypto: kconfig - fix typos in atmel-ecc and atmel-sha204a help
crypto: img-hash - use list_first_entry_or_null to simplify digest
crypto: img-hash - drop redundant return variable
crypto: qce - simplify qce_xts_swapiv()
crypto: atmel-ecc - add Thorsten Blum as maintainer
crypto: atmel-sha204a - add Thorsten Blum as maintainer
crypto: omap - convert reqctx buffer to fixed-size array
crypto: vmx - remove CRYPTO_DEV_VMX from Kconfig
crypto: af_alg - use sock_kmemdup in alg_setkey_by_key_serial
Tycho Andersen (AMD) (2):
crypto: ccp - simplify sev_update_firmware()
include/psp-sev.h: fix structure member in comment
Wenkai Lin (1):
crypto: hisilicon/sec2 - prevent req used-after-free for sec
Wesley Atwell (2):
crypto: simd - reject compat registrations without __ prefixes
crypto: krb5enc - fix sleepable flag handling in encrypt dispatch
Zhushuai Yin (1):
crypto: hisilicon - fix the format string type error
Zongyu Wu (1):
crypto: hisilicon - add device load query functionality to debugfs
Documentation/ABI/testing/debugfs-hisi-hpre | 7 +
Documentation/ABI/testing/debugfs-hisi-sec | 7 +
Documentation/ABI/testing/debugfs-hisi-zip | 7 +
Documentation/ABI/testing/sysfs-driver-qat_svn | 114 ++
Documentation/crypto/userspace-if.rst | 4 +-
.../bindings/crypto/inside-secure,safexcel.yaml | 5 +-
.../bindings/crypto/qcom,inline-crypto-engine.yaml | 27 +
.../devicetree/bindings/rng/atmel,at91-trng.yaml | 1 +
MAINTAINERS | 24 +-
arch/s390/configs/debug_defconfig | 1 -
arch/s390/configs/defconfig | 1 -
arch/s390/crypto/Kconfig | 16 -
arch/s390/crypto/Makefile | 1 -
arch/s390/crypto/des_s390.c | 502 ------
arch/sparc/crypto/Kconfig | 14 -
arch/sparc/crypto/Makefile | 2 -
arch/sparc/crypto/des_asm.S | 419 -----
arch/sparc/crypto/des_glue.c | 482 ------
arch/x86/crypto/Kconfig | 14 -
arch/x86/crypto/Makefile | 3 -
arch/x86/crypto/des3_ede-asm_64.S | 831 ---------
arch/x86/crypto/des3_ede_glue.c | 391 -----
crypto/Kconfig | 36 +-
crypto/af_alg.c | 4 +-
crypto/cryptd.c | 112 +-
crypto/dh.c | 8 +-
crypto/drbg.c | 2 +-
crypto/ecc.c | 11 +-
crypto/geniv.c | 10 +-
crypto/jitterentropy-kcapi.c | 14 +-
crypto/krb5enc.c | 5 +-
crypto/lrw.c | 2 +-
crypto/rng.c | 23 +-
crypto/simd.c | 239 +--
crypto/tcrypt.c | 17 +-
crypto/tea.c | 2 +-
crypto/testmgr.c | 53 +-
crypto/testmgr.h | 1764 ++++++++++++++++++++
crypto/xts.c | 2 +-
drivers/crypto/Kconfig | 13 +-
drivers/crypto/Makefile | 1 -
drivers/crypto/allwinner/Kconfig | 2 +
drivers/crypto/aspeed/aspeed-hace-hash.c | 3 +-
drivers/crypto/atmel-aes.c | 8 +-
drivers/crypto/atmel-ecc.c | 1 +
drivers/crypto/atmel-i2c.c | 6 +-
drivers/crypto/atmel-sha.c | 17 +-
drivers/crypto/atmel-sha204a.c | 41 +-
drivers/crypto/atmel-tdes.c | 8 +-
drivers/crypto/axis/artpec6_crypto.c | 9 +-
drivers/crypto/caam/caamalg_qi2.c | 17 +-
drivers/crypto/caam/caamhash.c | 16 +-
drivers/crypto/ccp/ccp-crypto-aes-galois.c | 6 +-
drivers/crypto/ccp/ccp-crypto-aes-xts.c | 6 +-
drivers/crypto/ccp/ccp-crypto-aes.c | 5 +-
drivers/crypto/ccp/ccp-crypto-des3.c | 5 +-
drivers/crypto/ccp/ccp-crypto-rsa.c | 6 +-
drivers/crypto/ccp/ccp-crypto-sha.c | 5 +-
drivers/crypto/ccp/sev-dev.c | 27 +-
drivers/crypto/ccree/cc_hash.c | 1 +
drivers/crypto/hifn_795x.c | 6 +-
drivers/crypto/hisilicon/debugfs.c | 76 +-
drivers/crypto/hisilicon/hpre/hpre_crypto.c | 12 +-
drivers/crypto/hisilicon/hpre/hpre_main.c | 18 +
drivers/crypto/hisilicon/qm.c | 16 +-
drivers/crypto/hisilicon/sec/sec_algs.c | 2 +-
drivers/crypto/hisilicon/sec2/sec.h | 2 -
drivers/crypto/hisilicon/sec2/sec_crypto.c | 2 +-
drivers/crypto/hisilicon/sec2/sec_main.c | 13 +-
drivers/crypto/hisilicon/zip/zip_main.c | 19 +
drivers/crypto/img-hash.c | 24 +-
drivers/crypto/inside-secure/eip93/Kconfig | 2 +-
drivers/crypto/inside-secure/eip93/eip93-aead.c | 2 +-
drivers/crypto/inside-secure/eip93/eip93-aead.h | 2 +-
drivers/crypto/inside-secure/eip93/eip93-aes.h | 2 +-
drivers/crypto/inside-secure/eip93/eip93-cipher.c | 4 +-
drivers/crypto/inside-secure/eip93/eip93-cipher.h | 2 +-
drivers/crypto/inside-secure/eip93/eip93-common.c | 2 +-
drivers/crypto/inside-secure/eip93/eip93-common.h | 2 +-
drivers/crypto/inside-secure/eip93/eip93-des.h | 2 +-
drivers/crypto/inside-secure/eip93/eip93-hash.c | 2 +-
drivers/crypto/inside-secure/eip93/eip93-hash.h | 2 +-
drivers/crypto/inside-secure/eip93/eip93-main.c | 18 +-
drivers/crypto/inside-secure/eip93/eip93-main.h | 2 +-
drivers/crypto/inside-secure/eip93/eip93-regs.h | 4 +-
drivers/crypto/inside-secure/safexcel.c | 8 +-
drivers/crypto/inside-secure/safexcel.h | 8 +-
drivers/crypto/inside-secure/safexcel_cipher.c | 149 ++
drivers/crypto/intel/iaa/iaa_crypto_main.c | 2 +-
drivers/crypto/intel/keembay/keembay-ocs-ecc.c | 17 +-
drivers/crypto/intel/qat/Kconfig | 2 +
.../crypto/intel/qat/qat_420xx/adf_420xx_hw_data.c | 21 +-
.../crypto/intel/qat/qat_4xxx/adf_4xxx_hw_data.c | 15 +-
.../crypto/intel/qat/qat_6xxx/adf_6xxx_hw_data.c | 130 +-
.../crypto/intel/qat/qat_6xxx/adf_6xxx_hw_data.h | 20 +
drivers/crypto/intel/qat/qat_6xxx/adf_drv.c | 37 +-
drivers/crypto/intel/qat/qat_common/Makefile | 3 +
.../intel/qat/qat_common/adf_accel_devices.h | 8 +
.../crypto/intel/qat/qat_common/adf_accel_engine.c | 7 +
drivers/crypto/intel/qat/qat_common/adf_admin.c | 70 +
drivers/crypto/intel/qat/qat_common/adf_admin.h | 2 +
drivers/crypto/intel/qat/qat_common/adf_anti_rb.c | 66 +
drivers/crypto/intel/qat/qat_common/adf_anti_rb.h | 37 +
.../crypto/intel/qat/qat_common/adf_common_drv.h | 6 +-
.../crypto/intel/qat/qat_common/adf_fw_config.h | 1 +
.../crypto/intel/qat/qat_common/adf_gen4_hw_data.c | 18 +-
.../crypto/intel/qat/qat_common/adf_gen6_shared.c | 6 -
.../crypto/intel/qat/qat_common/adf_gen6_shared.h | 1 -
drivers/crypto/intel/qat/qat_common/adf_init.c | 9 +-
.../intel/qat/qat_common/adf_sysfs_anti_rb.c | 133 ++
.../intel/qat/qat_common/adf_sysfs_anti_rb.h | 11 +
.../intel/qat/qat_common/adf_sysfs_ras_counters.c | 12 +-
drivers/crypto/intel/qat/qat_common/adf_sysfs_rl.c | 10 +-
drivers/crypto/intel/qat/qat_common/icp_qat_fw.h | 7 +
.../crypto/intel/qat/qat_common/icp_qat_fw_comp.h | 2 +
.../intel/qat/qat_common/icp_qat_fw_init_admin.h | 15 +-
.../qat/qat_common/icp_qat_fw_loader_handle.h | 1 +
drivers/crypto/intel/qat/qat_common/icp_qat_hw.h | 6 +-
.../intel/qat/qat_common/icp_qat_hw_20_comp.h | 10 +-
.../crypto/intel/qat/qat_common/qat_comp_algs.c | 540 +++++-
drivers/crypto/intel/qat/qat_common/qat_comp_req.h | 9 +
.../intel/qat/qat_common/qat_comp_zstd_utils.c | 165 ++
.../intel/qat/qat_common/qat_comp_zstd_utils.h | 13 +
.../crypto/intel/qat/qat_common/qat_compression.c | 23 +-
drivers/crypto/intel/qat/qat_common/qat_hal.c | 27 +-
drivers/crypto/intel/qat/qat_common/qat_uclo.c | 25 +-
drivers/crypto/marvell/cesa/hash.c | 3 +-
drivers/crypto/marvell/octeontx/otx_cptpf_ucode.c | 8 +-
drivers/crypto/nx/nx-842.c | 10 +-
drivers/crypto/nx/nx-842.h | 6 +-
drivers/crypto/omap-sham.c | 21 +-
drivers/crypto/qce/aead.c | 22 +-
drivers/crypto/qce/common.c | 12 +-
drivers/crypto/qce/sha.c | 6 +-
drivers/crypto/qce/skcipher.c | 6 +-
drivers/crypto/s5p-sss.c | 27 +-
drivers/crypto/stm32/stm32-cryp.c | 16 +-
drivers/crypto/stm32/stm32-hash.c | 16 +-
drivers/crypto/talitos.c | 340 ++--
drivers/crypto/tegra/tegra-se-aes.c | 9 +
drivers/crypto/tegra/tegra-se-hash.c | 3 +
drivers/crypto/ti/Kconfig | 4 +
drivers/crypto/ti/dthev2-aes.c | 899 +++++++++-
drivers/crypto/ti/dthev2-common.c | 19 +
drivers/crypto/ti/dthev2-common.h | 27 +-
drivers/crypto/virtio/virtio_crypto_common.h | 3 +-
drivers/crypto/virtio/virtio_crypto_core.c | 11 +-
include/crypto/acompress.h | 5 +-
include/crypto/cryptd.h | 33 -
include/crypto/des.h | 8 +-
include/crypto/internal/acompress.h | 1 +
include/crypto/internal/ecc.h | 22 +-
include/crypto/internal/geniv.h | 2 -
include/crypto/internal/scompress.h | 1 +
include/crypto/internal/simd.h | 19 -
include/crypto/rng.h | 25 +-
include/crypto/skcipher.h | 1 +
include/linux/cpuhotplug.h | 1 -
include/linux/hisi_acc_qm.h | 14 +-
include/linux/hw_random.h | 2 +-
include/linux/padata.h | 8 +-
include/linux/printk.h | 13 +
include/linux/rhashtable.h | 13 +-
include/uapi/linux/psp-sev.h | 2 +-
kernel/padata.c | 130 +-
net/tipc/crypto.c | 13 +-
166 files changed, 5209 insertions(+), 3842 deletions(-)
create mode 100644 Documentation/ABI/testing/sysfs-driver-qat_svn
delete mode 100644 arch/s390/crypto/des_s390.c
delete mode 100644 arch/sparc/crypto/des_asm.S
delete mode 100644 arch/sparc/crypto/des_glue.c
delete mode 100644 arch/x86/crypto/des3_ede-asm_64.S
delete mode 100644 arch/x86/crypto/des3_ede_glue.c
create mode 100644 drivers/crypto/intel/qat/qat_common/adf_anti_rb.c
create mode 100644 drivers/crypto/intel/qat/qat_common/adf_anti_rb.h
create mode 100644 drivers/crypto/intel/qat/qat_common/adf_sysfs_anti_rb.c
create mode 100644 drivers/crypto/intel/qat/qat_common/adf_sysfs_anti_rb.h
create mode 100644 drivers/crypto/intel/qat/qat_common/qat_comp_zstd_utils.c
create mode 100644 drivers/crypto/intel/qat/qat_common/qat_comp_zstd_utils.h
Thanks,
--
Email: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt