2019-09-16 10:36:05

by Herbert Xu

[permalink] [raw]
Subject: [GIT PULL] Crypto Update for 5.4

Hi Linus:

API:

- Add the ability to abort a skcipher walk.

Algorithms:

- Fix XTS to actually do the stealing.
- Add library helpers for AES and DES for single-block users.
- Add library helpers for SHA256.
- Add new DES key verification helper.
- Add surrounding bits for ESSIV generator.
- Add accelerations for aegis128.
- Add test vectors for lzo-rle.

Drivers:

- Add i.MX8MQ support to caam.
- Add gcm/ccm/cfb/ofb aes support in inside-secure.
- Add ofb/cfb aes support in media-tek.
- Add HiSilicon ZIP accelerator support.

Others:

- Fix potential race condition in padata.
- Use unbound workqueues in padata.

Please note that there is a conflict with mainline due to the
sha256 library change. There is also a conflit with the s390
tree due to changes in the s390 crypto code. Finally there is
a conflict with arm-soc due to a DTS change.

The following changes since commit 5f9e832c137075045d15cd6899ab0505cfb2ca4b:

Linus 5.3-rc1 (2019-07-21 14:05:38 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

for you to fetch changes up to 9575d1a5c0780ea26ff8dd29c94a32be32ce3c85:

crypto: caam - Cast to long first before pointer conversion (2019-09-13 21:20:47 +1000)

----------------------------------------------------------------
Alexander Sverdlin (1):
crypto: qat - Silence smp_processor_id() warning

Andrey Smirnov (20):
crypto: caam - move DMA mask selection into a function
crypto: caam - simplfy clock initialization
crypto: caam - convert caam_jr_init() to use devres
crypto: caam - request JR IRQ as the last step
crytpo: caam - make use of iowrite64*_hi_lo in wr_reg64
crypto: caam - use ioread64*_hi_lo in rd_reg64
crypto: caam - drop 64-bit only wr/rd_reg64()
crypto: caam - share definition for MAX_SDLEN
crypto: caam - make CAAM_PTR_SZ dynamic
crypto: caam - move cpu_to_caam_dma() selection to runtime
crypto: caam - drop explicit usage of struct jr_outentry
crypto: caam - don't hardcode inpentry size
crypto: caam - select DMA address size at runtime
crypto: caam - always select job ring via RSR on i.MX8MQ
crypto: caam - add clock entry for i.MX8MQ
crypto: caam - make sure clocks are enabled first
crypto: caam - use devres to unmap JR's registers
crypto: caam - check irq_of_parse_and_map for errors
crypto: caam - dispose of IRQ mapping only after IRQ is freed
arm64: dts: imx8mq: Add CAAM node

Anson Huang (2):
hwrng: imx-rngc - use devm_platform_ioremap_resource() to simplify code
hwrng: mxc-rnga - use devm_platform_ioremap_resource() to simplify code

Ard Biesheuvel (103):
crypto: arm/aes-ce - cosmetic/whitespace cleanup
crypto: aes - rename local routines to prevent future clashes
crypto: aes/fixed-time - align key schedule with other implementations
crypto: aes - create AES library based on the fixed time AES code
crypto: x86/aes-ni - switch to generic for fallback and key routines
crypto: x86/aes - drop scalar assembler implementations
crypto: padlock/aes - switch to library version of key expansion routine
crypto: cesa/aes - switch to library version of key expansion routine
crypto: safexcel/aes - switch to library version of key expansion routine
crypto: arm64/ghash - switch to AES library
crypto: arm/aes-neonbs - switch to library version of key expansion routine
crypto: arm64/aes-ccm - switch to AES library
crypto: arm64/aes-neonbs - switch to library version of key expansion routine
crypto: arm64/aes-ce - switch to library version of key expansion routine
crypto: aes-generic - drop key expansion routine in favor of library version
crypto: ctr - add helper for performing a CTR encryption walk
crypto: aes - move sync ctr(aes) to AES library and generic helper
crypto: arm64/aes-ce-cipher - use AES library as fallback
crypto: arm/aes - use native endiannes for key schedule
crypto: arm/aes-ce - provide a synchronous version of ctr(aes)
crypto: arm/aes-neonbs - provide a synchronous version of ctr(aes)
crypto: arm/ghash - provide a synchronous version
bluetooth: switch to AES library
crypto: amcc - switch to AES library for GCM key derivation
crypto: ccp - move to AES library for CMAC key derivation
crypto: chelsio - replace AES cipher calls with library calls
crypto: aes-generic - unexport last-round AES tables
crypto: lib/aes - export sbox and inverse sbox
crypto: arm64/aes-neon - switch to shared AES Sboxes
crypto: arm/aes-cipher - switch to shared AES inverse Sbox
crypto: arm64/aes-cipher - switch to shared AES inverse Sbox
crypto: arm/aes-scalar - unexport en/decryption routines
crypto: morus - remove generic and x86 implementations
crypto: aegis128l/aegis256 - remove x86 and generic implementations
crypto: aegis128 - drop empty TFM init/exit routines
crypto: aegis - avoid prerotated AES tables
crypto: aegis128 - add support for SIMD acceleration
crypto: aegis128 - provide a SIMD implementation based on NEON intrinsics
crypto: tcrypt - add a speed test for AEGIS128
crypto: s390/aes - fix name clash after AES library refactor
asm-generic: make simd.h a mandatory include/asm header
crypto: xts - add support for ciphertext stealing
crypto: aegis128 - add support for SIMD acceleration
crypto: aegis128 - provide a SIMD implementation based on NEON intrinsics
crypto: arm64/aegis128 - implement plain NEON version
crypto: des/3des_ede - add new helpers to verify keys
crypto: s390/des - switch to new verification routines
crypto: sparc/des - switch to new verification routines
crypto: atmel/des - switch to new verification routines
crypto: bcm/des - switch to new verification routines
crypto: caam/des - switch to new verification routines
crypto: cpt/des - switch to new verification routines
crypto: nitrox/des - switch to new verification routines
crypto: ccp/des - switch to new verification routines
crypto: ccree/des - switch to new verification routines
crypto: hifn/des - switch to new verification routines
crypto: hisilicon/des - switch to new verification routines
crypto: safexcel/des - switch to new verification routines
crypto: ixp4xx/des - switch to new verification routines
crypto: cesa/des - switch to new verification routines
crypto: n2/des - switch to new verification routines
crypto: omap/des - switch to new verification routines
crypto: picoxcell/des - switch to new verification routines
crypto: qce/des - switch to new verification routines
crypto: rk3288/des - switch to new verification routines
crypto: stm32/des - switch to new verification routines
crypto: sun4i/des - switch to new verification routines
crypto: talitos/des - switch to new verification routines
crypto: ux500/des - switch to new verification routines
crypto: 3des - move verification out of exported routine
crypto: des - remove unused function
crypto: des - split off DES library from generic DES cipher driver
crypto: x86/des - switch to library interface
crypto: des - remove now unused __des3_ede_setkey()
fs: cifs: move from the crypto cipher API to the new DES library interface
crypto: x86/xts - implement support for ciphertext stealing
crypto: s390/xts-aes - invoke fallback for ciphertext stealing
crypto: vmx/xts - use fallback for ciphertext stealing
crypto: s390/aes - fix typo in XTS_BLOCK_SIZE identifier
crypto: n2/des - fix build breakage after DES updates
crypto: arm64/aegis128 - use explicit vector load for permute vectors
crypto: essiv - add tests for essiv in cbc(aes)+sha256 mode
crypto: arm64/aes-cts-cbc - factor out CBC en/decryption of a walk
crypto: arm64/aes - implement accelerated ESSIV/CBC mode
crypto: s5p - deal gracefully with bogus input sizes
crypto: s5p - use correct block size of 1 for ctr(aes)
crypto: ccp - invoke fallback for XTS ciphertext stealing
crypto: arm/aes - fix round key prototypes
crypto: arm/aes-ce - yield the SIMD unit between scatterwalk steps
crypto: arm/aes-ce - switch to 4x interleave
crypto: arm/aes-ce - replace tweak mask literal with composition
crypto: arm/aes-neonbs - replace tweak mask literal with composition
crypto: arm64/aes-neonbs - replace tweak mask literal with composition
crypto: arm64/aes-neon - limit exposed routines if faster driver is enabled
crypto: skcipher - add the ability to abort a skcipher walk
crypto: arm64/aes-cts-cbc-ce - performance tweak
crypto: arm64/aes-cts-cbc - move request context data to the stack
crypto: arm64/aes - implement support for XTS ciphertext stealing
crypto: arm64/aes-neonbs - implement ciphertext stealing for XTS
crypto: arm/aes-ce - implement ciphertext stealing for XTS
crypto: arm/aes-neonbs - implement ciphertext stealing for XTS
crypto: arm/aes-ce - implement ciphertext stealing for CBC
crypto: x86/aes-ni - use AES library instead of single-use AES cipher

Arnd Bergmann (3):
crypto: ccp - Reduce maximum stack usage
crypto: aegis - fix badly optimized clang output
crypto: jitterentropy - build without sanitizer

Bjorn Helgaas (2):
crypto: ccp - Include DMA declarations explicitly
crypto: ccp - Remove unnecessary linux/pci.h include

Christophe JAILLET (1):
crypto: picoxcell - Fix the name of the module in the description of CRYPTO_DEV_PICOXCELL

Chuhong Yuan (4):
crypto: ccp - Replace dma_pool_alloc + memset with dma_pool_zalloc
crypto: atmel-sha204a - Use device-managed registration API
hwrng: drivers - Use device-managed registration API
crypto: cryptd - Use refcount_t for refcount

Colin Ian King (1):
crypto: ccree - fix spelling mistake "configration" -> "configuration"

Daniel Jordan (11):
padata: purge get_cpu and reorder_via_wq from padata_do_serial
padata: initialize pd->cpu with effective cpumask
padata: allocate workqueue internally
workqueue: unconfine alloc/apply/free_workqueue_attrs()
workqueue: require CPU hotplug read exclusion for apply_workqueue_attrs
padata: make padata_do_parallel find alternate callback CPU
crypto: pcrypt - remove padata cpumask notifier
padata, pcrypt: take CPU hotplug lock internally in padata_alloc_possible
padata: use separate workqueues for parallel and serial work
padata: unbind parallel jobs from specific CPUs
padata: remove cpu_index from the parallel_queue

Daniel Mack (1):
hwrng: timeriomem - relax check on memory resource size

Denis Efremov (1):
MAINTAINERS: nx crypto: Fix typo in a filepath

Eric Biggers (1):
crypto: ghash - add comment and improve help text

Fuqian Huang (1):
crypto: drivers - Use kmemdup rather than duplicating its implementation

Gary R Hook (2):
crypto: ccp - Log an error message when ccp-crypto fails to load
crypto: ccp - Clean up and exit correctly on allocation failure

Gilad Ben-Yossef (6):
crypto: ccree - drop legacy ivgen support
crypto: ccree - account for TEE not ready to report
crypto: fips - add FIPS test failure notification chain
crypto: ccree - notify TEE on FIPS tests errors
crypto: ccree - use the full crypt length value
crypto: ccree - use std api sg_zero_buffer

Gustavo A. R. Silva (1):
crypto: ux500/crypt - Mark expected switch fall-throughs

Hannah Pan (1):
crypto: testmgr - add tests for lzo-rle

Hans de Goede (17):
crypto: sha256 - Fix some coding style issues
crypto: sha256_generic - Fix some coding style issues
crypto: sha256 - Move lib/sha256.c to lib/crypto
crypto: sha256 - Use get/put_unaligned_be32 to get input, memzero_explicit
crypto: sha256 - Make lib/crypto/sha256.c suitable for generic use
crypto: sha256 - Add sha224 support to sha256 library code
crypto: sha256_generic - Switch to the generic lib/crypto/sha256.c lib code
crypto: sha256 - Add missing MODULE_LICENSE() to lib/crypto/sha256.c
crypto: arm - Rename functions to avoid conflict with crypto/sha256.h
crypto: arm64 - Rename functions to avoid conflict with crypto/sha256.h
crypto: s390 - Rename functions to avoid conflict with crypto/sha256.h
crypto: x86 - Rename functions to avoid conflict with crypto/sha256.h
crypto: ccree - Rename arrays to avoid conflict with crypto/sha256.h
crypto: chelsio - Rename arrays to avoid conflict with crypto/sha256.h
crypto: n2 - Rename arrays to avoid conflict with crypto/sha256.h
crypto: sha256 - Merge crypto/sha256.h into crypto/sha.h
crypto: sha256 - Remove sha256/224_init code duplication

Herbert Xu (9):
crypto: Remove orphan tools/crypto directory
padata: Replace delayed timer with immediate workqueue in padata_reorder
Revert "crypto: aegis128 - add support for SIMD acceleration"
asm-generic: Remove redundant arch-specific rules for simd.h
crypto: hisilicon - Fix warning on printing %p with dma_addr_t
crypto: talitos - Fix build warning in aead_des3_setkey
crypto: skcipher - Unmap pages after an external error
crypto: ux500 - Fix COMPILE_TEST warnings
crypto: caam - Cast to long first before pointer conversion

Hook, Gary (5):
crypto: ccp - Make CCP debugfs support optional
crypto: ccp - Add a module parameter to specify a queue count
crypto: ccp - module parameter to limit the number of enabled CCPs
crypto: ccp - Add a module parameter to control registration for DMA
crypto: ccp - Include the module name in system log messages

Horia Geantă (8):
crypto: caam - defer probing until QMan is available
crypto: caam - fix concurrency issue in givencrypt descriptor
crypto: caam/qi - fix error handling in ERN handler
crypto: caam - fix return code in completion callbacks
crypto: caam - update IV only when crypto operation succeeds
crypto: caam - keep both virtual and dma key addresses
crypto: caam - fix MDHA key derivation for certain user key lengths
crypto: caam/qi - execute library only on DPAA 1.x

Iuliana Prodan (15):
crypto: ccree - check assoclen for rfc4543
crypto: bcm - check assoclen for rfc4543/rfc4106
crypto: gcm - helper functions for assoclen/authsize check
crypto: aes - helper function to validate key length for AES algorithms
crypto: caam - check key length
crypto: caam - check authsize
crypto: caam - check assoclen
crypto: caam - check zero-length input
crypto: caam - update rfc4106 sh desc to support zero length input
crypto: caam - free resources in case caam_rng registration failed
crypto: caam - execute module exit point only if necessary
crypto: caam - unregister algorithm only if the registration succeeded
crypto: caam - change return value in case CAAM has no MDHA
crypto: gcm - restrict assoclen for rfc4543
crypto: caam/qi - use print_hex_dump_debug function to print debug messages

Jonathan Neuschäfer (1):
Documentation: crypto: crypto_engine: Fix Sphinx warning

Mao Wenan (1):
crypto: hisilicon - select CRYPTO_LIB_DES while compiling SEC driver

Masahiro Yamada (3):
crypto: add header include guards
crypto: user - fix potential warnings in cryptouser.h
hwrng: timeriomem - add include guard to timeriomem-rng.h

Nathan Chancellor (1):
lib/mpi: Eliminate unused umul_ppmm definitions for MIPS

Nishka Dasgupta (1):
crypto: nx - Add of_node_put() before return in 842

Ondrej Mosnacek (1):
crypto: user - make NETLINK_CRYPTO work inside netns

Pascal van Leeuwen (36):
crypto: inside-secure - keep ivsize for DES ECB modes at 0
crypto: inside-secure - silently return -EINVAL for input error cases
crypto: inside-secure - fix incorrect skcipher output IV
crypto: inside-secure - fix scatter/gather list to descriptor conversion
crypto: inside-secure - fix EINVAL error (buf overflow) for AEAD decrypt
crypto: inside-secure: back out parts of earlier HMAC update workaround
crypto: inside-secure - let HW deal with initial hash digest
crypto: inside-secure - add support for arbitrary size hash/HMAC updates
crypto: inside-secure - add support for 0 length HMAC messages
crypto: inside-secure - add support for authenc(hmac(sha1),cbc(des3_ede))
crypto: inside-secure - added support for rfc3686(ctr(aes))
crypto: inside-secure - add support for authenc(hmac(sha*),rfc3686(ctr(aes))) suites
crypto: inside-secure -reduce hash byte counters to 64 bits
crypto: inside-secure - Use defines instead of some constants (cosmetic)
crypto: inside-secure - Remove redundant DES ECB & CBC keysize check
crypto: aead - Do not allow authsize=0 if auth. alg has digestsize>0
crypto: inside-secure - make driver selectable for non-Marvell hardware
crypto: inside-secure - Remove redundant algo to engine mapping code
crypto: inside-secure - add support for PCI based FPGA development board
crypto: inside-secure - add support for using the EIP197 without vendor firmware
crypto: inside-secure - Move static cipher alg & mode settings to init
crypto: inside-secure - Add support for the AES-XTS algorithm
crypto: inside-secure - Only enable algorithms advertised by the hardware
crypto: inside-secure - Made .cra_priority value a define
crypto: inside-secure - Minor optimization recognizing CTR is always AES
crypto: inside-secure - Minor code cleanup and optimizations
crypto: inside-secure - Added support for basic AES-GCM
crypto: inside-secure - Added AES-CFB support
crypto: inside-secure - Added AES-OFB support
crypto: inside-secure - Added support for basic AES-CCM
crypto: inside-secure - Add EIP97/EIP197 and endianness detection
crypto: inside-secure: Corrected configuration of EIP96_TOKEN_CTRL
crypto: inside-secure - Enable extended algorithms on newer HW
crypto: inside-secure - Base CD fetchcount on actual CD FIFO size
crypto: inside-secure - Base RD fetchcount on actual RD FIFO size
crypto: inside-secure - Probe transform record cache RAM sizes

Peter Zijlstra (1):
crypto: engine - Reduce default RT priority

Phani Kiran Hemadri (3):
crypto: cavium/nitrox - Add support for loading asymmetric crypto firmware
crypto: cavium/nitrox - Allocate asymmetric crypto command queues
crypto: cavium/nitrox - Configure asymmetric queue manager Hardware unit

Ryder Lee (4):
crypto: mediatek - move mtk_aes_find_dev() to the right place
crypto: mediatek - fix uninitialized value of gctx->textlen
crypto: mediatek - only treat EBUSY as transient if backlog
crypto: mediatek - add support to OFB/CFB mode

Sebastian Andrzej Siewior (1):
crypto: ux500 - Use spinlock_t instead of struct spinlock

Stephen Boyd (4):
crypto: drivers - Remove dev_err() usage after platform_get_irq()
hwrng: core - Freeze khwrng thread during suspend
random: Support freezable kthreads in add_hwgenerator_randomness()
random: Use wait_event_freezable() in add_hwgenerator_randomness()

Stephen Rothwell (1):
hwrng: n2-drv - fix typo

Thomas Gleixner (1):
crypto: api - Remove redundant #ifdef in crypto_yield()

Uri Shir (1):
crypto: ccree - enable CTS support in AES-XTS

Vakul Garg (2):
crypto: caam/qi2 - Increase napi budget to process more caam responses
crypto: caam/qi2 - Add printing dpseci fq stats using debugfs

Vic Wu (1):
crypto: mediatek - fix incorrect crypto key setting

Wei Yongjun (1):
crypto: cavium/zip - Add missing single_release()

YueHaibing (17):
crypto: artpec6 - use devm_platform_ioremap_resource() to simplify code
crypto: ccp - use devm_platform_ioremap_resource() to simplify code
crypto: exynos - use devm_platform_ioremap_resource() to simplify code
crypto: img-hash - use devm_platform_ioremap_resource() to simplify code
crypto: inside-secure - use devm_platform_ioremap_resource() to simplify code
crypto: mediatek - use devm_platform_ioremap_resource() to simplify code
crypto: picoxcell - use devm_platform_ioremap_resource() to simplify code
crypto: sunxi-ss - use devm_platform_ioremap_resource() to simplify code
crypto: rockchip - use devm_platform_ioremap_resource() to simplify code
crypto: stm32 - use devm_platform_ioremap_resource() to simplify code
crypto: qce - use devm_platform_ioremap_resource() to simplify code
crypto: qcom-rng - use devm_platform_ioremap_resource() to simplify code
crypto: aes-generic - remove unused variable 'rco_tab'
crypto: streebog - remove two unused variables
crypto: aegis128 - Fix -Wunused-const-variable warning
crypto: atmel - Fix -Wunused-const-variable warning
crypto: nx - remove unused variables 'nx_driver_string' and 'nx_driver_version'

Zhou Wang (12):
crypto: hisilicon - add queue management driver for HiSilicon QM module
crypto: hisilicon - add hardware SGL support
crypto: hisilicon - add HiSilicon ZIP accelerator support
crypto: hisilicon - add SRIOV support for ZIP
Documentation: Add debugfs doc for hisi_zip
crypto: hisilicon - add debugfs for ZIP and QM
MAINTAINERS: add maintainer for HiSilicon QM and ZIP controller driver
crypto: hisilicon - fix kbuild warnings
crypto: hisilicon - add dependency for CRYPTO_DEV_HISI_ZIP
crypto: hisilicon - init curr_sgl_dma to fix compile warning
crypto: hisilicon - add missing single_release
crypto: hisilicon - fix error handle in hisi_zip_create_req_q

zhong jiang (2):
crypto: arm64/aes - Use PTR_ERR_OR_ZERO rather than its implementation.
crypto: marvell - Use kzfree rather than its implementation

Documentation/ABI/testing/debugfs-hisi-zip | 50 +
Documentation/crypto/crypto_engine.rst | 1 +
.../devicetree/bindings/rng/timeriomem_rng.txt | 2 +-
Documentation/padata.txt | 12 +-
MAINTAINERS | 13 +-
arch/arm/crypto/Kconfig | 2 +-
arch/arm/crypto/aes-ce-core.S | 482 +-
arch/arm/crypto/aes-ce-glue.c | 545 +-
arch/arm/crypto/aes-cipher-core.S | 40 +-
arch/arm/crypto/aes-cipher-glue.c | 11 +-
arch/arm/crypto/aes-neonbs-core.S | 24 +-
arch/arm/crypto/aes-neonbs-glue.c | 160 +-
arch/arm/crypto/ghash-ce-glue.c | 80 +-
arch/arm/crypto/sha256_glue.c | 8 +-
arch/arm/crypto/sha256_neon_glue.c | 24 +-
arch/arm/include/asm/Kbuild | 1 -
arch/arm64/boot/dts/freescale/imx8mq.dtsi | 30 +
arch/arm64/crypto/Kconfig | 10 +-
arch/arm64/crypto/aes-ce-ccm-glue.c | 18 +-
arch/arm64/crypto/aes-ce-glue.c | 7 +-
arch/arm64/crypto/aes-ce.S | 3 +
arch/arm64/crypto/aes-cipher-core.S | 40 +-
arch/arm64/crypto/aes-cipher-glue.c | 11 +-
arch/arm64/crypto/aes-ctr-fallback.h | 50 -
arch/arm64/crypto/aes-glue.c | 470 +-
arch/arm64/crypto/aes-modes.S | 135 +-
arch/arm64/crypto/aes-neon.S | 79 +-
arch/arm64/crypto/aes-neonbs-core.S | 9 +-
arch/arm64/crypto/aes-neonbs-glue.c | 140 +-
arch/arm64/crypto/ghash-ce-glue.c | 30 +-
arch/arm64/crypto/sha256-glue.c | 24 +-
arch/powerpc/include/asm/Kbuild | 1 -
arch/s390/crypto/aes_s390.c | 16 +-
arch/s390/crypto/des_s390.c | 25 +-
arch/s390/crypto/ghash_s390.c | 2 +-
arch/s390/crypto/sha256_s390.c | 8 +-
arch/s390/purgatory/Makefile | 4 +-
arch/s390/purgatory/purgatory.c | 2 +-
arch/sparc/crypto/aes_glue.c | 8 +-
arch/sparc/crypto/des_glue.c | 37 +-
arch/x86/crypto/Makefile | 21 -
arch/x86/crypto/aegis128l-aesni-asm.S | 823 ---
arch/x86/crypto/aegis128l-aesni-glue.c | 293 --
arch/x86/crypto/aegis256-aesni-asm.S | 700 ---
arch/x86/crypto/aegis256-aesni-glue.c | 293 --
arch/x86/crypto/aes-i586-asm_32.S | 362 --
arch/x86/crypto/aes-x86_64-asm_64.S | 185 -
arch/x86/crypto/aes_glue.c | 70 -
arch/x86/crypto/aesni-intel_glue.c | 46 +-
arch/x86/crypto/camellia_aesni_avx2_glue.c | 4 +-
arch/x86/crypto/camellia_aesni_avx_glue.c | 4 +-
arch/x86/crypto/cast6_avx_glue.c | 4 +-
arch/x86/crypto/des3_ede_glue.c | 38 +-
arch/x86/crypto/ghash-clmulni-intel_glue.c | 3 +-
arch/x86/crypto/glue_helper.c | 67 +-
arch/x86/crypto/morus1280-avx2-asm.S | 619 ---
arch/x86/crypto/morus1280-avx2-glue.c | 62 -
arch/x86/crypto/morus1280-sse2-asm.S | 893 ----
arch/x86/crypto/morus1280-sse2-glue.c | 61 -
arch/x86/crypto/morus1280_glue.c | 205 -
arch/x86/crypto/morus640-sse2-asm.S | 612 ---
arch/x86/crypto/morus640-sse2-glue.c | 61 -
arch/x86/crypto/morus640_glue.c | 200 -
arch/x86/crypto/serpent_avx2_glue.c | 4 +-
arch/x86/crypto/serpent_avx_glue.c | 4 +-
arch/x86/crypto/sha256_ssse3_glue.c | 12 +-
arch/x86/crypto/twofish_avx_glue.c | 4 +-
arch/x86/include/asm/crypto/aes.h | 12 -
arch/x86/include/asm/crypto/glue_helper.h | 2 +-
arch/x86/purgatory/Makefile | 4 +-
arch/x86/purgatory/purgatory.c | 2 +-
crypto/Kconfig | 164 +-
crypto/Makefile | 26 +-
crypto/aead.c | 3 +-
crypto/aegis.h | 39 +-
crypto/{aegis128.c => aegis128-core.c} | 74 +-
crypto/aegis128-neon-inner.c | 212 +
crypto/aegis128-neon.c | 49 +
crypto/aegis128l.c | 522 --
crypto/aegis256.c | 473 --
crypto/aes_generic.c | 169 +-
crypto/aes_ti.c | 313 +-
crypto/cryptd.c | 44 +-
crypto/crypto_engine.c | 2 +-
crypto/crypto_user_base.c | 37 +-
crypto/crypto_user_stat.c | 4 +-
crypto/des_generic.c | 945 +---
crypto/fips.c | 11 +
crypto/gcm.c | 47 +-
crypto/ghash-generic.c | 31 +-
crypto/morus1280.c | 542 --
crypto/morus640.c | 533 --
crypto/pcrypt.c | 167 +-
crypto/sha256_generic.c | 224 +-
crypto/skcipher.c | 42 +-
crypto/streebog_generic.c | 46 -
crypto/tcrypt.c | 16 +
crypto/testmgr.c | 52 +-
crypto/testmgr.h | 5284 ++++++--------------
crypto/xts.c | 152 +-
drivers/char/hw_random/atmel-rng.c | 3 +-
drivers/char/hw_random/cavium-rng-vf.c | 11 +-
drivers/char/hw_random/core.c | 5 +-
drivers/char/hw_random/exynos-trng.c | 3 +-
drivers/char/hw_random/imx-rngc.c | 4 +-
drivers/char/hw_random/mxc-rnga.c | 4 +-
drivers/char/hw_random/n2-drv.c | 4 +-
drivers/char/hw_random/nomadik-rng.c | 3 +-
drivers/char/hw_random/omap-rng.c | 3 +-
drivers/char/hw_random/powernv-rng.c | 10 +-
drivers/char/hw_random/st-rng.c | 4 +-
drivers/char/hw_random/timeriomem-rng.c | 4 +-
drivers/char/hw_random/xgene-rng.c | 4 +-
drivers/char/random.c | 4 +-
drivers/crypto/Kconfig | 56 +-
drivers/crypto/amcc/crypto4xx_alg.c | 24 +-
drivers/crypto/atmel-aes.c | 1 -
drivers/crypto/atmel-i2c.c | 12 +
drivers/crypto/atmel-i2c.h | 12 -
drivers/crypto/atmel-sha.c | 1 -
drivers/crypto/atmel-sha204a.c | 3 +-
drivers/crypto/atmel-tdes.c | 29 +-
drivers/crypto/axis/artpec6_crypto.c | 4 +-
drivers/crypto/bcm/cipher.c | 92 +-
drivers/crypto/caam/Kconfig | 4 +-
drivers/crypto/caam/Makefile | 1 +
drivers/crypto/caam/caamalg.c | 268 +-
drivers/crypto/caam/caamalg_desc.c | 56 +-
drivers/crypto/caam/caamalg_desc.h | 4 +-
drivers/crypto/caam/caamalg_qi.c | 257 +-
drivers/crypto/caam/caamalg_qi2.c | 325 +-
drivers/crypto/caam/caamalg_qi2.h | 31 +-
drivers/crypto/caam/caamhash.c | 116 +-
drivers/crypto/caam/caamhash_desc.c | 5 +-
drivers/crypto/caam/caamhash_desc.h | 2 +-
drivers/crypto/caam/caampkc.c | 99 +-
drivers/crypto/caam/caamrng.c | 19 +-
drivers/crypto/caam/compat.h | 2 +-
drivers/crypto/caam/ctrl.c | 255 +-
drivers/crypto/caam/desc_constr.h | 81 +-
drivers/crypto/caam/dpseci-debugfs.c | 79 +
drivers/crypto/caam/dpseci-debugfs.h | 18 +
drivers/crypto/caam/error.c | 64 +-
drivers/crypto/caam/error.h | 2 +-
drivers/crypto/caam/intern.h | 32 +-
drivers/crypto/caam/jr.c | 124 +-
drivers/crypto/caam/key_gen.c | 14 +-
drivers/crypto/caam/pdb.h | 16 +-
drivers/crypto/caam/pkc_desc.c | 8 +-
drivers/crypto/caam/qi.c | 10 +-
drivers/crypto/caam/qi.h | 26 -
drivers/crypto/caam/regs.h | 141 +-
drivers/crypto/cavium/cpt/cptvf_algs.c | 26 +-
drivers/crypto/cavium/nitrox/Kconfig | 2 +-
drivers/crypto/cavium/nitrox/nitrox_csr.h | 235 +-
drivers/crypto/cavium/nitrox/nitrox_debugfs.c | 3 +-
drivers/crypto/cavium/nitrox/nitrox_dev.h | 8 +-
drivers/crypto/cavium/nitrox/nitrox_hal.c | 158 +-
drivers/crypto/cavium/nitrox/nitrox_hal.h | 6 +-
drivers/crypto/cavium/nitrox/nitrox_lib.c | 66 +-
drivers/crypto/cavium/nitrox/nitrox_main.c | 148 +-
drivers/crypto/cavium/nitrox/nitrox_req.h | 30 +
drivers/crypto/cavium/nitrox/nitrox_skcipher.c | 4 +-
drivers/crypto/cavium/nitrox/nitrox_sriov.c | 3 +
drivers/crypto/cavium/zip/zip_main.c | 3 +
drivers/crypto/ccp/Kconfig | 9 +
drivers/crypto/ccp/Makefile | 4 +-
drivers/crypto/ccp/ccp-crypto-aes-cmac.c | 25 +-
drivers/crypto/ccp/ccp-crypto-aes-xts.c | 3 -
drivers/crypto/ccp/ccp-crypto-des3.c | 7 +-
drivers/crypto/ccp/ccp-crypto-main.c | 4 +-
drivers/crypto/ccp/ccp-crypto.h | 8 +-
drivers/crypto/ccp/ccp-dev-v3.c | 3 +-
drivers/crypto/ccp/ccp-dev-v5.c | 26 +-
drivers/crypto/ccp/ccp-dev.c | 29 +-
drivers/crypto/ccp/ccp-dev.h | 3 +-
drivers/crypto/ccp/ccp-dmaengine.c | 13 +-
drivers/crypto/ccp/ccp-ops.c | 56 +-
drivers/crypto/ccp/psp-dev.h | 1 -
drivers/crypto/ccp/sp-dev.h | 1 -
drivers/crypto/ccp/sp-platform.c | 4 +-
drivers/crypto/ccree/Makefile | 2 +-
drivers/crypto/ccree/cc_aead.c | 129 +-
drivers/crypto/ccree/cc_aead.h | 3 +-
drivers/crypto/ccree/cc_buffer_mgr.c | 21 -
drivers/crypto/ccree/cc_buffer_mgr.h | 2 -
drivers/crypto/ccree/cc_cipher.c | 31 +-
drivers/crypto/ccree/cc_driver.c | 18 +-
drivers/crypto/ccree/cc_driver.h | 10 -
drivers/crypto/ccree/cc_fips.c | 31 +-
drivers/crypto/ccree/cc_hash.c | 153 +-
drivers/crypto/ccree/cc_ivgen.c | 276 -
drivers/crypto/ccree/cc_ivgen.h | 55 -
drivers/crypto/ccree/cc_pm.c | 2 -
drivers/crypto/ccree/cc_request_mgr.c | 47 +-
drivers/crypto/chelsio/Kconfig | 1 +
drivers/crypto/chelsio/chcr_algo.c | 46 +-
drivers/crypto/chelsio/chcr_algo.h | 20 +-
drivers/crypto/chelsio/chcr_crypto.h | 1 -
drivers/crypto/chelsio/chcr_ipsec.c | 19 +-
drivers/crypto/chelsio/chtls/chtls_hw.c | 20 +-
drivers/crypto/exynos-rng.c | 4 +-
drivers/crypto/hifn_795x.c | 32 +-
drivers/crypto/hisilicon/Kconfig | 25 +
drivers/crypto/hisilicon/Makefile | 3 +
drivers/crypto/hisilicon/qm.c | 1913 +++++++
drivers/crypto/hisilicon/qm.h | 215 +
drivers/crypto/hisilicon/sec/sec_algs.c | 18 +-
drivers/crypto/hisilicon/sgl.c | 214 +
drivers/crypto/hisilicon/sgl.h | 24 +
drivers/crypto/hisilicon/zip/Makefile | 2 +
drivers/crypto/hisilicon/zip/zip.h | 71 +
drivers/crypto/hisilicon/zip/zip_crypto.c | 653 +++
drivers/crypto/hisilicon/zip/zip_main.c | 1013 ++++
drivers/crypto/img-hash.c | 5 +-
drivers/crypto/inside-secure/safexcel.c | 1153 ++++-
drivers/crypto/inside-secure/safexcel.h | 226 +-
drivers/crypto/inside-secure/safexcel_cipher.c | 1532 ++++--
drivers/crypto/inside-secure/safexcel_hash.c | 625 +--
drivers/crypto/inside-secure/safexcel_ring.c | 11 +-
drivers/crypto/ixp4xx_crypto.c | 27 +-
drivers/crypto/marvell/cipher.c | 27 +-
drivers/crypto/marvell/hash.c | 3 +-
drivers/crypto/mediatek/mtk-aes.c | 143 +-
drivers/crypto/mediatek/mtk-platform.c | 7 +-
drivers/crypto/mediatek/mtk-sha.c | 4 +-
drivers/crypto/mxs-dcp.c | 8 +-
drivers/crypto/n2_core.c | 42 +-
drivers/crypto/nx/nx-842-powernv.c | 1 +
drivers/crypto/nx/nx.h | 3 -
drivers/crypto/omap-aes.c | 1 -
drivers/crypto/omap-des.c | 28 +-
drivers/crypto/omap-sham.c | 1 -
drivers/crypto/padlock-aes.c | 10 +-
drivers/crypto/picoxcell_crypto.c | 29 +-
drivers/crypto/qat/qat_common/adf_common_drv.h | 2 +-
drivers/crypto/qce/ablkcipher.c | 55 +-
drivers/crypto/qce/core.c | 4 +-
drivers/crypto/qcom-rng.c | 4 +-
drivers/crypto/rockchip/rk3288_crypto.c | 4 +-
drivers/crypto/rockchip/rk3288_crypto.h | 2 +-
drivers/crypto/rockchip/rk3288_crypto_ablkcipher.c | 21 +-
drivers/crypto/s5p-sss.c | 7 +-
drivers/crypto/sahara.c | 4 +-
drivers/crypto/stm32/Kconfig | 2 +-
drivers/crypto/stm32/stm32-crc32.c | 4 +-
drivers/crypto/stm32/stm32-cryp.c | 38 +-
drivers/crypto/stm32/stm32-hash.c | 4 +-
drivers/crypto/sunxi-ss/sun4i-ss-cipher.c | 26 +-
drivers/crypto/sunxi-ss/sun4i-ss-core.c | 4 +-
drivers/crypto/sunxi-ss/sun4i-ss.h | 2 +-
drivers/crypto/talitos.c | 38 +-
drivers/crypto/ux500/Kconfig | 2 +-
drivers/crypto/ux500/cryp/cryp.c | 6 +
drivers/crypto/ux500/cryp/cryp.h | 4 +-
drivers/crypto/ux500/cryp/cryp_core.c | 39 +-
drivers/crypto/ux500/hash/hash_alg.h | 4 +-
drivers/crypto/ux500/hash/hash_core.c | 12 +-
drivers/crypto/virtio/virtio_crypto_algs.c | 4 +-
drivers/crypto/vmx/aes_xts.c | 2 +-
fs/cifs/Kconfig | 2 +-
fs/cifs/cifsfs.c | 1 -
fs/cifs/smbencrypt.c | 18 +-
include/asm-generic/Kbuild | 2 +
include/crypto/aes.h | 58 +-
include/crypto/algapi.h | 2 -
include/crypto/ctr.h | 50 +
include/crypto/des.h | 77 +-
include/crypto/gcm.h | 55 +
include/crypto/ghash.h | 2 +-
include/crypto/internal/cryptouser.h | 7 +-
include/crypto/internal/des.h | 152 +
include/crypto/internal/skcipher.h | 5 +
include/crypto/morus1280_glue.h | 97 -
include/crypto/morus640_glue.h | 97 -
include/crypto/morus_common.h | 18 -
include/crypto/sha.h | 47 +
include/crypto/sha1_base.h | 5 +
include/crypto/sha256_base.h | 29 +-
include/crypto/sha512_base.h | 5 +
include/crypto/sm3_base.h | 5 +
include/linux/fips.h | 7 +
include/linux/padata.h | 29 +-
include/linux/sha256.h | 28 -
include/linux/timeriomem-rng.h | 5 +
include/linux/workqueue.h | 4 +
include/net/net_namespace.h | 3 +
include/uapi/linux/cryptouser.h | 5 +
kernel/padata.c | 307 +-
kernel/workqueue.c | 25 +-
lib/crypto/Makefile | 9 +
lib/crypto/aes.c | 356 ++
lib/crypto/des.c | 902 ++++
lib/{ => crypto}/sha256.c | 150 +-
lib/mpi/longlong.h | 36 +-
net/bluetooth/Kconfig | 3 +-
net/bluetooth/smp.c | 103 +-
tools/crypto/getstat.c | 294 --
298 files changed, 15611 insertions(+), 18397 deletions(-)
create mode 100644 Documentation/ABI/testing/debugfs-hisi-zip
delete mode 100644 arch/arm64/crypto/aes-ctr-fallback.h
delete mode 100644 arch/x86/crypto/aegis128l-aesni-asm.S
delete mode 100644 arch/x86/crypto/aegis128l-aesni-glue.c
delete mode 100644 arch/x86/crypto/aegis256-aesni-asm.S
delete mode 100644 arch/x86/crypto/aegis256-aesni-glue.c
delete mode 100644 arch/x86/crypto/aes-i586-asm_32.S
delete mode 100644 arch/x86/crypto/aes-x86_64-asm_64.S
delete mode 100644 arch/x86/crypto/morus1280-avx2-asm.S
delete mode 100644 arch/x86/crypto/morus1280-avx2-glue.c
delete mode 100644 arch/x86/crypto/morus1280-sse2-asm.S
delete mode 100644 arch/x86/crypto/morus1280-sse2-glue.c
delete mode 100644 arch/x86/crypto/morus1280_glue.c
delete mode 100644 arch/x86/crypto/morus640-sse2-asm.S
delete mode 100644 arch/x86/crypto/morus640-sse2-glue.c
delete mode 100644 arch/x86/crypto/morus640_glue.c
delete mode 100644 arch/x86/include/asm/crypto/aes.h
rename crypto/{aegis128.c => aegis128-core.c} (87%)
create mode 100644 crypto/aegis128-neon-inner.c
create mode 100644 crypto/aegis128-neon.c
delete mode 100644 crypto/aegis128l.c
delete mode 100644 crypto/aegis256.c
delete mode 100644 crypto/morus1280.c
delete mode 100644 crypto/morus640.c
create mode 100644 drivers/crypto/caam/dpseci-debugfs.c
create mode 100644 drivers/crypto/caam/dpseci-debugfs.h
delete mode 100644 drivers/crypto/ccree/cc_ivgen.c
delete mode 100644 drivers/crypto/ccree/cc_ivgen.h
create mode 100644 drivers/crypto/hisilicon/qm.c
create mode 100644 drivers/crypto/hisilicon/qm.h
create mode 100644 drivers/crypto/hisilicon/sgl.c
create mode 100644 drivers/crypto/hisilicon/sgl.h
create mode 100644 drivers/crypto/hisilicon/zip/Makefile
create mode 100644 drivers/crypto/hisilicon/zip/zip.h
create mode 100644 drivers/crypto/hisilicon/zip/zip_crypto.c
create mode 100644 drivers/crypto/hisilicon/zip/zip_main.c
create mode 100644 include/crypto/internal/des.h
delete mode 100644 include/crypto/morus1280_glue.h
delete mode 100644 include/crypto/morus640_glue.h
delete mode 100644 include/crypto/morus_common.h
delete mode 100644 include/linux/sha256.h
create mode 100644 lib/crypto/aes.c
create mode 100644 lib/crypto/des.c
rename lib/{ => crypto}/sha256.c (66%)
delete mode 100644 tools/crypto/getstat.c

Thanks,
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt


2019-09-18 19:59:33

by pr-tracker-bot

[permalink] [raw]
Subject: Re: [GIT PULL] Crypto Update for 5.4

The pull request you sent on Mon, 16 Sep 2019 18:49:01 +1000:

> git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/8b53c76533aa4356602aea98f98a2f3b4051464c

Thank you!

--
Deet-doot-dot, I am a bot.
https://korg.wiki.kernel.org/userdoc/prtracker

2019-09-24 16:46:00

by Herbert Xu

[permalink] [raw]
Subject: [GIT PULL] Crypto Fixes for 5.4

Hi Linus:

This push fixes the following issues:

- Potential boot hang in hwrng.
- Missing switch/break in talitos.
- Bugs and warnings in hisilicon.
- Build warning in inside-secure.

The following changes since commit 9575d1a5c0780ea26ff8dd29c94a32be32ce3c85:

crypto: caam - Cast to long first before pointer conversion (2019-09-13 21:20:47 +1000)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

for you to fetch changes up to bf6a7a5ad6fa69e48b735be75eeb90569d9584bb:

crypto: hisilicon - avoid unused function warning (2019-09-20 23:05:33 +1000)

----------------------------------------------------------------
Arnd Bergmann (1):
crypto: hisilicon - avoid unused function warning

Gustavo A. R. Silva (1):
crypto: talitos - fix missing break in switch statement

Laurent Vivier (1):
hwrng: core - don't wait on add_early_randomness()

Pascal van Leeuwen (1):
crypto: inside-secure - Fix unused variable warning when CONFIG_PCI=n

Yunfeng Ye (3):
crypto: hisilicon - Fix double free in sec_free_hw_sgl()
crypto: hisilicon - Matching the dma address for dma_pool_free()
crypto: hisilicon - Fix return value check in hisi_zip_acompress()

drivers/char/hw_random/core.c | 2 +-
drivers/crypto/hisilicon/sec/sec_algs.c | 43 ++++++++++++++-----------------
drivers/crypto/hisilicon/zip/zip_crypto.c | 4 +--
drivers/crypto/hisilicon/zip/zip_main.c | 7 ++---
drivers/crypto/inside-secure/safexcel.c | 40 ++++++++++++++++++++--------
drivers/crypto/talitos.c | 1 +
6 files changed, 54 insertions(+), 43 deletions(-)

Thanks,
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

2019-09-25 16:35:28

by pr-tracker-bot

[permalink] [raw]
Subject: Re: [GIT PULL] Crypto Fixes for 5.4

The pull request you sent on Mon, 23 Sep 2019 15:05:15 +1000:

> git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/3c6a6910a81eae3566bb5fef6ea0f624382595e6

Thank you!

--
Deet-doot-dot, I am a bot.
https://korg.wiki.kernel.org/userdoc/prtracker

2019-10-10 15:46:30

by pr-tracker-bot

[permalink] [raw]
Subject: Re: [GIT PULL] Crypto Fixes for 5.4

The pull request you sent on Thu, 10 Oct 2019 23:38:49 +1100:

> git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/fb20da6af705597cefcf05fc99e48d5c066dbdff

Thank you!

--
Deet-doot-dot, I am a bot.
https://korg.wiki.kernel.org/userdoc/prtracker

2019-11-25 03:46:28

by Herbert Xu

[permalink] [raw]
Subject: [GIT PULL] Crypto Update for 5.5

Hi Linus:

API:

- Add library interfaces of certain crypto algorithms for WireGuard.
- Remove the obsolete ablkcipher and blkcipher interfaces.
- Move add_early_randomness() out of rng_mutex.

Algorithms:

- Add blake2b shash algorithm.
- Add blake2s shash algorithm.
- Add curve25519 kpp algorithm.
- Implement 4 way interleave in arm64/gcm-ce.
- Implement ciphertext stealing in powerpc/spe-xts.
- Add Eric Biggers's scalar accelerated ChaCha code for ARM.
- Add accelerated 32r2 code from Zinc for MIPS.
- Add OpenSSL/CRYPTOGRAMS poly1305 implementation for ARM and MIPS.

Drivers:

- Fix entropy reading failures in ks-sa.
- Add support for sam9x60 in atmel.
- Add crypto accelerator for amlogic GXL.
- Add sun8i-ce Crypto Engine.
- Add sun8i-ss cryptographic offloader.
- Add a host of algorithms to inside-secure.
- Add NPCM RNG driver.
- add HiSilicon HPRE accelerator.
- Add HiSilicon TRNG driver.

Please note that there is a conflict with mainline due to the
modification of arch/arm/crypto/Kconfig by the crypto tree for
v5.4. The resolution should be fairly trivial though.

The following changes since commit 54ecb8f7028c5eb3d740bb82b0f1d90f2df63c5c:

Linux 5.4-rc1 (2019-09-30 10:35:40 -0700)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git

for you to fetch changes up to 4ee812f6143d78d8ba1399671d78c8d78bf2817c:

crypto: vmx - Avoid weird build failures (2019-11-22 18:48:39 +0800)

----------------------------------------------------------------
Alexander E. Patrakov (1):
crypto: jitter - fix comments

Alexander Sverdlin (1):
hwrng: ks-sa - Add minimum sleep time before ready-polling

Andrey Smirnov (6):
crypto: caam - use devres to unmap memory
crypto: caam - use devres to remove debugfs
crypto: caam - use devres to de-initialize the RNG
crypto: caam - use devres to de-initialize QI
crypto: caam - use devres to populate platform devices
crypto: caam - populate platform devices last

Ard Biesheuvel (66):
crypto: testmgr - add another gcm(aes) testcase
crypto: arm64/gcm-ce - implement 4 way interleave
crypto: aegis128-neon - use Clang compatible cflags for ARM
crypto: aegis128/simd - build 32-bit ARM for v8 architecture explicitly
crypto: geode-aes - switch to skcipher for cbc(aes) fallback
crypto: arm - use Kconfig based compiler checks for crypto opcodes
crypto: aegis128 - avoid function pointers for parameterization
crypto: aegis128 - duplicate init() and final() hooks in SIMD code
crypto: powerpc/spe-xts - implement support for ciphertext stealing
crypto: ecdh - fix big endian bug in ECC library
crypto: lib - tidy up lib/crypto Kconfig and Makefile
crypto: chacha - move existing library code into lib/crypto
crypto: x86/chacha - depend on generic chacha library instead of crypto driver
crypto: x86/chacha - expose SIMD ChaCha routine as library function
crypto: arm64/chacha - depend on generic chacha library instead of crypto driver
crypto: arm64/chacha - expose arm64 ChaCha routine as library function
crypto: arm/chacha - import Eric Biggers's scalar accelerated ChaCha code
crypto: arm/chacha - remove dependency on generic ChaCha driver
crypto: arm/chacha - expose ARM ChaCha routine as library function
crypto: mips/chacha - wire up accelerated 32r2 code from Zinc
crypto: chacha - unexport chacha_generic routines
crypto: poly1305 - move core routines into a separate library
crypto: x86/poly1305 - unify Poly1305 state struct with generic code
crypto: poly1305 - expose init/update/final library interface
crypto: x86/poly1305 - depend on generic library not generic shash
crypto: x86/poly1305 - expose existing driver as poly1305 library
crypto: arm64/poly1305 - incorporate OpenSSL/CRYPTOGAMS NEON implementation
crypto: arm/poly1305 - incorporate OpenSSL/CRYPTOGAMS NEON implementation
crypto: mips/poly1305 - incorporate OpenSSL/CRYPTOGAMS optimized implementation
int128: move __uint128_t compiler test to Kconfig
crypto: testmgr - add test cases for Blake2s
crypto: blake2s - implement generic shash driver
crypto: curve25519 - add kpp selftest
crypto: curve25519 - implement generic KPP driver
crypto: lib/curve25519 - work around Clang stack spilling issue
crypto: chacha20poly1305 - import construction and selftest from Zinc
crypto: lib/chacha20poly1305 - reimplement crypt_from_sg() routine
crypto: virtio - implement missing support for output IVs
crypto: virtio - deal with unsupported input sizes
crypto: virtio - switch to skcipher API
crypto: ccp - switch from ablkcipher to skcipher
crypto: omap - switch to skcipher API
crypto: ux500 - switch to skcipher API
crypto: s5p - switch to skcipher API
crypto: atmel-aes - switch to skcipher API
crypto: atmel-tdes - switch to skcipher API
crypto: bcm-spu - switch to skcipher API
crypto: nitrox - remove cra_type reference to ablkcipher
crypto: cavium/cpt - switch to skcipher API
crypto: chelsio - switch to skcipher API
crypto: hifn - switch to skcipher API
crypto: ixp4xx - switch to skcipher API
crypto: mxs - switch to skcipher API
crypto: mediatek - switch to skcipher API
crypto: sahara - switch to skcipher API
crypto: picoxcell - switch to skcipher API
crypto: qce - switch to skcipher API
crypto: stm32 - switch to skcipher API
crypto: niagara2 - switch to skcipher API
crypto: rockchip - switch to skcipher API
crypto: talitos - switch to skcipher API
crypto: qat - switch to skcipher API
crypto: marvell/cesa - rename blkcipher to skcipher
crypto: nx - remove stale comment referring to the blkcipher walk API
crypto: ablkcipher - remove deprecated and unused ablkcipher support
crypto: ccree - update a stale reference to ablkcipher

Arnd Bergmann (4):
crypto: hisilicon - allow compile-testing on x86
crypto: inside-secure - Fix a maybe-uninitialized warning
crypto: inside-secure - Remove #ifdef checks
hwrng: omap3-rom - Fix unused function warnings

Ashish Kalra (1):
crypto: ccp - Retry SEV INIT command in case of integrity check failure.

Ayush Sawal (1):
crypto: af_alg - cast ki_complete ternary op to int

Ben Dooks (2):
crypto: jitter - add header to fix buildwarnings
hwrng: ka-sa - fix __iomem on registers

Ben Dooks (Codethink) (1):
crypto: atmel - fix data types for __be{32,64}

Brijesh Singh (1):
crypto: ccp - add SEV command privilege separation

Chen Wandun (1):
crypto: essiv - remove redundant null pointer check before kfree

Christian Lamparter (2):
crypto: amcc - restore CRYPTO_AES dependency
crypto: crypto4xx - fix double-free in crypto4xx_destroy_sdr

Christophe JAILLET (1):
crypto: chtls - simplify a bit 'create_flowc_wr_skb()'

Christophe Leroy (1):
crypto: talitos - fix hash result for VMAP_STACK

Chuhong Yuan (1):
crypto: inside-secure - Add missed clk_disable_unprepare

Codrin Ciubotariu (2):
dt-bindings: rng: atmel-trng: add new compatible
hwrng: atmel - add new platform support for sam9x60

Colin Ian King (4):
crypto: inside-secure - fix spelling mistake "algorithmn" -> "algorithm"
crypto: mediatek - remove redundant bitwise-or
crypto: amlogic - ensure error variable err is set before returning it
crypto: allwinner - fix some spelling mistakes

Corentin Labbe (20):
crypto: sun4i-ss - simplify enable/disable of the device
crypto: sun4i-ss - enable pm_runtime
dt-bindings: crypto: Add DT bindings documentation for amlogic-crypto
MAINTAINERS: Add myself as maintainer of amlogic crypto
crypto: amlogic - Add crypto accelerator for amlogic GXL
crypto: allwinner - Add allwinner subdirectory
crypto: allwinner - Add sun8i-ce Crypto Engine
crypto: sun4i-ss - Move to Allwinner directory
crypto: allwinner - Add sun8i-ss cryptographic offloader
dt-bindings: crypto: Add DT bindings documentation for sun8i-ss Security System
crypto: amlogic - fix two resources leak
MAINTAINERS: add linux-amlogic list for amlogic crypto
crypto: tcrypt - constify check alg list
crypto: sun4i-ss - Fix 64-bit size_t warnings on sun4i-ss-hash.c
crypto: sun4i-ss - remove dependency on not 64BIT
crypto: sun4i-ss - use crypto_ahash_digestsize
crypto: sun4i-ss - hide the Invalid keylen message
crypto: sun4i-ss - fix big endian issues
crypto: sun8i-ce - enable working on big endian
crypto: amlogic - enable working on big endian kernel

David Sterba (9):
crypto: blake2b - add blake2b generic implementation
crypto: testmgr - add test vectors for blake2b
crypto: blake2b - merge _final implementation to callback
crypto: blake2b - merge blake2 init to api callback
crypto: blake2b - simplify key init
crypto: blake2b - delete unused structs or members
crypto: blake2b - open code set last block helper
crypto: blake2b - merge _update to api callback
crypto: blake2b - rename tfm context and _setkey callback

Eneas U de Queiroz (1):
crypto: qce - add CRYPTO_ALG_KERN_DRIVER_ONLY flag

Eric Biggers (24):
crypto: geode-aes - convert to skcipher API and make thread-safe
crypto: sparc/aes - convert to skcipher API
crypto: sparc/camellia - convert to skcipher API
crypto: sparc/des - convert to skcipher API
crypto: s390/aes - convert to skcipher API
crypto: s390/paes - convert to skcipher API
crypto: s390/des - convert to skcipher API
crypto: padlock-aes - convert to skcipher API
crypto: nx - don't abuse blkcipher_desc to pass iv around
crypto: nx - convert AES-ECB to skcipher API
crypto: nx - convert AES-CBC to skcipher API
crypto: nx - convert AES-CTR to skcipher API
crypto: powerpc - don't unnecessarily use atomic scatterwalk
crypto: powerpc - don't set ivsize for AES-ECB
crypto: powerpc - convert SPE AES algorithms to skcipher API
crypto: skcipher - unify the crypto_has_skcipher*() functions
crypto: skcipher - remove crypto_has_ablkcipher()
crypto: skcipher - rename crypto_skcipher_type2 to crypto_skcipher_type
crypto: skcipher - remove the "blkcipher" algorithm type
crypto: skcipher - rename the crypto_blkcipher module and kconfig option
crypto: mips/chacha - select CRYPTO_SKCIPHER, not CRYPTO_BLKCIPHER
crypto: chacha_generic - remove unnecessary setkey() functions
crypto: x86/chacha - only unregister algorithms if registered
crypto: lib/chacha20poly1305 - use chacha20_crypt()

Geert Uytterhoeven (1):
crypto: nx - Improve debugfs_create_u{32,64}() handling for atomics

Greg Kroah-Hartman (1):
crypto: hisilicon - no need to check return value of debugfs_create functions

Hao Fang (1):
crypto: hisilicon - add vfs_num module param for zip

Herbert Xu (7):
crypto: algif_skcipher - Use chunksize instead of blocksize
crypto: atmel - Fix authenc support when it is set to m
crypto: atmel - Fix remaining endianess warnings
crypto: api - Add softdep on cryptomgr
crypto: aead - Split out geniv into its own module
crypto: sun4i-ss - Fix 64-bit size_t warnings
hwrng: ks-sa - Enable COMPILE_TEST

Hook, Gary (2):
crypto: ccp - Change a message to reflect status instead of failure
crypto: ccp - Verify access to device registers before initializing

Iuliana Prodan (1):
crypto: caam - use mapped_{src,dst}_nents for descriptor

Jason A. Donenfeld (7):
crypto: mips/chacha - import 32r2 ChaCha code from Zinc
crypto: blake2s - generic C library implementation and selftest
crypto: blake2s - x86_64 SIMD implementation
crypto: curve25519 - generic C library implementations
crypto: curve25519 - x86_64 library and KPP implementations
crypto: arm/curve25519 - import Bernstein and Schwabe's Curve25519 ARM implementation
crypto: arm/curve25519 - wire up NEON implementation

Laurent Vivier (2):
hwrng: core - move add_early_randomness() out of rng_mutex
hwrng: core - Fix use-after-free warning in hwrng_register()

Longfang Liu (1):
Documentation: add DebugFS doc for HiSilicon SEC

Mark Salter (1):
crypto: ccp - fix uninitialized list head

Markus Elfring (2):
hwrng: iproc-rng200 - Use devm_platform_ioremap_resource() in iproc_rng200_probe()
hwrng: mediatek - Use devm_platform_ioremap_resource() in mtk_rng_probe()

Michael Ellerman (1):
crypto: vmx - Avoid weird build failures

Nagadheeraj Rottela (3):
crypto: cavium/nitrox - check assoclen and authsize for gcm(aes) cipher
crypto: cavium/nitrox - Fix cbc ciphers self test failures
crypto: cavium/nitrox - Add mailbox message to get mcode info in VF

Navid Emamdoost (3):
crypto: ccp - Release all allocated memory if sha type is invalid
crypto: user - fix memory leak in crypto_report
crypto: user - fix memory leak in crypto_reportstat

Pascal van Leeuwen (37):
crypto: inside-secure - Added support for CRC32
crypto: inside-secure - Added support for the AES CBCMAC ahash
crypto: inside-secure - Added support for the AES XCBC ahash
crypto: inside-secure - Added support for the AES-CMAC ahash
crypto: inside-secure - Added support for the CHACHA20 skcipher
crypto: inside-secure - Add support for the Chacha20-Poly1305 AEAD
crypto: inside-secure - Add CRYPTO_CHACHA20POLY1305 to CRYPTO_DEV_SAFEXCEL
crypto: inside-secure - Added support for basic SM3 ahash
crypto: inside-secure - Added support for HMAC-SM3 ahash
crypto: testmgr - Added testvectors for the hmac(sm3) ahash
crypto: inside-secure - Add support for the ecb(sm4) skcipher
crypto: inside-secure - Add support for the cbc(sm4) skcipher
crypto: inside-secure - Add support for the ofb(sm4) skcipher
crypto: testmgr - Added testvectors for the ofb(sm4) & cfb(sm4) skciphers
crypto: inside-secure - Add support for the cfb(sm4) skcipher
crypto: inside-secure - Add support for the rfc3685(ctr(sm4)) skcipher
crypto: testmgr - Added testvectors for the rfc3686(ctr(sm4)) skcipher
crypto: inside-secure - Add SM4 based authenc AEAD ciphersuites
crypto: inside-secure - Add SHA3 family of basic hash algorithms
crypto: inside-secure - Add HMAC-SHA3 family of authentication algorithms
crypto: inside-secure - Add CRYPTO_SHA3 to CRYPTO_DEV_SAFEXCEL
crypto: inside-secure - Added support for authenc HMAC-SHA1/DES-CBC
crypto: inside-secure - Added support for authenc HMAC-SHA2/3DES-CBC
crypto: inside-secure - Added support for authenc HMAC-SHA2/DES-CBC
crypto: inside-secure - Fix stability issue with Macchiatobin
crypto: inside-secure - Fixed corner case TRC admin RAM probing issue
crypto: inside-secure - Added support for the rfc4106(gcm(aes)) AEAD
crypto: inside-secure - Added support for the rfc4543(gcm(aes)) "AEAD"
crypto: inside-secure - Added support for the rfc4309(ccm(aes)) AEAD
crypto: inside-secure - Add support for 256 bit wide internal bus
crypto: inside-secure - Add support for HW with less ring AIC's than rings
crypto: inside-secure - Add support for the EIP196
crypto: inside-secure - Fix build error with CONFIG_CRYPTO_SM3=m
crypto: inside-secure - Made locally used safexcel_pci_remove() static
crypto: inside-secure - Fixed warnings on inconsistent byte order handling
crypto: inside-secure - Fix hangup during probing for EIP97 engine
crypto: inside-secure - Fixed authenc w/ (3)DES fails on Macchiatobin

Peter Ujfalusi (1):
crypto: qce/dma - Use dma_request_chan() directly for channel request

Phani Kiran Hemadri (1):
crypto: cavium/nitrox - fix firmware assignment to AE cores

Rikard Falkeborn (1):
crypto: hisilicon: Fix misuse of GENMASK macro

Shukun Tan (4):
crypto: hisilicon - add sgl_sge_nr module param for zip
crypto: hisilicon - Fix using plain integer as NULL pointer
crypto: hisilicon - fix param should be static when not external.
crypto: hisilicon - fix endianness verification problem of QM

Sumit Garg (1):
hwrng: omap - Fix RNG wait loop timeout

Tian Tao (2):
crypto: ccree - fix comparison of unsigned expression warning
crypto: tgr192 - remove unneeded semicolon

Tomer Maimon (2):
dt-binding: hwrng: add NPCM RNG documentation
hwrng: npcm - add NPCM RNG driver

Tony Lindgren (7):
ARM: OMAP2+: Check omap3-rom-rng for GP device instead of HS device
hwrng: omap3-rom - Fix missing clock by probing with device tree
hwrng: omap3-rom - Call clk_disable_unprepare() on exit only if not idled
hwrng: omap3-rom - Initialize default quality to get data
hwrng: omap3-rom - Update to use standard driver data
hwrng: omap3-rom - Use runtime PM instead of custom functions
hwrng: omap3-rom - Use devm hwrng and runtime PM

Tudor Ambarus (4):
crypto: atmel-aes - Fix IV handling when req->nbytes < ivsize
crypto: atmel - Fix selection of CRYPTO_AUTHENC
crypto: atmel-tdes - Set the IV after {en,de}crypt
crypto: atmel-aes - Change data type for "lastc" buffer

YueHaibing (17):
crypto: inside-secure - Use PTR_ERR_OR_ZERO in safexcel_xcbcmac_cra_init()
hwrng: atmel - use devm_platform_ioremap_resource() to simplify code
hwrng: bcm2835 - use devm_platform_ioremap_resource() to simplify code
hwrng: exynos - use devm_platform_ioremap_resource() to simplify code
hwrng: hisi - use devm_platform_ioremap_resource() to simplify code
hwrng: ks-sa - use devm_platform_ioremap_resource() to simplify code
hwrng: meson - use devm_platform_ioremap_resource() to simplify code
hwrng: npcm - use devm_platform_ioremap_resource() to simplify code
hwrng: omap - use devm_platform_ioremap_resource() to simplify code
hwrng: pasemi - use devm_platform_ioremap_resource() to simplify code
hwrng: pic32 - use devm_platform_ioremap_resource() to simplify code
hwrng: st - use devm_platform_ioremap_resource() to simplify code
hwrng: tx4939 - use devm_platform_ioremap_resource() to simplify code
hwrng: xgene - use devm_platform_ioremap_resource() to simplify code
crypto: amlogic - Use kmemdup in meson_aes_setkey()
crypto: sun8i-ce - Fix memdup.cocci warnings
crypto: atmel - Fix build error of CRYPTO_AUTHENC

Yunfeng Ye (2):
crypto: chtls - remove the redundant check in chtls_recvmsg()
crypto: arm64/aes-neonbs - add return value of skcipher_walk_done() in __xts_crypt()

Zaibo Xu (11):
crypto: hisilicon - add HiSilicon HPRE accelerator
crypto: hisilicon - add SRIOV support for HPRE
Documentation: Add debugfs doc for hisi_hpre
crypto: hisilicon - Add debugfs for HPRE
MAINTAINERS: Add maintainer for HiSilicon HPRE driver
hwrng: hisi - add HiSilicon TRNG driver support
MAINTAINERS: Add maintainer for HiSilicon TRNG V2 driver
crypto: hisilicon - add HiSilicon SEC V2 driver
crypto: hisilicon - add SRIOV for HiSilicon SEC
crypto: hisilicon - add DebugFS for HiSilicon SEC
MAINTAINERS: Add maintainer for HiSilicon SEC V2 driver

Zhou Wang (8):
crypto: hisilicon - merge sgl support to hisi_qm module
crypto: hisilicon - fix large sgl memory allocation problem when disable smmu
crypto: hisilicon - misc fix about sgl
crypto: hisilicon - select NEED_SG_DMA_LENGTH in qm Kconfig
crypto: hisilicon - tiny fix about QM/ZIP error callback print
crypto: hisilicon - use sgl API to get sgl dma addr and len
crypto: hisilicon - fix to return sub-optimal device when best device has no qps
crypto: hisilicon - replace #ifdef with IS_ENABLED for CONFIG_NUMA

kbuild test robot (1):
crypto: sun8i-ss - fix memdup.cocci warnings

kbuild test robot Remove unneeded semicolon (1):
crypto: sun8i-ss - fix semicolon.cocci warnings

zhengbin (1):
crypto: ux500 - Remove set but not used variable 'cookie'

Łukasz Stelmach (1):
dt-bindings: hwrng: Add Samsung Exynos 5250+ True RNG bindings

Documentation/ABI/testing/debugfs-hisi-hpre | 57 +
Documentation/ABI/testing/debugfs-hisi-sec | 43 +
Documentation/crypto/api-skcipher.rst | 29 +-
Documentation/crypto/architecture.rst | 4 -
Documentation/crypto/crypto_engine.rst | 4 -
Documentation/crypto/devel-algos.rst | 27 +-
.../bindings/crypto/allwinner,sun8i-ss.yaml | 60 +
.../bindings/crypto/amlogic,gxl-crypto.yaml | 52 +
.../devicetree/bindings/rng/atmel-trng.txt | 2 +-
.../devicetree/bindings/rng/nuvoton,npcm-rng.txt | 12 +
.../devicetree/bindings/rng/omap3_rom_rng.txt | 27 +
.../bindings/rng/samsung,exynos5250-trng.txt | 17 +
MAINTAINERS | 37 +-
arch/arm/boot/dts/omap3-n900.dts | 6 +
arch/arm/crypto/Kconfig | 36 +-
arch/arm/crypto/Makefile | 49 +-
arch/arm/crypto/aes-ce-core.S | 1 +
arch/arm/crypto/chacha-glue.c | 343 +
arch/arm/crypto/chacha-neon-glue.c | 202 -
arch/arm/crypto/chacha-scalar-core.S | 460 ++
arch/arm/crypto/crct10dif-ce-core.S | 2 +-
arch/arm/crypto/curve25519-core.S | 2062 ++++++
arch/arm/crypto/curve25519-glue.c | 127 +
arch/arm/crypto/ghash-ce-core.S | 1 +
arch/arm/crypto/poly1305-armv4.pl | 1236 ++++
arch/arm/crypto/poly1305-core.S_shipped | 1158 +++
arch/arm/crypto/poly1305-glue.c | 276 +
arch/arm/crypto/sha1-ce-core.S | 1 +
arch/arm/crypto/sha2-ce-core.S | 1 +
arch/arm/mach-omap2/pdata-quirks.c | 14 +-
arch/arm64/Kconfig | 2 +-
arch/arm64/crypto/Kconfig | 17 +-
arch/arm64/crypto/Makefile | 10 +-
arch/arm64/crypto/aes-neonbs-glue.c | 2 +-
arch/arm64/crypto/chacha-neon-glue.c | 81 +-
arch/arm64/crypto/ghash-ce-core.S | 501 +-
arch/arm64/crypto/ghash-ce-glue.c | 293 +-
arch/arm64/crypto/poly1305-armv8.pl | 913 +++
arch/arm64/crypto/poly1305-core.S_shipped | 835 +++
arch/arm64/crypto/poly1305-glue.c | 237 +
arch/mips/Makefile | 2 +-
arch/mips/crypto/Makefile | 18 +
arch/mips/crypto/chacha-core.S | 497 ++
arch/mips/crypto/chacha-glue.c | 150 +
arch/mips/crypto/poly1305-glue.c | 203 +
arch/mips/crypto/poly1305-mips.pl | 1273 ++++
arch/powerpc/crypto/aes-spe-glue.c | 454 +-
arch/riscv/Kconfig | 2 +-
arch/s390/crypto/aes_s390.c | 609 +-
arch/s390/crypto/des_s390.c | 419 +-
arch/s390/crypto/paes_s390.c | 414 +-
arch/sparc/crypto/aes_glue.c | 310 +-
arch/sparc/crypto/camellia_glue.c | 217 +-
arch/sparc/crypto/des_glue.c | 499 +-
arch/x86/Kconfig | 2 +-
arch/x86/crypto/Makefile | 3 +
arch/x86/crypto/blake2s-core.S | 258 +
arch/x86/crypto/blake2s-glue.c | 233 +
arch/x86/crypto/chacha_glue.c | 184 +-
arch/x86/crypto/curve25519-x86_64.c | 2475 +++++++
arch/x86/crypto/poly1305_glue.c | 199 +-
crypto/Kconfig | 171 +-
crypto/Makefile | 11 +-
crypto/ablkcipher.c | 407 --
crypto/adiantum.c | 5 +-
crypto/aead.c | 165 +-
crypto/aegis128-core.c | 125 +-
crypto/aegis128-neon-inner.c | 50 +
crypto/aegis128-neon.c | 21 +
crypto/af_alg.c | 2 +-
crypto/algapi.c | 26 -
crypto/algif_skcipher.c | 2 +-
crypto/api.c | 3 +-
crypto/blake2b_generic.c | 320 +
crypto/blake2s_generic.c | 171 +
crypto/blkcipher.c | 548 --
crypto/chacha_generic.c | 94 +-
crypto/cryptd.c | 2 +-
crypto/crypto_engine.c | 29 -
crypto/crypto_user_base.c | 4 +-
crypto/crypto_user_stat.c | 8 +-
crypto/curve25519-generic.c | 90 +
crypto/ecc.c | 5 +-
crypto/essiv.c | 9 +-
crypto/geniv.c | 176 +
crypto/jitterentropy-kcapi.c | 8 +-
crypto/jitterentropy.c | 13 +-
crypto/jitterentropy.h | 17 +
crypto/nhpoly1305.c | 3 +-
crypto/poly1305_generic.c | 228 +-
crypto/skcipher.c | 230 +-
crypto/tcrypt.c | 4 +-
crypto/testmgr.c | 82 +
crypto/testmgr.h | 2124 ++++++
crypto/tgr192.c | 4 +-
drivers/char/hw_random/Kconfig | 28 +-
drivers/char/hw_random/Makefile | 2 +
drivers/char/hw_random/atmel-rng.c | 43 +-
drivers/char/hw_random/bcm2835-rng.c | 5 +-
drivers/char/hw_random/core.c | 61 +-
drivers/char/hw_random/exynos-trng.c | 4 +-
drivers/char/hw_random/hisi-rng.c | 4 +-
drivers/char/hw_random/hisi-trng-v2.c | 99 +
drivers/char/hw_random/iproc-rng200.c | 9 +-
drivers/char/hw_random/ks-sa-rng.c | 44 +-
drivers/char/hw_random/meson-rng.c | 4 +-
drivers/char/hw_random/mtk-rng.c | 9 +-
drivers/char/hw_random/npcm-rng.c | 184 +
drivers/char/hw_random/omap-rng.c | 13 +-
drivers/char/hw_random/omap3-rom-rng.c | 168 +-
drivers/char/hw_random/pasemi-rng.c | 4 +-
drivers/char/hw_random/pic32-rng.c | 4 +-
drivers/char/hw_random/st-rng.c | 4 +-
drivers/char/hw_random/tx4939-rng.c | 4 +-
drivers/char/hw_random/xgene-rng.c | 4 +-
drivers/crypto/Kconfig | 92 +-
drivers/crypto/Makefile | 3 +-
drivers/crypto/allwinner/Kconfig | 87 +
drivers/crypto/allwinner/Makefile | 3 +
.../{sunxi-ss => allwinner/sun4i-ss}/Makefile | 0
.../sun4i-ss}/sun4i-ss-cipher.c | 34 +-
.../sun4i-ss}/sun4i-ss-core.c | 139 +-
.../sun4i-ss}/sun4i-ss-hash.c | 47 +-
.../sun4i-ss}/sun4i-ss-prng.c | 9 +-
.../{sunxi-ss => allwinner/sun4i-ss}/sun4i-ss.h | 2 +
drivers/crypto/allwinner/sun8i-ce/Makefile | 2 +
.../crypto/allwinner/sun8i-ce/sun8i-ce-cipher.c | 438 ++
drivers/crypto/allwinner/sun8i-ce/sun8i-ce-core.c | 676 ++
drivers/crypto/allwinner/sun8i-ce/sun8i-ce.h | 254 +
drivers/crypto/allwinner/sun8i-ss/Makefile | 2 +
.../crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c | 436 ++
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c | 642 ++
drivers/crypto/allwinner/sun8i-ss/sun8i-ss.h | 218 +
drivers/crypto/amcc/crypto4xx_core.c | 6 +-
drivers/crypto/amlogic/Kconfig | 24 +
drivers/crypto/amlogic/Makefile | 2 +
drivers/crypto/amlogic/amlogic-gxl-cipher.c | 382 +
drivers/crypto/amlogic/amlogic-gxl-core.c | 332 +
drivers/crypto/amlogic/amlogic-gxl.h | 161 +
drivers/crypto/atmel-aes.c | 590 +-
drivers/crypto/atmel-authenc.h | 2 +-
drivers/crypto/atmel-sha.c | 4 +-
drivers/crypto/atmel-tdes.c | 469 +-
drivers/crypto/bcm/cipher.c | 373 +-
drivers/crypto/bcm/cipher.h | 10 +-
drivers/crypto/bcm/spu2.c | 6 +-
drivers/crypto/caam/Kconfig | 6 +-
drivers/crypto/caam/caampkc.c | 72 +-
drivers/crypto/caam/caampkc.h | 8 +-
drivers/crypto/caam/ctrl.c | 222 +-
drivers/crypto/caam/intern.h | 4 -
drivers/crypto/caam/qi.c | 8 +-
drivers/crypto/caam/qi.h | 1 -
drivers/crypto/cavium/cpt/cptvf_algs.c | 292 +-
drivers/crypto/cavium/nitrox/Kconfig | 2 +-
drivers/crypto/cavium/nitrox/nitrox_aead.c | 39 +-
drivers/crypto/cavium/nitrox/nitrox_dev.h | 15 +
drivers/crypto/cavium/nitrox/nitrox_main.c | 9 +-
drivers/crypto/cavium/nitrox/nitrox_mbx.c | 8 +
drivers/crypto/cavium/nitrox/nitrox_req.h | 4 +
drivers/crypto/cavium/nitrox/nitrox_skcipher.c | 134 +-
drivers/crypto/ccp/Kconfig | 2 +-
drivers/crypto/ccp/ccp-crypto-aes-galois.c | 7 +-
drivers/crypto/ccp/ccp-crypto-aes-xts.c | 94 +-
drivers/crypto/ccp/ccp-crypto-aes.c | 169 +-
drivers/crypto/ccp/ccp-crypto-des3.c | 100 +-
drivers/crypto/ccp/ccp-crypto-main.c | 14 +-
drivers/crypto/ccp/ccp-crypto.h | 13 +-
drivers/crypto/ccp/ccp-dev-v5.c | 14 +-
drivers/crypto/ccp/ccp-dev.c | 15 +-
drivers/crypto/ccp/ccp-dmaengine.c | 1 +
drivers/crypto/ccp/ccp-ops.c | 3 +-
drivers/crypto/ccp/psp-dev.c | 59 +-
drivers/crypto/ccp/psp-dev.h | 1 +
drivers/crypto/ccree/cc_aead.c | 3 +-
drivers/crypto/ccree/cc_cipher.c | 4 +-
drivers/crypto/chelsio/chcr_algo.c | 334 +-
drivers/crypto/chelsio/chcr_algo.h | 2 +-
drivers/crypto/chelsio/chcr_crypto.h | 16 +-
drivers/crypto/chelsio/chtls/chtls_io.c | 5 +-
drivers/crypto/geode-aes.c | 433 +-
drivers/crypto/geode-aes.h | 15 +-
drivers/crypto/hifn_795x.c | 183 +-
drivers/crypto/hisilicon/Kconfig | 45 +-
drivers/crypto/hisilicon/Makefile | 6 +-
drivers/crypto/hisilicon/hpre/Makefile | 2 +
drivers/crypto/hisilicon/hpre/hpre.h | 83 +
drivers/crypto/hisilicon/hpre/hpre_crypto.c | 1137 +++
drivers/crypto/hisilicon/hpre/hpre_main.c | 1052 +++
drivers/crypto/hisilicon/qm.c | 142 +-
drivers/crypto/hisilicon/qm.h | 17 +-
drivers/crypto/hisilicon/sec2/Makefile | 2 +
drivers/crypto/hisilicon/sec2/sec.h | 156 +
drivers/crypto/hisilicon/sec2/sec_crypto.c | 889 +++
drivers/crypto/hisilicon/sec2/sec_crypto.h | 198 +
drivers/crypto/hisilicon/sec2/sec_main.c | 1095 +++
drivers/crypto/hisilicon/sgl.c | 184 +-
drivers/crypto/hisilicon/sgl.h | 24 -
drivers/crypto/hisilicon/zip/zip.h | 1 -
drivers/crypto/hisilicon/zip/zip_crypto.c | 46 +-
drivers/crypto/hisilicon/zip/zip_main.c | 294 +-
drivers/crypto/inside-secure/safexcel.c | 329 +-
drivers/crypto/inside-secure/safexcel.h | 131 +-
drivers/crypto/inside-secure/safexcel_cipher.c | 2062 +++++-
drivers/crypto/inside-secure/safexcel_hash.c | 1475 +++-
drivers/crypto/inside-secure/safexcel_ring.c | 5 +-
drivers/crypto/ixp4xx_crypto.c | 228 +-
drivers/crypto/marvell/cesa.h | 6 +-
drivers/crypto/marvell/cipher.c | 14 +-
drivers/crypto/mediatek/mtk-aes.c | 250 +-
drivers/crypto/mxs-dcp.c | 140 +-
drivers/crypto/n2_core.c | 194 +-
drivers/crypto/nx/nx-aes-cbc.c | 81 +-
drivers/crypto/nx/nx-aes-ccm.c | 45 +-
drivers/crypto/nx/nx-aes-ctr.c | 87 +-
drivers/crypto/nx/nx-aes-ecb.c | 76 +-
drivers/crypto/nx/nx-aes-gcm.c | 29 +-
drivers/crypto/nx/nx.c | 64 +-
drivers/crypto/nx/nx.h | 19 +-
drivers/crypto/nx/nx_debugfs.c | 18 +-
drivers/crypto/omap-aes.c | 209 +-
drivers/crypto/omap-aes.h | 4 +-
drivers/crypto/omap-des.c | 232 +-
drivers/crypto/padlock-aes.c | 157 +-
drivers/crypto/picoxcell_crypto.c | 386 +-
drivers/crypto/qat/Kconfig | 2 +-
drivers/crypto/qat/qat_common/qat_algs.c | 304 +-
drivers/crypto/qat/qat_common/qat_crypto.h | 4 +-
drivers/crypto/qce/Makefile | 2 +-
drivers/crypto/qce/cipher.h | 8 +-
drivers/crypto/qce/common.c | 12 +-
drivers/crypto/qce/common.h | 3 +-
drivers/crypto/qce/core.c | 2 +-
drivers/crypto/qce/dma.c | 4 +-
drivers/crypto/qce/sha.c | 2 +-
drivers/crypto/qce/{ablkcipher.c => skcipher.c} | 172 +-
drivers/crypto/rockchip/Makefile | 2 +-
drivers/crypto/rockchip/rk3288_crypto.c | 8 +-
drivers/crypto/rockchip/rk3288_crypto.h | 3 +-
drivers/crypto/rockchip/rk3288_crypto_ablkcipher.c | 556 --
drivers/crypto/rockchip/rk3288_crypto_skcipher.c | 538 ++
drivers/crypto/s5p-sss.c | 187 +-
drivers/crypto/sahara.c | 156 +-
drivers/crypto/stm32/stm32-cryp.c | 338 +-
drivers/crypto/talitos.c | 314 +-
drivers/crypto/ux500/Kconfig | 2 +-
drivers/crypto/ux500/cryp/cryp_core.c | 371 +-
drivers/crypto/ux500/hash/hash_core.c | 3 +-
drivers/crypto/virtio/Kconfig | 2 +-
drivers/crypto/virtio/virtio_crypto_algs.c | 192 +-
drivers/crypto/virtio/virtio_crypto_common.h | 2 +-
drivers/crypto/vmx/Makefile | 6 +-
drivers/net/wireless/cisco/Kconfig | 2 +-
include/crypto/aead.h | 2 +-
include/crypto/algapi.h | 149 -
include/crypto/blake2s.h | 106 +
include/crypto/chacha.h | 83 +-
include/crypto/chacha20poly1305.h | 48 +
include/crypto/curve25519.h | 71 +
include/crypto/engine.h | 4 -
include/crypto/hash.h | 2 +-
include/crypto/internal/blake2s.h | 24 +
include/crypto/internal/chacha.h | 43 +
include/crypto/internal/des.h | 12 -
include/crypto/internal/poly1305.h | 58 +
include/crypto/internal/skcipher.h | 62 -
include/crypto/poly1305.h | 69 +-
include/crypto/skcipher.h | 49 +-
include/linux/crypto.h | 861 +--
include/linux/pci.h | 1 +
include/uapi/linux/psp-sev.h | 3 +
init/Kconfig | 4 +
lib/Makefile | 3 +-
lib/crypto/Kconfig | 130 +
lib/crypto/Makefile | 42 +-
lib/crypto/blake2s-generic.c | 111 +
lib/crypto/blake2s-selftest.c | 622 ++
lib/crypto/blake2s.c | 126 +
lib/{ => crypto}/chacha.c | 20 +-
lib/crypto/chacha20poly1305-selftest.c | 7393 ++++++++++++++++++++
lib/crypto/chacha20poly1305.c | 369 +
lib/crypto/curve25519-fiat32.c | 864 +++
lib/crypto/curve25519-hacl64.c | 788 +++
lib/crypto/curve25519.c | 25 +
lib/crypto/libchacha.c | 35 +
lib/crypto/poly1305.c | 232 +
lib/ubsan.c | 2 +-
lib/ubsan.h | 2 +-
net/bluetooth/Kconfig | 2 +-
net/rxrpc/Kconfig | 2 +-
net/xfrm/Kconfig | 2 +-
net/xfrm/xfrm_algo.c | 4 +-
292 files changed, 47110 insertions(+), 11394 deletions(-)
create mode 100644 Documentation/ABI/testing/debugfs-hisi-hpre
create mode 100644 Documentation/ABI/testing/debugfs-hisi-sec
create mode 100644 Documentation/devicetree/bindings/crypto/allwinner,sun8i-ss.yaml
create mode 100644 Documentation/devicetree/bindings/crypto/amlogic,gxl-crypto.yaml
create mode 100644 Documentation/devicetree/bindings/rng/nuvoton,npcm-rng.txt
create mode 100644 Documentation/devicetree/bindings/rng/omap3_rom_rng.txt
create mode 100644 Documentation/devicetree/bindings/rng/samsung,exynos5250-trng.txt
create mode 100644 arch/arm/crypto/chacha-glue.c
delete mode 100644 arch/arm/crypto/chacha-neon-glue.c
create mode 100644 arch/arm/crypto/chacha-scalar-core.S
create mode 100644 arch/arm/crypto/curve25519-core.S
create mode 100644 arch/arm/crypto/curve25519-glue.c
create mode 100644 arch/arm/crypto/poly1305-armv4.pl
create mode 100644 arch/arm/crypto/poly1305-core.S_shipped
create mode 100644 arch/arm/crypto/poly1305-glue.c
create mode 100644 arch/arm64/crypto/poly1305-armv8.pl
create mode 100644 arch/arm64/crypto/poly1305-core.S_shipped
create mode 100644 arch/arm64/crypto/poly1305-glue.c
create mode 100644 arch/mips/crypto/chacha-core.S
create mode 100644 arch/mips/crypto/chacha-glue.c
create mode 100644 arch/mips/crypto/poly1305-glue.c
create mode 100644 arch/mips/crypto/poly1305-mips.pl
create mode 100644 arch/x86/crypto/blake2s-core.S
create mode 100644 arch/x86/crypto/blake2s-glue.c
create mode 100644 arch/x86/crypto/curve25519-x86_64.c
delete mode 100644 crypto/ablkcipher.c
create mode 100644 crypto/blake2b_generic.c
create mode 100644 crypto/blake2s_generic.c
delete mode 100644 crypto/blkcipher.c
create mode 100644 crypto/curve25519-generic.c
create mode 100644 crypto/geniv.c
create mode 100644 crypto/jitterentropy.h
create mode 100644 drivers/char/hw_random/hisi-trng-v2.c
create mode 100644 drivers/char/hw_random/npcm-rng.c
create mode 100644 drivers/crypto/allwinner/Kconfig
create mode 100644 drivers/crypto/allwinner/Makefile
rename drivers/crypto/{sunxi-ss => allwinner/sun4i-ss}/Makefile (100%)
rename drivers/crypto/{sunxi-ss => allwinner/sun4i-ss}/sun4i-ss-cipher.c (95%)
rename drivers/crypto/{sunxi-ss => allwinner/sun4i-ss}/sun4i-ss-core.c (87%)
rename drivers/crypto/{sunxi-ss => allwinner/sun4i-ss}/sun4i-ss-hash.c (93%)
rename drivers/crypto/{sunxi-ss => allwinner/sun4i-ss}/sun4i-ss-prng.c (92%)
rename drivers/crypto/{sunxi-ss => allwinner/sun4i-ss}/sun4i-ss.h (98%)
create mode 100644 drivers/crypto/allwinner/sun8i-ce/Makefile
create mode 100644 drivers/crypto/allwinner/sun8i-ce/sun8i-ce-cipher.c
create mode 100644 drivers/crypto/allwinner/sun8i-ce/sun8i-ce-core.c
create mode 100644 drivers/crypto/allwinner/sun8i-ce/sun8i-ce.h
create mode 100644 drivers/crypto/allwinner/sun8i-ss/Makefile
create mode 100644 drivers/crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c
create mode 100644 drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c
create mode 100644 drivers/crypto/allwinner/sun8i-ss/sun8i-ss.h
create mode 100644 drivers/crypto/amlogic/Kconfig
create mode 100644 drivers/crypto/amlogic/Makefile
create mode 100644 drivers/crypto/amlogic/amlogic-gxl-cipher.c
create mode 100644 drivers/crypto/amlogic/amlogic-gxl-core.c
create mode 100644 drivers/crypto/amlogic/amlogic-gxl.h
create mode 100644 drivers/crypto/hisilicon/hpre/Makefile
create mode 100644 drivers/crypto/hisilicon/hpre/hpre.h
create mode 100644 drivers/crypto/hisilicon/hpre/hpre_crypto.c
create mode 100644 drivers/crypto/hisilicon/hpre/hpre_main.c
create mode 100644 drivers/crypto/hisilicon/sec2/Makefile
create mode 100644 drivers/crypto/hisilicon/sec2/sec.h
create mode 100644 drivers/crypto/hisilicon/sec2/sec_crypto.c
create mode 100644 drivers/crypto/hisilicon/sec2/sec_crypto.h
create mode 100644 drivers/crypto/hisilicon/sec2/sec_main.c
delete mode 100644 drivers/crypto/hisilicon/sgl.h
rename drivers/crypto/qce/{ablkcipher.c => skcipher.c} (62%)
delete mode 100644 drivers/crypto/rockchip/rk3288_crypto_ablkcipher.c
create mode 100644 drivers/crypto/rockchip/rk3288_crypto_skcipher.c
create mode 100644 include/crypto/blake2s.h
create mode 100644 include/crypto/chacha20poly1305.h
create mode 100644 include/crypto/curve25519.h
create mode 100644 include/crypto/internal/blake2s.h
create mode 100644 include/crypto/internal/chacha.h
create mode 100644 include/crypto/internal/poly1305.h
create mode 100644 lib/crypto/Kconfig
create mode 100644 lib/crypto/blake2s-generic.c
create mode 100644 lib/crypto/blake2s-selftest.c
create mode 100644 lib/crypto/blake2s.c
rename lib/{ => crypto}/chacha.c (88%)
create mode 100644 lib/crypto/chacha20poly1305-selftest.c
create mode 100644 lib/crypto/chacha20poly1305.c
create mode 100644 lib/crypto/curve25519-fiat32.c
create mode 100644 lib/crypto/curve25519-hacl64.c
create mode 100644 lib/crypto/curve25519.c
create mode 100644 lib/crypto/libchacha.c
create mode 100644 lib/crypto/poly1305.c

Thanks,
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

2019-11-26 04:27:51

by pr-tracker-bot

[permalink] [raw]
Subject: Re: [GIT PULL] Crypto Update for 5.5

The pull request you sent on Mon, 25 Nov 2019 11:45:36 +0800:

> git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git refs/heads/master

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/642356cb5f4a8c82b5ca5ebac288c327d10df236

Thank you!

--
Deet-doot-dot, I am a bot.
https://korg.wiki.kernel.org/userdoc/prtracker

2019-12-02 06:21:02

by Herbert Xu

[permalink] [raw]
Subject: [GIT PULL] Crypto Fixes for 5.5

Hi Linus:

This push fixes the following issues:

- Fix build error in crypto lib code when crypto API is off.
- Fix NULL/error check in hisilicon.
- Fix Kconfig-related build error in talitos.

The following changes since commit 4ee812f6143d78d8ba1399671d78c8d78bf2817c:

crypto: vmx - Avoid weird build failures (2019-11-22 18:48:39 +0800)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

for you to fetch changes up to 8a6b8f4d7a891ac66db4f97900a86b55c84a5802:

crypto: hisilicon - fix a NULL vs IS_ERR() bug in sec_create_qp_ctx() (2019-11-27 13:08:50 +0800)

----------------------------------------------------------------
Dan Carpenter (1):
crypto: hisilicon - fix a NULL vs IS_ERR() bug in sec_create_qp_ctx()

Herbert Xu (1):
crypto: talitos - Fix build error by selecting LIB_DES

Jason A. Donenfeld (1):
crypto: arch - conditionalize crypto api in arch glue for lib code

arch/arm/crypto/chacha-glue.c | 26 ++++++++++++++++----------
arch/arm/crypto/curve25519-glue.c | 5 +++--
arch/arm/crypto/poly1305-glue.c | 9 ++++++---
arch/arm64/crypto/chacha-neon-glue.c | 5 +++--
arch/arm64/crypto/poly1305-glue.c | 5 +++--
arch/mips/crypto/chacha-glue.c | 6 ++++--
arch/mips/crypto/poly1305-glue.c | 6 ++++--
arch/x86/crypto/blake2s-glue.c | 6 ++++--
arch/x86/crypto/chacha_glue.c | 5 +++--
arch/x86/crypto/curve25519-x86_64.c | 7 ++++---
arch/x86/crypto/poly1305_glue.c | 5 +++--
drivers/crypto/Kconfig | 1 +
drivers/crypto/hisilicon/sec2/sec_crypto.c | 4 ++--
13 files changed, 56 insertions(+), 34 deletions(-)

Thanks,
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

2019-12-03 01:31:50

by pr-tracker-bot

[permalink] [raw]
Subject: Re: [GIT PULL] Crypto Fixes for 5.5

The pull request you sent on Mon, 2 Dec 2019 14:20:17 +0800:

> git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/483847a70262f7361f8a6f78513c985c2c8b1719

Thank you!

--
Deet-doot-dot, I am a bot.
https://korg.wiki.kernel.org/userdoc/prtracker

2019-12-14 08:48:22

by Herbert Xu

[permalink] [raw]
Subject: [GIT PULL] Crypto Fixes for 5.5

Hi Linus:

This push fixes another build problem for Wireguard without Crypto
API.

The following changes since commit 8a6b8f4d7a891ac66db4f97900a86b55c84a5802:

crypto: hisilicon - fix a NULL vs IS_ERR() bug in sec_create_qp_ctx() (2019-11-27 13:08:50 +0800)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

for you to fetch changes up to 84faa307249b341f6ad8de3e1869d77a65e26669:

crypto: arm/curve25519 - add arch-specific key generation function (2019-12-12 14:07:14 +0800)

----------------------------------------------------------------
Jason A. Donenfeld (1):
crypto: arm/curve25519 - add arch-specific key generation function

arch/arm/crypto/curve25519-glue.c | 7 +++++++
1 file changed, 7 insertions(+)

Thanks,
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

2020-01-15 15:08:38

by Herbert Xu

[permalink] [raw]
Subject: [GIT PULL] Crypto Fixes for 5.5

Hi Linus:

This push fixes a build problem for the hisilicon driver.

The following changes since commit 84faa307249b341f6ad8de3e1869d77a65e26669:

crypto: arm/curve25519 - add arch-specific key generation function (2019-12-12 14:07:14 +0800)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

for you to fetch changes up to cb1eeb75cf3dd84ced81333967200583993dfd73:

crypto: hisilicon/sec2 - Use atomics instead of __sync (2020-01-09 11:28:08 +0800)

----------------------------------------------------------------
Arnd Bergmann (1):
crypto: hisilicon/sec2 - Use atomics instead of __sync

drivers/crypto/hisilicon/sec2/sec.h | 6 +++---
drivers/crypto/hisilicon/sec2/sec_crypto.c | 12 ++++++------
drivers/crypto/hisilicon/sec2/sec_main.c | 14 ++++++++++++--
3 files changed, 21 insertions(+), 11 deletions(-)

Thanks,
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

2020-01-15 19:36:28

by pr-tracker-bot

[permalink] [raw]
Subject: Re: [GIT PULL] Crypto Fixes for 5.5

The pull request you sent on Wed, 15 Jan 2020 23:08:12 +0800:

> git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/0174cb6ce9449ce9b59cb9c6f4f64dc4df3de458

Thank you!

--
Deet-doot-dot, I am a bot.
https://korg.wiki.kernel.org/userdoc/prtracker

2020-01-28 05:04:46

by Herbert Xu

[permalink] [raw]
Subject: [GIT PULL] Crypto Update for 5.6

Hi Linus:

API:

- Removed CRYPTO_TFM_RES flags.
- Extended spawn grabbing to all algorithm types.
- Moved hash descsize verification into API code.

Algorithms:

- Fixed recursive pcrypt dead-lock.
- Added new 32 and 64-bit generic versions of poly1305.
- Added cryptogams implementation of x86/poly1305.
-

Drivers:

- Added support for i.MX8M Mini in caam.
- Added support for i.MX8M Nano in caam.
- Added support for i.MX8M Plus in caam.
- Added support for A33 variant of SS in sun4i-ss.
- Added TEE support for Raven Ridge in ccp.
- Added in-kernel API to submit TEE commands in ccp.
- Added AMD-TEE driver.
- Added support for BCM2711 in iproc-rng200.
- Added support for AES256-GCM based ciphers for chtls.
- Added aead support on SEC2 in hisilicon.

The following changes since commit e42617b825f8073569da76dc4510bfa019b1c35a:

Linux 5.5-rc1 (2019-12-08 14:57:55 -0800)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

for you to fetch changes up to 0bc81767c5bd9d005fae1099fb39eb3688370cb1:

crypto: arm/chacha - fix build failured when kernel mode NEON is disabled (2020-01-22 16:21:11 +0800)

----------------------------------------------------------------
Adam Ford (1):
crypto: caam - Add support for i.MX8M Mini

Andrei Botila (2):
crypto: caam - remove double buffering for ahash
crypto: caam/qi2 - remove double buffering for ahash

Ard Biesheuvel (9):
crypto: ccp - set max RSA modulus size for v3 platform devices as well
crypto: arm64/ghash-neon - bump priority to 150
crypto: omap-aes - reject invalid input sizes for block modes
crypto: omap-aes-ctr - set blocksize to 1
crypto: omap-aes-gcm - deal with memory allocation failure
crypto: omap-aes-gcm - add missing .setauthsize hooks
crypto: omap-aes-gcm - check length of assocdata in RFC4106 mode
crypto: omap-aes-gcm - use the AES library to encrypt the tag
crypto: arm/chacha - fix build failured when kernel mode NEON is disabled

Arnd Bergmann (1):
crypto: hisilicon/sec2 - Use atomics instead of __sync

Ayush Sawal (2):
crypto: chelsio - calculating tx_channel_id as per the max number of channels
crypto: chelsio - Resetting crypto counters during the driver unregister

Ben Dooks (Codethink) (1):
crypto: sun4i-ss - make unexported sun4i_ss_pm_ops static

Brendan Higgins (2):
crypto: inside-secure - add unspecified HAS_IOMEM dependency
crypto: amlogic - add unspecified HAS_IOMEM dependency

Chen Zhou (2):
crypto: allwinner - remove unneeded semicolon
crypto: api - remove unneeded semicolon

Christian Lamparter (2):
crypto: crypto4xx - reduce memory fragmentation
crypto: crypto4xx - use GFP_KERNEL for big allocations

Chuhong Yuan (1):
crypto: picoxcell - adjust the position of tasklet_init and fix missed tasklet_kill

Colin Ian King (2):
tee: fix memory allocation failure checks on drv_data and amdtee
crypto: hisilicon - fix spelling mistake "disgest" -> "digest"

Corentin Labbe (5):
crypto: sun4i-ss - add the A33 variant of SS
crypto: sun8i-ss - fix removal of module
crypto: amlogic - fix removal of module
crypto: sun8i-ce - fix removal of module
crypto: sun8i-ce - remove dead code

Daniel Axtens (1):
crypto: vmx - reject xts inputs that are too short

Daniel Jordan (6):
padata: validate cpumask without removed CPU during offline
padata: always acquire cpu_hotplug_lock before pinst->lock
padata: remove cpumask change notifier
padata: remove reorder_objects
padata: update documentation
padata: update documentation file path in MAINTAINERS

Eneas U de Queiroz (6):
crypto: qce - fix ctr-aes-qce block, chunk sizes
crypto: qce - fix xts-aes-qce key sizes
crypto: qce - save a sg table slot for result buf
crypto: qce - update the skcipher IV
crypto: qce - initialize fallback only for AES
crypto: qce - allow building only hashes/ciphers

Eric Biggers (63):
crypto: hisilicon - select CRYPTO_SKCIPHER, not CRYPTO_BLKCIPHER
crypto: api - remove another reference to blkcipher
crypto: skcipher - remove crypto_skcipher::ivsize
crypto: skcipher - remove crypto_skcipher::keysize
crypto: skcipher - remove crypto_skcipher::setkey
crypto: skcipher - remove crypto_skcipher::encrypt
crypto: skcipher - remove crypto_skcipher::decrypt
crypto: skcipher - remove crypto_skcipher_extsize()
crypto: shash - allow essiv and hmac to use OPTIONAL_KEY algorithms
crypto: aead - move crypto_aead_maxauthsize() to <crypto/aead.h>
crypto: skcipher - add crypto_skcipher_min_keysize()
crypto: testmgr - don't try to decrypt uninitialized buffers
crypto: testmgr - check skcipher min_keysize
crypto: testmgr - test setting misaligned keys
crypto: testmgr - create struct aead_extra_tests_ctx
crypto: testmgr - generate inauthentic AEAD test vectors
crypto: compress - remove crt_u.compress (struct compress_tfm)
crypto: cipher - remove crt_u.cipher (struct cipher_tfm)
crypto: doc - remove references to ARC4
crypto: algapi - make unregistration functions return void
crypto: skcipher - remove skcipher_walk_aead()
crypto: chelsio - fix writing tfm flags to wrong place
crypto: artpec6 - return correct error code for failed setkey()
crypto: atmel-sha - fix error handling when setting hmac key
crypto: remove unused tfm result flags
crypto: remove CRYPTO_TFM_RES_BAD_BLOCK_LEN
crypto: remove CRYPTO_TFM_RES_BAD_KEY_LEN
crypto: remove CRYPTO_TFM_RES_WEAK_KEY
crypto: remove propagation of CRYPTO_TFM_RES_* flags
crypto: algapi - make crypto_drop_spawn() a no-op on uninitialized spawns
crypto: algapi - make crypto_grab_spawn() handle an ERR_PTR() name
crypto: shash - make struct shash_instance be the full size
crypto: ahash - make struct ahash_instance be the full size
crypto: skcipher - pass instance to crypto_grab_skcipher()
crypto: aead - pass instance to crypto_grab_aead()
crypto: akcipher - pass instance to crypto_grab_akcipher()
crypto: algapi - pass instance to crypto_grab_spawn()
crypto: shash - introduce crypto_grab_shash()
crypto: ahash - introduce crypto_grab_ahash()
crypto: cipher - introduce crypto_cipher_spawn and crypto_grab_cipher()
crypto: adiantum - use crypto_grab_{cipher,shash} and simplify error paths
crypto: cryptd - use crypto_grab_shash() and simplify error paths
crypto: hmac - use crypto_grab_shash() and simplify error paths
crypto: authenc - use crypto_grab_ahash() and simplify error paths
crypto: authencesn - use crypto_grab_ahash() and simplify error paths
crypto: gcm - use crypto_grab_ahash() and simplify error paths
crypto: ccm - use crypto_grab_ahash() and simplify error paths
crypto: chacha20poly1305 - use crypto_grab_ahash() and simplify error paths
crypto: skcipher - use crypto_grab_cipher() and simplify error paths
crypto: cbcmac - use crypto_grab_cipher() and simplify error paths
crypto: cmac - use crypto_grab_cipher() and simplify error paths
crypto: vmac - use crypto_grab_cipher() and simplify error paths
crypto: xcbc - use crypto_grab_cipher() and simplify error paths
crypto: cipher - make crypto_spawn_cipher() take a crypto_cipher_spawn
crypto: algapi - remove obsoleted instance creation helpers
crypto: ahash - unexport crypto_ahash_type
crypto: algapi - fold crypto_init_spawn() into crypto_grab_spawn()
crypto: hash - add support for new way of freeing instances
crypto: geniv - convert to new way of freeing instances
crypto: cryptd - convert to new way of freeing instances
crypto: shash - convert shash_free_instance() to new style
crypto: algapi - remove crypto_template::{alloc,free}()
crypto: algapi - enforce that all instances have a ->free() method

Gary R Hook (1):
crypto: ccp - Update MAINTAINERS for CCP driver

Geert Uytterhoeven (1):
crypto: essiv - fix AEAD capitalization and preposition use in help text

Gilad Ben-Yossef (10):
crypto: ccree - remove useless define
crypto: ccree - fix backlog memory leak
crypto: ccree - fix AEAD decrypt auth fail
crypto: ccree - turn errors to debug msgs
crypto: ccree - fix pm wrongful error reporting
crypto: ccree - cc_do_send_request() is void func
crypto: ccree - fix PM race condition
crypto: ccree - split overloaded usage of irq field
crypto: ccree - make cc_pm_put_suspend() void
crypto: ccree - erase unneeded inline funcs

Greg Kroah-Hartman (1):
crypto: hisilicon - still no need to check return value of debugfs_create functions

Hadar Gat (4):
crypto: ccree - fix typos in comments
crypto: ccree - fix typos in error msgs
crypto: ccree - fix typos in error msgs
crypto: ccree - fix typo in comment

Herbert Xu (18):
padata: Remove broken queue flushing
crypto: pcrypt - Fix user-after-free on module unload
padata: Remove unused padata_remove_cpu
crypto: pcrypt - Avoid deadlock by using per-instance padata queues
crypto: pcrypt - Do not clear MAY_SLEEP flag in original request
crypto: af_alg - Use bh_lock_sock in sk_destruct
crypto: api - Check spawn->alg under lock in crypto_drop_spawn
crypto: api - Fix race condition in crypto_spawn_alg
crypto: api - Do not zap spawn->alg
crypto: api - Add more comments to crypto_remove_spawns
crypto: shash - Add init_tfm/exit_tfm and verify descsize
crypto: padlock-sha - Use init_tfm/exit_tfm interface
crypto: hmac - Use init_tfm/exit_tfm interface
crypto: api - fix unexpectedly getting generic implementation
crypto: api - Retain alg refcount in crypto_grab_spawn
crypto: skcipher - Add skcipher_ialg_simple helper
Merge git://git.kernel.org/.../herbert/crypto-2.6
crypto: curve25519 - Fix selftest build error

Horia Geantă (3):
crypto: caam - add support for i.MX8M Nano
crypto: caam/qi2 - fix typo in algorithm's driver name
crypto: caam - add support for i.MX8M Plus

Iuliana Prodan (1):
crypto: caam - do not reset pointer size from MCFGR register

Jason A. Donenfeld (9):
crypto: arm/curve25519 - add arch-specific key generation function
crypto: lib/curve25519 - re-add selftests
crypto: poly1305 - add new 32 and 64-bit generic versions
crypto: x86/poly1305 - import unmodified cryptogams implementation
crypto: x86/poly1305 - wire up faster implementations for kernel
crypto: {arm,arm64,mips}/poly1305 - remove redundant non-reduction from emit
crypto: x86/poly1305 - fix .gitignore typo
crypto: chacha20poly1305 - add back missing test vectors and test chunking
crypto: x86/poly1305 - emit does base conversion itself

Jonathan Cameron (2):
crypto: hisilicon - Fix issue with wrong number of sg elements after dma map
crypto: hisilicon - Use the offset fields in sqe to avoid need to split scatterlists

Kamil Konieczny (1):
MAINTAINERS: update my e-mail address

Kees Cook (2):
crypto: x86 - Regularize glue function prototypes
crypto: x86/sha - Eliminate casts on asm implementations

Krzysztof Kozlowski (2):
crypto: Kconfig - Fix indentation
crypto: exynos-rng - Rename Exynos to lowercase

Mark Brown (1):
crypto: arm64 - Use modern annotations for assembly functions

Ofir Drang (1):
crypto: ccree - fix FDE descriptor sequence

Pascal van Leeuwen (3):
crypto: inside-secure - Fix Unable to fit even 1 command desc error w/ EIP97
crypto: inside-secure - Fix hang case on EIP97 with zero length input data
crypto: inside-secure - Fix hang case on EIP97 with basic DES/3DES ops

Peter Ujfalusi (5):
crypto: atmel-aes - Retire dma_request_slave_channel_compat()
crypto: atmel-sha - Retire dma_request_slave_channel_compat()
crypto: atmel-tdes - Retire dma_request_slave_channel_compat()
crypto: img-hash - Use dma_request_chan instead dma_request_slave_channel
crypto: stm32/hash - Use dma_request_chan() instead dma_request_slave_channel()

Rijo Thomas (15):
crypto: ccp - rename psp-dev files to sev-dev
crypto: ccp - create a generic psp-dev file
crypto: ccp - move SEV vdata to a dedicated data structure
crypto: ccp - check whether PSP supports SEV or TEE before initialization
crypto: ccp - add TEE support for Raven Ridge
crypto: ccp - provide in-kernel API to submit TEE commands
tee: allow compilation of tee subsystem for AMD CPUs
tee: add AMD-TEE driver
tee: amdtee: check TEE status during driver initialization
Documentation: tee: add AMD-TEE driver details
tee: amdtee: remove unused variable initialization
tee: amdtee: print error message if tee not present
tee: amdtee: skip tee_device_unregister if tee_device_alloc fails
tee: amdtee: rename err label to err_device_unregister
tee: amdtee: remove redundant NULL check for pool

Sami Tolvanen (1):
crypto: arm64/sha - fix function types

Stefan Wahren (2):
dt-bindings: rng: add BCM2711 RNG compatible
hwrng: iproc-rng200 - Add support for BCM2711

Tero Kristo (15):
crypto: omap-sham - split up data to multiple sg elements with huge data
crypto: omap-sham - remove the sysfs group during driver removal
crypto: omap-aes - remove the sysfs group during driver removal
crypto: omap-des - add IV output handling
crypto: omap-aes - add IV output handling
crypto: omap-sham - fix buffer handling for split test cases
crypto: omap-aes-gcm - fix corner case with only auth data
crypto: omap-sham - fix split update cases with cryptomgr tests
crypto: omap-aes - fixup aligned data cleanup
crypto: omap-aes-gcm - fix failure with assocdata only
crypto: omap-sham - fix unaligned sg list handling
crypto: omap-aes-gcm - convert to use crypto engine
crypto: omap-des - avoid unnecessary spam with bad cryptlen
crypto: omap-des - handle NULL cipher request
crypto: omap-crypto - copy the temporary data to output buffer properly

Tudor Ambarus (23):
crypto: atmel-tdes - Constify value to write to hw
crypto: atmel-{sha,tdes} - Change algorithm priorities
crypto: atmel-tdes - Remove unused header includes
crypto: atmel-{sha,tdes} - Propagate error from _hw_version_init()
crypto: atmel-{aes,sha,tdes} - Drop superfluous error message in probe()
crypto: atmel-{aes,sha,tdes} - Rename labels in probe()
crypto: atmel-tdes - Remove useless write in Control Register
crypto: atmel-tdes - Map driver data flags to Mode Register
crypto: atmel-tdes - Drop unnecessary passing of tfm
crypto: atmel-{aes,tdes} - Do not save IV for ECB mode
crypto: atmel-aes - Fix counter overflow in CTR mode
crypto: atmel-aes - Fix saving of IV for CTR mode
crypto: atmel-{sha,tdes} - Remove unused 'err' member of driver data
crypto: atmel-sha - Void return type for atmel_sha_update_dma_stop()
crypto: atmel-aes - Use gcm helper to check authsize
crypto: atmel-{aes,sha,tdes} - Group common alg type init in dedicated methods
crypto: atmel-{aes,sha} - Fix incorrect use of dmaengine_terminate_all()
crypto: atmel-{aes,sha,tdes} - Drop duplicate init of dma_slave_config.direction
crypto: atmel-{aes,sha,tdes} - Stop passing unused argument in _dma_init()
crypto: atmel-{sha,tdes} - Print warn message even when deferring
crypto: atmel-{aes,tdes} - Update the IV only when the op succeeds
crypto: atmel-aes - Fix CTR counter overflow when multiple fragments
crypto: atmel-{aes,sha,tdes} - Retire crypto_platform_data

Valdis Kletnieks (1):
crypto: chacha - fix warning message in header file

Vinay Kumar Yadav (4):
crypto: chtls - Add support for AES256-GCM based ciphers
crypto: chtls - Fixed memory leak
crypto: chtls - Corrected function call context
crypto: chtls - Fixed listen fail when max stid range reached

Zaibo Xu (13):
crypto: hisilicon - Update debugfs usage of SEC V2
crypto: hisilicon - fix print/comment of SEC V2
crypto: hisilicon - Update some names on SEC V2
crypto: hisilicon - Update QP resources of SEC V2
crypto: hisilicon - Adjust some inner logic
crypto: hisilicon - Add callback error check
crypto: hisilicon - Add branch prediction macro
crypto: hisilicon - redefine skcipher initiation
crypto: hisilicon - Add aead support on SEC2
crypto: hisilicon - Bugfixed tfm leak
crypto: hisilicon - Fixed some tiny bugs of HPRE
crypto: hisilicon - adjust hpre_crt_para_get
crypto: hisilicon - add branch prediction macro

Zhou Wang (1):
crypto: hisilicon - Remove useless MODULE macros

zhengbin (1):
crypto: inside-secure - Use PTR_ERR_OR_ZERO() to simplify code

.mailmap | 1 +
Documentation/core-api/index.rst | 1 +
Documentation/core-api/padata.rst | 169 +
Documentation/crypto/devel-algos.rst | 38 +-
.../devicetree/bindings/rng/brcm,iproc-rng200.txt | 1 +
Documentation/padata.txt | 163 -
Documentation/tee.txt | 81 +
MAINTAINERS | 5 +-
arch/arm/crypto/aes-ce-glue.c | 14 +-
arch/arm/crypto/chacha-glue.c | 4 +-
arch/arm/crypto/crc32-ce-glue.c | 4 +-
arch/arm/crypto/curve25519-glue.c | 7 +
arch/arm/crypto/ghash-ce-glue.c | 11 +-
arch/arm/crypto/poly1305-glue.c | 18 +-
arch/arm64/crypto/aes-ce-ccm-core.S | 16 +-
arch/arm64/crypto/aes-ce-ccm-glue.c | 8 +-
arch/arm64/crypto/aes-ce-core.S | 16 +-
arch/arm64/crypto/aes-ce-glue.c | 8 +-
arch/arm64/crypto/aes-ce.S | 4 +-
arch/arm64/crypto/aes-cipher-core.S | 8 +-
arch/arm64/crypto/aes-glue.c | 31 +-
arch/arm64/crypto/aes-modes.S | 16 +-
arch/arm64/crypto/aes-neon.S | 4 +-
arch/arm64/crypto/aes-neonbs-core.S | 40 +-
arch/arm64/crypto/chacha-neon-core.S | 16 +-
arch/arm64/crypto/crct10dif-ce-core.S | 12 +-
arch/arm64/crypto/ghash-ce-core.S | 8 +-
arch/arm64/crypto/ghash-ce-glue.c | 10 +-
arch/arm64/crypto/nh-neon-core.S | 4 +-
arch/arm64/crypto/poly1305-glue.c | 18 +-
arch/arm64/crypto/sha1-ce-core.S | 4 +-
arch/arm64/crypto/sha1-ce-glue.c | 17 +-
arch/arm64/crypto/sha2-ce-core.S | 4 +-
arch/arm64/crypto/sha2-ce-glue.c | 34 +-
arch/arm64/crypto/sha256-glue.c | 32 +-
arch/arm64/crypto/sha3-ce-core.S | 4 +-
arch/arm64/crypto/sha512-ce-core.S | 4 +-
arch/arm64/crypto/sha512-ce-glue.c | 26 +-
arch/arm64/crypto/sha512-glue.c | 15 +-
arch/arm64/crypto/sm3-ce-core.S | 4 +-
arch/arm64/crypto/sm4-ce-core.S | 4 +-
arch/mips/crypto/crc32-mips.c | 4 +-
arch/mips/crypto/poly1305-glue.c | 18 +-
arch/powerpc/crypto/aes-spe-glue.c | 18 +-
arch/powerpc/crypto/crc32c-vpmsum_glue.c | 4 +-
arch/s390/crypto/aes_s390.c | 27 +-
arch/s390/crypto/crc32-vx.c | 8 +-
arch/s390/crypto/ghash_s390.c | 4 +-
arch/s390/crypto/paes_s390.c | 25 +-
arch/sparc/crypto/aes_glue.c | 2 -
arch/sparc/crypto/camellia_glue.c | 5 +-
arch/sparc/crypto/crc32c_glue.c | 4 +-
arch/x86/crypto/.gitignore | 1 +
arch/x86/crypto/Makefile | 11 +-
arch/x86/crypto/aegis128-aesni-glue.c | 4 +-
arch/x86/crypto/aesni-intel_asm.S | 8 +-
arch/x86/crypto/aesni-intel_glue.c | 55 +-
arch/x86/crypto/blake2s-glue.c | 4 +-
arch/x86/crypto/camellia_aesni_avx2_glue.c | 77 +-
arch/x86/crypto/camellia_aesni_avx_glue.c | 81 +-
arch/x86/crypto/camellia_glue.c | 54 +-
arch/x86/crypto/cast6_avx_glue.c | 74 +-
arch/x86/crypto/crc32-pclmul_glue.c | 4 +-
arch/x86/crypto/crc32c-intel_glue.c | 4 +-
arch/x86/crypto/ghash-clmulni-intel_glue.c | 11 +-
arch/x86/crypto/glue_helper.c | 23 +-
arch/x86/crypto/poly1305-avx2-x86_64.S | 390 --
arch/x86/crypto/poly1305-sse2-x86_64.S | 590 ---
arch/x86/crypto/poly1305-x86_64-cryptogams.pl | 4265 ++++++++++++++++++++
arch/x86/crypto/poly1305_glue.c | 304 +-
arch/x86/crypto/serpent_avx2_glue.c | 65 +-
arch/x86/crypto/serpent_avx_glue.c | 63 +-
arch/x86/crypto/serpent_sse2_glue.c | 30 +-
arch/x86/crypto/sha1_avx2_x86_64_asm.S | 6 +-
arch/x86/crypto/sha1_ssse3_asm.S | 14 +-
arch/x86/crypto/sha1_ssse3_glue.c | 70 +-
arch/x86/crypto/sha256-avx-asm.S | 4 +-
arch/x86/crypto/sha256-avx2-asm.S | 4 +-
arch/x86/crypto/sha256-ssse3-asm.S | 6 +-
arch/x86/crypto/sha256_ssse3_glue.c | 34 +-
arch/x86/crypto/sha512-avx-asm.S | 11 +-
arch/x86/crypto/sha512-avx2-asm.S | 11 +-
arch/x86/crypto/sha512-ssse3-asm.S | 13 +-
arch/x86/crypto/sha512_ssse3_glue.c | 31 +-
arch/x86/crypto/twofish_avx_glue.c | 81 +-
arch/x86/crypto/twofish_glue_3way.c | 37 +-
arch/x86/include/asm/crypto/camellia.h | 65 +-
arch/x86/include/asm/crypto/glue_helper.h | 18 +-
arch/x86/include/asm/crypto/serpent-avx.h | 20 +-
arch/x86/include/asm/crypto/serpent-sse2.h | 28 +-
arch/x86/include/asm/crypto/twofish.h | 19 +-
crypto/Kconfig | 4 +-
crypto/acompress.c | 4 +-
crypto/adiantum.c | 102 +-
crypto/aead.c | 15 +-
crypto/aegis128-core.c | 4 +-
crypto/aes_generic.c | 18 +-
crypto/af_alg.c | 6 +-
crypto/ahash.c | 54 +-
crypto/akcipher.c | 9 +-
crypto/algapi.c | 248 +-
crypto/algboss.c | 12 +-
crypto/anubis.c | 2 -
crypto/api.c | 24 +-
crypto/authenc.c | 70 +-
crypto/authencesn.c | 70 +-
crypto/blake2b_generic.c | 4 +-
crypto/blake2s_generic.c | 4 +-
crypto/camellia_generic.c | 5 +-
crypto/cast6_generic.c | 28 +-
crypto/cbc.c | 15 +-
crypto/ccm.c | 136 +-
crypto/cfb.c | 5 +-
crypto/chacha20poly1305.c | 96 +-
crypto/cipher.c | 93 +-
crypto/cmac.c | 40 +-
crypto/compress.c | 31 +-
crypto/crc32_generic.c | 4 +-
crypto/crc32c_generic.c | 4 +-
crypto/cryptd.c | 131 +-
crypto/crypto_user_base.c | 3 +-
crypto/ctr.c | 26 +-
crypto/cts.c | 15 +-
crypto/des_generic.c | 10 +-
crypto/ecb.c | 5 +-
crypto/echainiv.c | 20 +-
crypto/essiv.c | 44 +-
crypto/gcm.c | 96 +-
crypto/geniv.c | 19 +-
crypto/ghash-generic.c | 4 +-
crypto/hmac.c | 62 +-
crypto/internal.h | 4 -
crypto/keywrap.c | 15 +-
crypto/lrw.c | 17 +-
crypto/michael_mic.c | 4 +-
crypto/nhpoly1305.c | 2 +-
crypto/ofb.c | 5 +-
crypto/pcbc.c | 5 +-
crypto/pcrypt.c | 44 +-
crypto/poly1305_generic.c | 25 +-
crypto/rsa-pkcs1pad.c | 8 +-
crypto/scompress.c | 4 +-
crypto/seqiv.c | 20 +-
crypto/serpent_generic.c | 6 +-
crypto/shash.c | 95 +-
crypto/simd.c | 12 +-
crypto/skcipher.c | 97 +-
crypto/sm4_generic.c | 16 +-
crypto/testmgr.c | 584 ++-
crypto/testmgr.h | 14 +-
crypto/twofish_common.c | 8 +-
crypto/vmac.c | 44 +-
crypto/xcbc.c | 45 +-
crypto/xts.c | 17 +-
crypto/xxhash_generic.c | 4 +-
drivers/char/hw_random/Kconfig | 2 +-
drivers/char/hw_random/iproc-rng200.c | 1 +
drivers/crypto/Kconfig | 89 +-
.../crypto/allwinner/sun4i-ss/sun4i-ss-cipher.c | 1 -
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-core.c | 24 +-
drivers/crypto/allwinner/sun4i-ss/sun4i-ss-hash.c | 5 +-
drivers/crypto/allwinner/sun4i-ss/sun4i-ss.h | 9 +
.../crypto/allwinner/sun8i-ce/sun8i-ce-cipher.c | 6 -
drivers/crypto/allwinner/sun8i-ce/sun8i-ce-core.c | 6 +-
drivers/crypto/allwinner/sun8i-ce/sun8i-ce.h | 8 -
.../crypto/allwinner/sun8i-ss/sun8i-ss-cipher.c | 2 -
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c | 4 +-
drivers/crypto/amcc/crypto4xx_alg.c | 31 +-
drivers/crypto/amcc/crypto4xx_core.c | 37 +-
drivers/crypto/amlogic/Kconfig | 1 +
drivers/crypto/amlogic/amlogic-gxl-cipher.c | 1 -
drivers/crypto/amlogic/amlogic-gxl-core.c | 4 +-
drivers/crypto/atmel-aes.c | 359 +-
drivers/crypto/atmel-authenc.h | 3 +-
drivers/crypto/atmel-sha.c | 473 +--
drivers/crypto/atmel-tdes.c | 375 +-
drivers/crypto/axis/artpec6_crypto.c | 10 +-
drivers/crypto/bcm/cipher.c | 17 +-
drivers/crypto/caam/Kconfig | 14 +-
drivers/crypto/caam/caamalg.c | 33 +-
drivers/crypto/caam/caamalg_qi.c | 44 +-
drivers/crypto/caam/caamalg_qi2.c | 206 +-
drivers/crypto/caam/caamhash.c | 167 +-
drivers/crypto/caam/ctrl.c | 15 +-
drivers/crypto/cavium/cpt/cptvf_algs.c | 2 -
drivers/crypto/cavium/nitrox/nitrox_aead.c | 4 +-
drivers/crypto/cavium/nitrox/nitrox_skcipher.c | 12 +-
drivers/crypto/ccp/Makefile | 4 +-
drivers/crypto/ccp/ccp-crypto-aes-cmac.c | 1 -
drivers/crypto/ccp/ccp-crypto-aes-galois.c | 1 -
drivers/crypto/ccp/ccp-crypto-aes.c | 1 -
drivers/crypto/ccp/ccp-crypto-sha.c | 4 +-
drivers/crypto/ccp/ccp-dev-v3.c | 1 +
drivers/crypto/ccp/psp-dev.c | 1042 +----
drivers/crypto/ccp/psp-dev.h | 51 +-
drivers/crypto/ccp/sev-dev.c | 1077 +++++
drivers/crypto/ccp/sev-dev.h | 63 +
drivers/crypto/ccp/sp-dev.h | 17 +-
drivers/crypto/ccp/sp-pci.c | 43 +-
drivers/crypto/ccp/tee-dev.c | 375 ++
drivers/crypto/ccp/tee-dev.h | 110 +
drivers/crypto/ccree/cc_aead.c | 43 +-
drivers/crypto/ccree/cc_cipher.c | 58 +-
drivers/crypto/ccree/cc_driver.c | 24 +-
drivers/crypto/ccree/cc_driver.h | 6 +-
drivers/crypto/ccree/cc_fips.c | 2 +-
drivers/crypto/ccree/cc_hash.c | 8 -
drivers/crypto/ccree/cc_pm.c | 39 +-
drivers/crypto/ccree/cc_pm.h | 17 +-
drivers/crypto/ccree/cc_request_mgr.c | 103 +-
drivers/crypto/ccree/cc_request_mgr.h | 8 -
drivers/crypto/chelsio/Kconfig | 30 +-
drivers/crypto/chelsio/chcr_algo.c | 53 +-
drivers/crypto/chelsio/chcr_core.c | 10 +-
drivers/crypto/chelsio/chtls/chtls.h | 7 +-
drivers/crypto/chelsio/chtls/chtls_cm.c | 57 +-
drivers/crypto/chelsio/chtls/chtls_cm.h | 21 +
drivers/crypto/chelsio/chtls/chtls_hw.c | 65 +-
drivers/crypto/chelsio/chtls/chtls_main.c | 28 +-
drivers/crypto/geode-aes.c | 24 +-
drivers/crypto/hisilicon/Kconfig | 11 +-
drivers/crypto/hisilicon/hpre/hpre_crypto.c | 141 +-
drivers/crypto/hisilicon/hpre/hpre_main.c | 60 +-
drivers/crypto/hisilicon/sec2/sec.h | 53 +-
drivers/crypto/hisilicon/sec2/sec_crypto.c | 963 ++++-
drivers/crypto/hisilicon/sec2/sec_crypto.h | 22 +-
drivers/crypto/hisilicon/sec2/sec_main.c | 19 +-
drivers/crypto/hisilicon/sgl.c | 17 +-
drivers/crypto/hisilicon/zip/zip.h | 4 +
drivers/crypto/hisilicon/zip/zip_crypto.c | 92 +-
drivers/crypto/img-hash.c | 6 +-
drivers/crypto/inside-secure/safexcel.c | 12 +-
drivers/crypto/inside-secure/safexcel.h | 34 +-
drivers/crypto/inside-secure/safexcel_cipher.c | 600 +--
drivers/crypto/inside-secure/safexcel_hash.c | 36 +-
drivers/crypto/inside-secure/safexcel_ring.c | 130 +-
drivers/crypto/ixp4xx_crypto.c | 31 +-
drivers/crypto/marvell/cipher.c | 4 +-
drivers/crypto/mediatek/mtk-aes.c | 4 -
drivers/crypto/mxs-dcp.c | 12 +-
drivers/crypto/n2_core.c | 1 -
drivers/crypto/omap-aes-gcm.c | 223 +-
drivers/crypto/omap-aes.c | 142 +-
drivers/crypto/omap-aes.h | 12 +-
drivers/crypto/omap-crypto.c | 37 +-
drivers/crypto/omap-des.c | 13 +-
drivers/crypto/omap-sham.c | 191 +-
drivers/crypto/padlock-aes.c | 9 +-
drivers/crypto/padlock-sha.c | 26 +-
drivers/crypto/picoxcell_crypto.c | 30 +-
drivers/crypto/qat/qat_common/qat_algs.c | 6 +-
drivers/crypto/qce/Makefile | 7 +-
drivers/crypto/qce/common.c | 244 +-
drivers/crypto/qce/core.c | 4 +
drivers/crypto/qce/dma.c | 6 +-
drivers/crypto/qce/dma.h | 3 +-
drivers/crypto/qce/sha.c | 2 -
drivers/crypto/qce/skcipher.c | 41 +-
drivers/crypto/rockchip/rk3288_crypto_skcipher.c | 4 +-
drivers/crypto/sahara.c | 9 +-
drivers/crypto/stm32/Kconfig | 6 +-
drivers/crypto/stm32/stm32-crc32.c | 4 +-
drivers/crypto/stm32/stm32-hash.c | 6 +-
drivers/crypto/talitos.c | 15 +-
drivers/crypto/ux500/Kconfig | 16 +-
drivers/crypto/ux500/cryp/cryp_core.c | 2 -
drivers/crypto/virtio/virtio_crypto_algs.c | 8 +-
drivers/crypto/vmx/aes_xts.c | 3 +
drivers/tee/Kconfig | 4 +-
drivers/tee/Makefile | 1 +
drivers/tee/amdtee/Kconfig | 8 +
drivers/tee/amdtee/Makefile | 5 +
drivers/tee/amdtee/amdtee_if.h | 183 +
drivers/tee/amdtee/amdtee_private.h | 159 +
drivers/tee/amdtee/call.c | 373 ++
drivers/tee/amdtee/core.c | 518 +++
drivers/tee/amdtee/shm_pool.c | 93 +
fs/ecryptfs/crypto.c | 2 +-
fs/ecryptfs/keystore.c | 4 +-
include/crypto/aead.h | 10 +
include/crypto/algapi.h | 84 +-
include/crypto/cast6.h | 7 +-
include/crypto/hash.h | 13 +
include/crypto/internal/acompress.h | 4 +-
include/crypto/internal/aead.h | 21 +-
include/crypto/internal/akcipher.h | 12 +-
include/crypto/internal/chacha.h | 2 +-
include/crypto/internal/des.h | 23 +-
include/crypto/internal/geniv.h | 1 -
include/crypto/internal/hash.h | 90 +-
include/crypto/internal/poly1305.h | 45 +-
include/crypto/internal/scompress.h | 4 +-
include/crypto/internal/skcipher.h | 27 +-
include/crypto/nhpoly1305.h | 4 +-
include/crypto/poly1305.h | 26 +-
include/crypto/serpent.h | 4 +-
include/crypto/skcipher.h | 26 +-
include/crypto/twofish.h | 2 +-
include/crypto/xts.h | 21 +-
include/linux/cpuhotplug.h | 1 +
include/linux/crypto.h | 104 +-
include/linux/padata.h | 56 +-
include/linux/platform_data/crypto-atmel.h | 23 -
include/linux/psp-tee.h | 91 +
include/uapi/linux/tee.h | 1 +
kernel/padata.c | 386 +-
lib/crypto/Kconfig | 2 +-
lib/crypto/Makefile | 14 +-
lib/crypto/chacha20poly1305-selftest.c | 1712 +++++++-
lib/crypto/curve25519-generic.c | 24 +
lib/crypto/curve25519-selftest.c | 1321 ++++++
lib/crypto/curve25519.c | 20 +-
lib/crypto/poly1305-donna32.c | 204 +
lib/crypto/poly1305-donna64.c | 185 +
lib/crypto/poly1305.c | 169 +-
315 files changed, 16794 insertions(+), 8204 deletions(-)
create mode 100644 Documentation/core-api/padata.rst
delete mode 100644 Documentation/padata.txt
create mode 100644 arch/x86/crypto/.gitignore
delete mode 100644 arch/x86/crypto/poly1305-avx2-x86_64.S
delete mode 100644 arch/x86/crypto/poly1305-sse2-x86_64.S
create mode 100644 arch/x86/crypto/poly1305-x86_64-cryptogams.pl
create mode 100644 drivers/crypto/ccp/sev-dev.c
create mode 100644 drivers/crypto/ccp/sev-dev.h
create mode 100644 drivers/crypto/ccp/tee-dev.c
create mode 100644 drivers/crypto/ccp/tee-dev.h
create mode 100644 drivers/tee/amdtee/Kconfig
create mode 100644 drivers/tee/amdtee/Makefile
create mode 100644 drivers/tee/amdtee/amdtee_if.h
create mode 100644 drivers/tee/amdtee/amdtee_private.h
create mode 100644 drivers/tee/amdtee/call.c
create mode 100644 drivers/tee/amdtee/core.c
create mode 100644 drivers/tee/amdtee/shm_pool.c
delete mode 100644 include/linux/platform_data/crypto-atmel.h
create mode 100644 include/linux/psp-tee.h
create mode 100644 lib/crypto/curve25519-generic.c
create mode 100644 lib/crypto/curve25519-selftest.c
create mode 100644 lib/crypto/poly1305-donna32.c
create mode 100644 lib/crypto/poly1305-donna64.c

Thanks,
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

2020-01-29 00:30:19

by pr-tracker-bot

[permalink] [raw]
Subject: Re: [GIT PULL] Crypto Update for 5.6

The pull request you sent on Tue, 28 Jan 2020 13:03:26 +0800:

> git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/a78208e2436963d0b2c7d186277d6e1a9755029a

Thank you!

--
Deet-doot-dot, I am a bot.
https://korg.wiki.kernel.org/userdoc/prtracker

2020-02-13 03:33:23

by Herbert Xu

[permalink] [raw]
Subject: [GIT PULL] Crypto Fixes for 5.6

Hi Linus:

This push fixes a Kconfig anomaly when lib/crypto is enabled without
Crypto API.

The following changes since commit 0bc81767c5bd9d005fae1099fb39eb3688370cb1:

crypto: arm/chacha - fix build failured when kernel mode NEON is disabled (2020-01-22 16:21:11 +0800)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

for you to fetch changes up to 2343d1529aff8b552589f622c23932035ed7a05d:

crypto: Kconfig - allow tests to be disabled when manager is disabled (2020-02-05 17:00:57 +0800)

----------------------------------------------------------------
Jason A. Donenfeld (1):
crypto: Kconfig - allow tests to be disabled when manager is disabled

crypto/Kconfig | 4 ----
1 file changed, 4 deletions(-)

Thanks,
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

2020-04-01 04:28:20

by Herbert Xu

[permalink] [raw]
Subject: [GIT PULL] Crypto Update for 5.7

Hi Linus:

API:

- Fix out-of-sync IVs in self-test for IPsec AEAD algorithms.

Algorithms:

- Use formally verified implementation of x86/curve25519.

Drivers:

- Enhance hwrng support in caam.
- Use crypto_engine for skcipher/aead/rsa/hash in caam.
- Add Xilinx AES driver.
- Add uacce driver.
- Register zip engine to uacce in hisilicon.
- Add support for OCTEON TX CPT engine in marvell.

The following changes since commit bb6d3fb354c5ee8d6bde2d576eb7220ea09862b9:

Linux 5.6-rc1 (2020-02-09 16:08:48 -0800)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

for you to fetch changes up to fcb90d51c375d09a034993cda262b68499e233a4:

crypto: af_alg - bool type cosmetics (2020-03-30 11:50:50 +1100)

----------------------------------------------------------------
Al Viro (1):
crypto: chelsio - Endianess bug in create_authenc_wr

Andrei Botila (2):
crypto: caam - update xts sector size for large input length
bus: fsl-mc: add api to retrieve mc version

Andrey Smirnov (8):
crypto: caam - allocate RNG instantiation descriptor with GFP_DMA
crypto: caam - use struct hwrng's .init for initialization
crypto: caam - drop global context pointer and init_done
crypto: caam - simplify RNG implementation
crypto: caam - check if RNG job failed
crypto: caam - invalidate entropy register during RNG initialization
crypto: caam - enable prediction resistance in HRWNG
crypto: caam - limit single JD RNG output to maximum of 16 bytes

Ayush Sawal (5):
crypto: chelsio - This fixes the libkcapi's cbc(aes) aio fail test cases
crypto: chelsio - This fixes the kernel panic which occurs during a libkcapi test
MAINTAINERS: Update maintainers for chelsio crypto drivers
crypto: chelsio - Recalculate iv only if it is needed
crypto: chelsio - Use multiple txq/rxq per tfm to process the requests

Chen Zhou (1):
crypto: allwinner - remove redundant platform_get_irq error message

Colin Ian King (1):
crypto: hisilicon - remove redundant assignment of pointer ctx

Connor Kuehl (1):
crypto: ccp - use file mode for sev ioctl permissions

Corentin Labbe (3):
crypto: arm64/sha-ce - implement export/import
crypto: sun8i-ss - fix description of stat_fb
crypto: sun8i-ce - fix description of stat_fb

Dan Carpenter (1):
crypto: rng - Fix a refcounting bug in crypto_rng_reset()

Daniel Jordan (1):
padata: fix uninitialized return value in padata_replace()

Devulapally Shiva Krishna (2):
crypto: chelsio - Print the chcr driver information while module load.
crypto: chelsio - un-register crypto algorithms

Eneas U de Queiroz (4):
crypto: qce - use cryptlen when adding extra sgl
crypto: qce - use AES fallback for small requests
crypto: qce - handle AES-XTS cases that qce fails
crypto: qce - fix wrong config symbol reference

Eric Biggers (15):
crypto: authencesn - fix weird comma-terminated line
crypto: ccm - simplify error handling in crypto_rfc4309_create()
crypto: cryptd - simplify error handling in cryptd_create_*()
crypto: ctr - simplify error handling in crypto_rfc3686_create()
crypto: cts - simplify error handling in crypto_cts_create()
crypto: gcm - simplify error handling in crypto_rfc4106_create()
crypto: gcm - simplify error handling in crypto_rfc4543_create()
crypto: geniv - simply error handling in aead_geniv_alloc()
crypto: lrw - simplify error handling in create()
crypto: pcrypt - simplify error handling in pcrypt_create_aead()
crypto: rsa-pkcs1pad - simplify error handling in pkcs1pad_create()
crypto: xts - simplify error handling in ->create()
crypto: testmgr - use consistent IV copies for AEADs that need it
crypto: testmgr - do comparison tests before inauthentic input tests
crypto: aead - improve documentation for scatterlist layout

Geert Uytterhoeven (35):
debugfs: regset32: Add Runtime PM support
crypto: ccree - fix debugfs register access while suspended
crypto: ccree - fix retry handling in cc_send_sync_request()
crypto: ccree - remove unneeded casts
crypto: ccree - swap SHA384 and SHA512 larval hashes at build time
crypto: ccree - drop duplicated error message on SRAM exhaustion
crypto: ccree - remove empty cc_sram_mgr_fini()
crypto: ccree - clean up clock handling
crypto: ccree - make mlli_params.mlli_virt_addr void *
crypto: ccree - use existing helpers to split 64-bit addresses
crypto: ccree - defer larval_digest_addr init until needed
crypto: ccree - remove bogus paragraph about freeing SRAM
crypto: ccree - use u32 for SRAM addresses
crypto: ccree - simplify Runtime PM handling
crypto: ccree - use of_device_get_match_data()
crypto: ccree - remove cc_pm_is_dev_suspended() wrapper
crypto: ccree - make cc_pm_{suspend,resume}() static
crypto: ccree - remove struct cc_sram_ctx
crypto: ccree - remove struct cc_debugfs_ctx
crypto: ccree - remove struct buff_mgr_handle
crypto: ccree - remove struct cc_cipher_handle
crypto: ccree - extract cc_init_copy_sram()
crypto: ccree - remove bogus kerneldoc markers
crypto: ccree - improve kerneldoc in cc_hw_queue_defs.h
crypto: ccree - improve kerneldoc in cc_buffer_mgr.c
crypto: ccree - improve kerneldoc in cc_hash.[ch]
crypto: ccree - improve kerneldoc in cc_request_mgr.[ch]
crypto: ccree - improve kerneldoc in cc_sram_mgr.[ch]
crypto: ccree - spelling s/Crytpcell/Cryptocell/
crypto: ccree - grammar s/not room/no room/
crypto: ccree - use existing dev helper in init_cc_resources()
crypto: ccree - use devm_k[mz]alloc() for AEAD data
crypto: ccree - use devm_k[mz]alloc() for cipher data
crypto: ccree - use devm_kzalloc() for hash data
crypto: qat - spelling s/Decrytp/Decrypt/

Gilad Ben-Yossef (9):
crypto: ccree - protect against empty or NULL scatterlists
crypto: ccree - only try to map auth tag if needed
crypto: ccree - fix some reported cipher block sizes
crypto: ccree - fix AEAD blocksize registration
crypto: ccree - dec auth tag size from cryptlen map
crypto: ccree - remove ancient TODO remarks
crypto: ccree - only check condition if needed
crypto: ccree - use crypto_ipsec_check_assoclen()
crypto: ccree - refactor AEAD IV in AAD handling

Gustavo A. R. Silva (3):
crypto: img-hash - Replace zero-length array with flexible-array member
crypto: s5p-sss - Replace zero-length array with flexible-array member
crypto: Replace zero-length array with flexible-array member

Hadar Gat (2):
crypto: ccree - update register handling macros
crypto: ccree - remove pointless comment

Herbert Xu (1):
hwrng: omap3-rom - Include linux/io.h for virt_to_phys

Hongbo Yao (1):
crypto: hisilicon - qm depends on UACCE

Horia Geantă (2):
crypto: tcrypt - fix printed skcipher [a]sync mode
crypto: caam/qi2 - fix chacha20 data size error

Hui Tang (1):
crypto: hisilicon/hpre - Optimize finding hpre device process

Iuliana Prodan (9):
crypto: caam - refactor skcipher/aead/gcm/chachapoly {en,de}crypt functions
crypto: caam - refactor ahash_done callbacks
crypto: caam - refactor ahash_edesc_alloc
crypto: caam - refactor RSA private key _done callbacks
crypto: caam - change return code in caam_jr_enqueue function
crypto: caam - support crypto_engine framework for SKCIPHER algorithms
crypto: caam - add crypto_engine support for AEAD algorithms
crypto: caam - add crypto_engine support for RSA algorithms
crypto: caam - add crypto_engine support for HASH algorithms

Jason A. Donenfeld (3):
crypto: x86/curve25519 - replace with formally verified implementation
crypto: x86/curve25519 - leave r12 as spare register
crypto: arm[64]/poly1305 - add artifact to .gitignore files

Jianhui Zhao (1):
crypto: atmel-i2c - Fix wakeup fail

John Allen (2):
crypto: ccp - Cleanup misc_dev on sev_exit()
crypto: ccp - Cleanup sp_dev_master in psp_dev_destroy()

Kai Ye (1):
crypto: hisilicon/sec2 - Add new create qp process

Kalyani Akula (3):
firmware: xilinx: Add ZynqMP aes API for AES functionality
dt-bindings: crypto: Add bindings for ZynqMP AES-GCM driver
crypto: xilinx - Add Xilinx AES driver

Kenneth Lee (2):
uacce: Add documents for uacce
uacce: add uacce driver

Longfang Liu (3):
crypto: hisilicon/sec2 - Add iommu status check
crypto: hisilicon/sec2 - Update IV and MAC operation
crypto: hisilicon/sec2 - Add pbuffer mode for SEC driver

Lothar Rubusch (1):
crypto: af_alg - bool type cosmetics

Martin Kaiser (5):
hwrng: imx-rngc - fix an error path
hwrng: imx-rngc - use automatic seeding
hwrng: imx-rngc - (trivial) simplify error prints
hwrng: imx-rngc - check the rng type
hwrng: imx-rngc - simplify interrupt mask/unmask

Matteo Croce (1):
crypto: arm64/poly1305 - ignore build files

Randy Dunlap (1):
hwrng: ks-sa - move TI Keystone driver into the config menu structure

Rosioru Dragos (1):
crypto: mxs-dcp - fix scatterlist linearization for hash

Shukun Tan (6):
crypto: hisilicon - Unify hardware error init/uninit into QM
crypto: hisilicon - Configure zip RAS error type
crypto: hisilicon - Unify error detect process into qm
crypto: hisilicon - Fix duplicate print when qm occur multiple errors
crypto: hisilicon - Use one workqueue per qm instead of per qp
crypto: hisilicon/zip - Use hisi_qm_alloc_qps_node() when init ctx

SrujanaChalla (4):
crypto: marvell - create common Kconfig and Makefile for Marvell
crypto: marvell - add support for OCTEON TX CPT engine
crypto: marvell - add the Virtual Function driver for CPT
crypto: marvell - enable OcteonTX cpt options for build

Stefan Agner (1):
crypto: arm/ghash-ce - define fpu before fpu registers are referenced

Stephen Kitt (1):
crypto: chelsio - remove extra allocation for chtls_dev

Takashi Iwai (1):
crypto: bcm - Use scnprintf() for avoiding potential buffer overflow

Tianjia Zhang (2):
crypto: proc - simplify the c_show function
crypto: qat - simplify the qat_crypto function

Torsten Duwe (1):
crypto: arm/neon - memzero_explicit aes-cbc key

Uwe Kleine-König (1):
hwrng: imx-rngc - improve dependencies

Valentin Ciocoi Radulescu (1):
crypto: caam/qi - optimize frame queue cleanup

Vinay Kumar Yadav (2):
crypto: chelsio/chtls - Fixed tls stats
crypto: chelsio/chtls - Fixed boolinit.cocci warning

Weili Qian (1):
crypto: hisilicon/qm - Put device finding logic into QM

Ye Kai (1):
crypto: hisilicon/sec2 - Add workqueue for SEC driver.

YueHaibing (4):
crypto: ccree - remove set but not used variable 'du_size'
crypto: md5 - remove unused macros
crypto: chelsio - remove set but not used variable 'adap'
crypto: ccree - remove duplicated include from cc_aead.c

Zhangfei Gao (4):
crypto: hisilicon - Remove module_param uacce_mode
crypto: hisilicon - register zip engine to uacce
MAINTAINERS: add maintainers for uacce
uacce: unmap remaining mmapping from user space

Documentation/ABI/testing/sysfs-driver-uacce | 39 +
.../bindings/crypto/xlnx,zynqmp-aes.yaml | 37 +
Documentation/misc-devices/uacce.rst | 176 +
MAINTAINERS | 17 +-
arch/arm/crypto/.gitignore | 1 +
arch/arm/crypto/aes-neonbs-glue.c | 1 +
arch/arm/crypto/ghash-ce-core.S | 5 +-
arch/arm64/crypto/.gitignore | 1 +
arch/arm64/crypto/aes-neonbs-glue.c | 1 +
arch/arm64/crypto/sha1-ce-glue.c | 20 +
arch/arm64/crypto/sha2-ce-glue.c | 23 +
arch/x86/crypto/curve25519-x86_64.c | 3546 +++++++-------------
crypto/af_alg.c | 10 +-
crypto/algif_hash.c | 6 +-
crypto/authencesn.c | 2 +-
crypto/ccm.c | 29 +-
crypto/cryptd.c | 37 +-
crypto/ctr.c | 29 +-
crypto/cts.c | 27 +-
crypto/gcm.c | 66 +-
crypto/geniv.c | 17 +-
crypto/lrw.c | 28 +-
crypto/md5.c | 3 -
crypto/pcrypt.c | 33 +-
crypto/proc.c | 2 +-
crypto/rng.c | 8 +-
crypto/rsa-pkcs1pad.c | 59 +-
crypto/tcrypt.c | 4 +-
crypto/testmgr.c | 28 +-
crypto/xts.c | 28 +-
drivers/bus/fsl-mc/fsl-mc-bus.c | 33 +-
drivers/char/hw_random/Kconfig | 17 +-
drivers/char/hw_random/imx-rngc.c | 85 +-
drivers/char/hw_random/omap3-rom-rng.c | 1 +
drivers/crypto/Kconfig | 50 +-
drivers/crypto/Makefile | 3 +-
drivers/crypto/allwinner/sun8i-ce/sun8i-ce-core.c | 4 +-
drivers/crypto/allwinner/sun8i-ce/sun8i-ce.h | 2 +-
drivers/crypto/allwinner/sun8i-ss/sun8i-ss.h | 2 +-
drivers/crypto/atmel-i2c.c | 3 +-
drivers/crypto/bcm/util.c | 40 +-
drivers/crypto/caam/Kconfig | 2 +
drivers/crypto/caam/caamalg.c | 415 +--
drivers/crypto/caam/caamalg_desc.c | 30 +-
drivers/crypto/caam/caamalg_qi.c | 4 +-
drivers/crypto/caam/caamalg_qi2.h | 6 +-
drivers/crypto/caam/caamhash.c | 340 +-
drivers/crypto/caam/caampkc.c | 185 +-
drivers/crypto/caam/caampkc.h | 10 +
drivers/crypto/caam/caamrng.c | 405 +--
drivers/crypto/caam/ctrl.c | 88 +-
drivers/crypto/caam/desc.h | 2 +
drivers/crypto/caam/intern.h | 9 +-
drivers/crypto/caam/jr.c | 49 +-
drivers/crypto/caam/key_gen.c | 2 +-
drivers/crypto/caam/qi.c | 60 +-
drivers/crypto/caam/qi.h | 4 +-
drivers/crypto/caam/regs.h | 7 +-
drivers/crypto/cavium/nitrox/nitrox_main.c | 2 +-
drivers/crypto/ccp/psp-dev.c | 3 +
drivers/crypto/ccp/sev-dev.c | 39 +-
drivers/crypto/ccp/sp-dev.h | 1 +
drivers/crypto/ccp/sp-pci.c | 9 +
drivers/crypto/ccree/cc_aead.c | 176 +-
drivers/crypto/ccree/cc_aead.h | 3 +-
drivers/crypto/ccree/cc_buffer_mgr.c | 229 +-
drivers/crypto/ccree/cc_buffer_mgr.h | 5 +-
drivers/crypto/ccree/cc_cipher.c | 78 +-
drivers/crypto/ccree/cc_debugfs.c | 29 +-
drivers/crypto/ccree/cc_driver.c | 127 +-
drivers/crypto/ccree/cc_driver.h | 18 +-
drivers/crypto/ccree/cc_hash.c | 228 +-
drivers/crypto/ccree/cc_hash.h | 31 +-
drivers/crypto/ccree/cc_hw_queue_defs.h | 332 +-
drivers/crypto/ccree/cc_pm.c | 60 +-
drivers/crypto/ccree/cc_pm.h | 21 -
drivers/crypto/ccree/cc_request_mgr.c | 48 +-
drivers/crypto/ccree/cc_request_mgr.h | 19 +-
drivers/crypto/ccree/cc_sram_mgr.c | 78 +-
drivers/crypto/ccree/cc_sram_mgr.h | 45 +-
drivers/crypto/chelsio/chcr_algo.c | 358 +-
drivers/crypto/chelsio/chcr_core.c | 3 +
drivers/crypto/chelsio/chcr_core.h | 6 +-
drivers/crypto/chelsio/chcr_crypto.h | 16 +-
drivers/crypto/chelsio/chtls/chtls_io.c | 7 +-
drivers/crypto/chelsio/chtls/chtls_main.c | 10 +-
drivers/crypto/hisilicon/Kconfig | 2 +
drivers/crypto/hisilicon/hpre/hpre.h | 3 +-
drivers/crypto/hisilicon/hpre/hpre_crypto.c | 20 +-
drivers/crypto/hisilicon/hpre/hpre_main.c | 160 +-
drivers/crypto/hisilicon/qm.c | 619 +++-
drivers/crypto/hisilicon/qm.h | 72 +-
drivers/crypto/hisilicon/sec2/sec.h | 12 +-
drivers/crypto/hisilicon/sec2/sec_crypto.c | 260 +-
drivers/crypto/hisilicon/sec2/sec_main.c | 294 +-
drivers/crypto/hisilicon/zip/zip.h | 2 +-
drivers/crypto/hisilicon/zip/zip_crypto.c | 54 +-
drivers/crypto/hisilicon/zip/zip_main.c | 324 +-
drivers/crypto/img-hash.c | 2 +-
drivers/crypto/marvell/Kconfig | 37 +
drivers/crypto/marvell/Makefile | 7 +-
drivers/crypto/marvell/cesa/Makefile | 3 +
drivers/crypto/marvell/{ => cesa}/cesa.c | 0
drivers/crypto/marvell/{ => cesa}/cesa.h | 5 +-
drivers/crypto/marvell/{ => cesa}/cipher.c | 15 +-
drivers/crypto/marvell/{ => cesa}/hash.c | 38 +-
drivers/crypto/marvell/{ => cesa}/tdma.c | 10 +-
drivers/crypto/marvell/octeontx/Makefile | 6 +
drivers/crypto/marvell/octeontx/otx_cpt_common.h | 51 +
drivers/crypto/marvell/octeontx/otx_cpt_hw_types.h | 824 +++++
drivers/crypto/marvell/octeontx/otx_cptpf.h | 34 +
drivers/crypto/marvell/octeontx/otx_cptpf_main.c | 307 ++
drivers/crypto/marvell/octeontx/otx_cptpf_mbox.c | 253 ++
drivers/crypto/marvell/octeontx/otx_cptpf_ucode.c | 1686 ++++++++++
drivers/crypto/marvell/octeontx/otx_cptpf_ucode.h | 180 +
drivers/crypto/marvell/octeontx/otx_cptvf.h | 104 +
drivers/crypto/marvell/octeontx/otx_cptvf_algs.c | 1744 ++++++++++
drivers/crypto/marvell/octeontx/otx_cptvf_algs.h | 188 ++
drivers/crypto/marvell/octeontx/otx_cptvf_main.c | 985 ++++++
drivers/crypto/marvell/octeontx/otx_cptvf_mbox.c | 247 ++
drivers/crypto/marvell/octeontx/otx_cptvf_reqmgr.c | 612 ++++
drivers/crypto/marvell/octeontx/otx_cptvf_reqmgr.h | 227 ++
drivers/crypto/mediatek/mtk-sha.c | 2 +-
drivers/crypto/mxs-dcp.c | 58 +-
drivers/crypto/nx/nx.h | 2 +-
drivers/crypto/omap-sham.c | 4 +-
drivers/crypto/qat/qat_common/qat_algs.c | 2 +-
drivers/crypto/qat/qat_common/qat_crypto.c | 3 +-
drivers/crypto/qce/common.c | 2 -
drivers/crypto/qce/common.h | 3 +
drivers/crypto/qce/dma.c | 11 +-
drivers/crypto/qce/dma.h | 2 +-
drivers/crypto/qce/skcipher.c | 30 +-
drivers/crypto/s5p-sss.c | 2 +-
drivers/crypto/xilinx/Makefile | 2 +
drivers/crypto/xilinx/zynqmp-aes-gcm.c | 457 +++
drivers/firmware/xilinx/zynqmp.c | 25 +
drivers/misc/Kconfig | 1 +
drivers/misc/Makefile | 1 +
drivers/misc/uacce/Kconfig | 13 +
drivers/misc/uacce/Makefile | 2 +
drivers/misc/uacce/uacce.c | 633 ++++
fs/debugfs/file.c | 8 +
include/crypto/aead.h | 48 +-
include/crypto/if_alg.h | 2 +-
include/linux/debugfs.h | 1 +
include/linux/firmware/xlnx-zynqmp.h | 2 +
include/linux/fsl/mc.h | 16 +
include/linux/uacce.h | 163 +
include/uapi/misc/uacce/hisi_qm.h | 23 +
include/uapi/misc/uacce/uacce.h | 38 +
kernel/padata.c | 9 +-
152 files changed, 13777 insertions(+), 5297 deletions(-)
create mode 100644 Documentation/ABI/testing/sysfs-driver-uacce
create mode 100644 Documentation/devicetree/bindings/crypto/xlnx,zynqmp-aes.yaml
create mode 100644 Documentation/misc-devices/uacce.rst
create mode 100644 drivers/crypto/marvell/Kconfig
create mode 100644 drivers/crypto/marvell/cesa/Makefile
rename drivers/crypto/marvell/{ => cesa}/cesa.c (100%)
rename drivers/crypto/marvell/{ => cesa}/cesa.h (99%)
rename drivers/crypto/marvell/{ => cesa}/cipher.c (98%)
rename drivers/crypto/marvell/{ => cesa}/hash.c (98%)
rename drivers/crypto/marvell/{ => cesa}/tdma.c (97%)
create mode 100644 drivers/crypto/marvell/octeontx/Makefile
create mode 100644 drivers/crypto/marvell/octeontx/otx_cpt_common.h
create mode 100644 drivers/crypto/marvell/octeontx/otx_cpt_hw_types.h
create mode 100644 drivers/crypto/marvell/octeontx/otx_cptpf.h
create mode 100644 drivers/crypto/marvell/octeontx/otx_cptpf_main.c
create mode 100644 drivers/crypto/marvell/octeontx/otx_cptpf_mbox.c
create mode 100644 drivers/crypto/marvell/octeontx/otx_cptpf_ucode.c
create mode 100644 drivers/crypto/marvell/octeontx/otx_cptpf_ucode.h
create mode 100644 drivers/crypto/marvell/octeontx/otx_cptvf.h
create mode 100644 drivers/crypto/marvell/octeontx/otx_cptvf_algs.c
create mode 100644 drivers/crypto/marvell/octeontx/otx_cptvf_algs.h
create mode 100644 drivers/crypto/marvell/octeontx/otx_cptvf_main.c
create mode 100644 drivers/crypto/marvell/octeontx/otx_cptvf_mbox.c
create mode 100644 drivers/crypto/marvell/octeontx/otx_cptvf_reqmgr.c
create mode 100644 drivers/crypto/marvell/octeontx/otx_cptvf_reqmgr.h
create mode 100644 drivers/crypto/xilinx/Makefile
create mode 100644 drivers/crypto/xilinx/zynqmp-aes-gcm.c
create mode 100644 drivers/misc/uacce/Kconfig
create mode 100644 drivers/misc/uacce/Makefile
create mode 100644 drivers/misc/uacce/uacce.c
create mode 100644 include/linux/uacce.h
create mode 100644 include/uapi/misc/uacce/hisi_qm.h
create mode 100644 include/uapi/misc/uacce/uacce.h

Thanks,
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

2020-04-01 22:35:42

by pr-tracker-bot

[permalink] [raw]
Subject: Re: [GIT PULL] Crypto Update for 5.7

The pull request you sent on Wed, 1 Apr 2020 15:27:21 +1100:

> git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/72f35423e8a6a2451c202f52cb8adb92b08592ec

Thank you!

--
Deet-doot-dot, I am a bot.
https://korg.wiki.kernel.org/userdoc/prtracker

2020-04-08 06:18:19

by Herbert Xu

[permalink] [raw]
Subject: [GIT PULL] Crypto Fixes for 5.7

Hi Linus:

This push fixes a Kconfig dependency for hisilicon as well as a
double free in marvell/octeontx.

The following changes since commit fcb90d51c375d09a034993cda262b68499e233a4:

crypto: af_alg - bool type cosmetics (2020-03-30 11:50:50 +1100)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

for you to fetch changes up to 755bddd1e4eaf9178758bd554c60aaab46fc42ba:

crypto: marvell/octeontx - fix double free of ptr (2020-04-03 15:37:26 +1100)

----------------------------------------------------------------
Colin Ian King (1):
crypto: marvell/octeontx - fix double free of ptr

YueHaibing (1):
crypto: hisilicon - Fix build error

drivers/crypto/hisilicon/Kconfig | 2 ++
drivers/crypto/marvell/octeontx/otx_cptvf_algs.c | 8 +++++---
2 files changed, 7 insertions(+), 3 deletions(-)

Thanks,
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

2020-04-29 05:55:14

by Herbert Xu

[permalink] [raw]
Subject: [GIT PULL] Crypto Fixes for 5.7

Hi Linus:

This push fixes a bunch of bugs detected by KASAN in the caam driver.

The following changes since commit 8f3d9f354286745c751374f5f1fcafee6b3f3136:

Linux 5.7-rc1 (2020-04-12 12:35:55 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

for you to fetch changes up to 55b3209acbb01cb02b1ee6b1afe80d83b1aab36d:

crypto: caam - fix the address of the last entry of S/G (2020-04-16 16:48:56 +1000)

----------------------------------------------------------------
Iuliana Prodan (5):
crypto: caam - fix use-after-free KASAN issue for SKCIPHER algorithms
crypto: caam - fix use-after-free KASAN issue for AEAD algorithms
crypto: caam - fix use-after-free KASAN issue for HASH algorithms
crypto: caam - fix use-after-free KASAN issue for RSA algorithms
crypto: caam - fix the address of the last entry of S/G

drivers/crypto/caam/caamalg.c | 10 +++++++---
drivers/crypto/caam/caamhash.c | 8 ++++++--
drivers/crypto/caam/caampkc.c | 8 ++++++--
3 files changed, 19 insertions(+), 7 deletions(-)

Thanks,
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

2020-04-29 16:50:51

by pr-tracker-bot

[permalink] [raw]
Subject: Re: [GIT PULL] Crypto Fixes for 5.7

The pull request you sent on Wed, 29 Apr 2020 15:54:20 +1000:

> git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/6c3efdc911b67816285719bd610152232cf5e8e4

Thank you!

--
Deet-doot-dot, I am a bot.
https://korg.wiki.kernel.org/userdoc/prtracker

2020-05-06 05:11:40

by Herbert Xu

[permalink] [raw]
Subject: [GIT PULL] Crypto Fixes for 5.7

Hi Linus:

This push fixes a potential scheduling latency problem for the
algorithms used by WireGuard.

The following changes since commit 55b3209acbb01cb02b1ee6b1afe80d83b1aab36d:

crypto: caam - fix the address of the last entry of S/G (2020-04-16 16:48:56 +1000)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

for you to fetch changes up to a9a8ba90fa5857c2c8a0e32eef2159cec717da11:

crypto: arch/nhpoly1305 - process in explicit 4k chunks (2020-04-30 15:16:59 +1000)

----------------------------------------------------------------
Jason A. Donenfeld (2):
crypto: arch/lib - limit simd usage to 4k chunks
crypto: arch/nhpoly1305 - process in explicit 4k chunks

arch/arm/crypto/chacha-glue.c | 14 +++++++++++---
arch/arm/crypto/nhpoly1305-neon-glue.c | 2 +-
arch/arm/crypto/poly1305-glue.c | 15 +++++++++++----
arch/arm64/crypto/chacha-neon-glue.c | 14 +++++++++++---
arch/arm64/crypto/nhpoly1305-neon-glue.c | 2 +-
arch/arm64/crypto/poly1305-glue.c | 15 +++++++++++----
arch/x86/crypto/blake2s-glue.c | 10 ++++------
arch/x86/crypto/chacha_glue.c | 14 +++++++++++---
arch/x86/crypto/nhpoly1305-avx2-glue.c | 2 +-
arch/x86/crypto/nhpoly1305-sse2-glue.c | 2 +-
arch/x86/crypto/poly1305_glue.c | 13 ++++++-------
11 files changed, 69 insertions(+), 34 deletions(-)

Thanks,
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

2020-05-06 17:25:45

by pr-tracker-bot

[permalink] [raw]
Subject: Re: [GIT PULL] Crypto Fixes for 5.7

The pull request you sent on Wed, 6 May 2020 15:10:06 +1000:

> git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/3c40cdb0e93ec166f1fa4fee1eb62d45b5451515

Thank you!

--
Deet-doot-dot, I am a bot.
https://korg.wiki.kernel.org/userdoc/prtracker

2020-06-01 02:46:26

by Herbert Xu

[permalink] [raw]
Subject: [GIT PULL] Crypto Update for 5.8

Hi Linus:

API:

- Introduce crypto_shash_tfm_digest() and use it wherever possible.
- Fix use-after-free and race in crypto_spawn_alg.
- Add support for parallel and batch requests to crypto_engine.

Algorithms:

- Update jitter RNG for SP800-90B compliance.
- Always use jitter RNG as seed in drbg.

Drivers:

- Add Arm CryptoCell driver cctrng.
- Add support for SEV-ES to the PSP driver in ccp.

The following changes since commit 55b3209acbb01cb02b1ee6b1afe80d83b1aab36d:

crypto: caam - fix the address of the last entry of S/G (2020-04-16 16:48:56 +1000)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

for you to fetch changes up to 58ca0060ec4e51208d2eee12198fc55fd9e4feb3:

crypto: hisilicon - fix driver compatibility issue with different versions of devices (2020-05-28 17:27:52 +1000)

----------------------------------------------------------------
Andy Shevchenko (1):
hwrng: optee - Use UUID API for exporting the UUID

Arnd Bergmann (3):
crypto: ccp -- don't "select" CONFIG_DMADEVICES
crypto - Avoid free() namespace collision
crypto: blake2b - Fix clang optimization for ARMv7-M

Barry Song (1):
crypto: acomp - search acomp with scomp backend in crypto_has_acomp

Christophe JAILLET (2):
crypto: marvell/octeontx - Add missing '\n' in log messages
crypto: cavium/nitrox - Fix a typo in a comment

Colin Ian King (2):
crypto: chelsio - remove redundant assignment to variable error
crypto: algif_rng - remove redundant assignment to variable err

Corentin Labbe (2):
crypto: ctr - no longer needs CRYPTO_SEQIV
crypto: drbg - should select CTR

Daniel Jordan (1):
padata: add separate cpuhp node for CPUHP_PADATA_DEAD

Eric Biggers (29):
crypto: algapi - Avoid spurious modprobe on LOADED
crypto: lib/sha256 - return void
crypto: hash - introduce crypto_shash_tfm_digest()
crypto: arm64/aes-glue - use crypto_shash_tfm_digest()
crypto: essiv - use crypto_shash_tfm_digest()
crypto: artpec6 - use crypto_shash_tfm_digest()
crypto: ccp - use crypto_shash_tfm_digest()
crypto: ccree - use crypto_shash_tfm_digest()
crypto: hisilicon/sec2 - use crypto_shash_tfm_digest()
crypto: mediatek - use crypto_shash_tfm_digest()
crypto: n2 - use crypto_shash_tfm_digest()
crypto: omap-sham - use crypto_shash_tfm_digest()
crypto: s5p-sss - use crypto_shash_tfm_digest()
nfc: s3fwrn5: use crypto_shash_tfm_digest()
fscrypt: use crypto_shash_tfm_digest()
ecryptfs: use crypto_shash_tfm_digest()
nfsd: use crypto_shash_tfm_digest()
ubifs: use crypto_shash_tfm_digest()
Bluetooth: use crypto_shash_tfm_digest()
sctp: use crypto_shash_tfm_digest()
KEYS: encrypted: use crypto_shash_tfm_digest()
ASoC: cros_ec_codec: use crypto_shash_tfm_digest()
mptcp: use SHA256_BLOCK_SIZE, not SHA_MESSAGE_BYTES
crypto: powerpc/sha1 - remove unused temporary workspace
crypto: powerpc/sha1 - prefix the "sha1_" functions
crypto: s390/sha1 - prefix the "sha1_" functions
crypto: lib/sha1 - rename "sha" to "sha1"
crypto: lib/sha1 - remove unnecessary includes of linux/cryptohash.h
crypto: lib/sha1 - fold linux/cryptohash.h into crypto/sha.h

Etienne Carriere (2):
crypto: stm32/hash - defer probe for reset controller
crypto: stm32/hash - defer probe for dma device

Hadar Gat (7):
dt-bindings: add device tree binding for Arm CryptoCell trng engine
hwrng: cctrng - introduce Arm CryptoCell driver
MAINTAINERS: add HG as cctrng maintainer
hwrng: cctrng - add missing include to linux/fips.h
hwrng: cctrng - Add dependency on OF
hwrng: cctrng - change default to n
hwrng: cctrng - update help description

Hao Fang (1):
crypto: hisilicon - add vfs_num module parameter for hpre/sec

Herbert Xu (4):
crypto: api - Fix use-after-free and race in crypto_spawn_alg
hwrng: cctrng - Add dependency on HAS_IOMEM
hwrng: cctrng - Remove unnecessary FIPS ifdef
Revert "ASoC: cros_ec_codec: use crypto_shash_tfm_digest()"

Hui Tang (2):
crypto: hisilicon/hpre - add controller reset support for HPRE
crypto: hisilicon/hpre - add debugfs for Hisilicon HPRE

Iuliana Prodan (4):
crypto: algapi - create function to add request in front of queue
crypto: engine - support for parallel requests based on retry mechanism
crypto: engine - support for batch requests
crypto: engine - do not requeue in case of fatal error

Kai Ye (1):
crypto: hisilicon/sec2 - add debugfs for Hisilicon SEC

Lionel Debieve (1):
crypto: stm32/hash - don't print error on probe deferral

Longfang Liu (6):
crypto: hisilicon/sec2 - modify the SEC probe process
crypto: hisilicon/hpre - modify the HPRE probe process
crypto: hisilicon/zip - modify the ZIP probe process
crypto: hisilicon/qm - add debugfs for QM
crypto: hisilicon/qm - add debugfs to the QM state machine
crypto: hisilicon/zip - add debugfs for Hisilicon ZIP

Mark Brown (1):
crypto: arm64 - Consistently enable extension

Markus Elfring (3):
hwrng: omap - Delete an error message in of_get_omap_rng_device_details()
hwrng: xgene - Delete an error message in xgene_rng_probe()
crypto: sun8i-ss - Delete an error message in sun8i_ss_probe()

Nathan Chancellor (1):
lib/mpi: Fix 64-bit MIPS build with Clang

Nicolas Toromanoff (5):
crypto: stm32/crc32 - fix ext4 chksum BUG_ON()
crypto: stm32/crc32 - fix run-time self test issue.
crypto: stm32/crc32 - fix multi-instance
crypto: stm32/crc32 - don't sleep in runtime pm
crypto: stm32/crc32 - protect from concurrent accesses

Rikard Falkeborn (4):
crypto: ccree - constify struct debugfs_reg32
crypto: hisilicon/hpre - constify struct debugfs_reg32
crypto: hisilicon/zip - constify struct debugfs_reg32
crypto: hisilicon/sec2 - constify sec_dfx_regs

Shukun Tan (12):
crypto: hisilicon - put vfs_num into struct hisi_qm
crypto: hisilicon - unify SR-IOV related codes into QM
crypto: hisilicon/qm - add controller reset interface
crypto: hisilicon/zip - add controller reset support for zip
crypto: hisilicon/qm - fix build failure with ACPI off
crypto: hisilicon - refactor module parameter pf_q_num related code
crypto: hisilicon - add FLR support
crypto: hisilicon - remove use_dma_api related codes
crypto: hisilicon - remove codes of directly report device errors through MSI
crypto: hisilicon - add device error report through abnormal irq
crypto: hisilicon/qm - add DebugFS for xQC and xQE dump
crypto: hisilicon/qm - change debugfs file name from qm_regs to regs

Stephan M?ller (2):
crypto: jitter - SP800-90B compliance
crypto: drbg - always seeded with SP800-90B compliant noise source

Stephen Rothwell (1):
crypto: hisilicon/qm - add more ACPI dependencies

Tang Bin (5):
crypto: amlogic - Delete duplicate dev_err in meson_crypto_probe()
crypto: bcm - Delete redundant variable definition
crypto: bcm - Remove the unnecessary cast for PTR_ERR().
crypto: bcm - Fix unused assignment
crypto: bcm - Use the defined variable to clean code

Tom Lendacky (1):
crypto: ccp - Add support for SEV-ES to the PSP driver

Wei Yongjun (1):
crypto: drbg - fix error return code in drbg_alloc_state()

Weili Qian (3):
crypto: hisilicon - unify initial value assignment into QM
crypto: hisilicon - QM memory management optimization
crypto: hisilicon - fix driver compatibility issue with different versions of devices

Yang Shen (2):
crypto: hisilicon/sec2 - add controller reset support for SEC2
crypto: hisilicon/qm - stop qp by judging sq and cq tail

Zhou Wang (2):
crypto: hisilicon/qm - add state machine for QM
crypto: hisilicon/zip - Use temporary sqe when doing work

Zou Wei (2):
crypto: hisilicon/qm - Make qm_controller_reset() static
hwrng: cctrng - Make some symbols static

Documentation/ABI/testing/debugfs-hisi-hpre | 89 +++-
Documentation/ABI/testing/debugfs-hisi-sec | 94 +++-
Documentation/ABI/testing/debugfs-hisi-zip | 70 ++-
Documentation/devicetree/bindings/rng/arm-cctrng.yaml | 54 +++
Documentation/security/siphash.rst | 2 +-
MAINTAINERS | 9 +
arch/arm/crypto/sha1_glue.c | 1 -
arch/arm/crypto/sha1_neon_glue.c | 1 -
arch/arm/crypto/sha256_glue.c | 1 -
arch/arm/crypto/sha256_neon_glue.c | 1 -
arch/arm/kernel/armksyms.c | 1 -
arch/arm64/crypto/aes-glue.c | 4 +-
arch/arm64/crypto/crct10dif-ce-core.S | 2 +-
arch/arm64/crypto/sha256-glue.c | 1 -
arch/arm64/crypto/sha512-glue.c | 1 -
arch/microblaze/kernel/microblaze_ksyms.c | 1 -
arch/mips/cavium-octeon/crypto/octeon-md5.c | 1 -
arch/powerpc/crypto/md5-glue.c | 1 -
arch/powerpc/crypto/sha1-spe-glue.c | 1 -
arch/powerpc/crypto/sha1.c | 33 +-
arch/powerpc/crypto/sha256-spe-glue.c | 1 -
arch/s390/crypto/sha1_s390.c | 12 +-
arch/sparc/crypto/md5_glue.c | 1 -
arch/sparc/crypto/sha1_glue.c | 1 -
arch/sparc/crypto/sha256_glue.c | 1 -
arch/sparc/crypto/sha512_glue.c | 1 -
arch/unicore32/kernel/ksyms.c | 1 -
arch/x86/crypto/sha1_ssse3_glue.c | 1 -
arch/x86/crypto/sha256_ssse3_glue.c | 1 -
arch/x86/crypto/sha512_ssse3_glue.c | 1 -
crypto/Kconfig | 3 +-
crypto/algapi.c | 32 +-
crypto/algif_rng.c | 2 +-
crypto/api.c | 3 +-
crypto/blake2b_generic.c | 4 +-
crypto/crypto_engine.c | 168 +++++--
crypto/drbg.c | 30 +-
crypto/essiv.c | 4 +-
crypto/internal.h | 1 +
crypto/jitterentropy-kcapi.c | 27 ++
crypto/jitterentropy.c | 417 +++++++++++++----
crypto/lrw.c | 6 +-
crypto/sha1_generic.c | 5 +-
crypto/sha256_generic.c | 14 +-
crypto/shash.c | 16 +
crypto/xts.c | 6 +-
drivers/char/hw_random/Kconfig | 13 +
drivers/char/hw_random/Makefile | 1 +
drivers/char/hw_random/cctrng.c | 735 ++++++++++++++++++++++++++++++
drivers/char/hw_random/cctrng.h | 72 +++
drivers/char/hw_random/omap-rng.c | 5 +-
drivers/char/hw_random/optee-rng.c | 2 +-
drivers/char/hw_random/xgene-rng.c | 4 +-
drivers/char/random.c | 8 +-
drivers/crypto/allwinner/sun8i-ss/sun8i-ss-core.c | 4 +-
drivers/crypto/amlogic/amlogic-gxl-core.c | 4 +-
drivers/crypto/atmel-sha.c | 1 -
drivers/crypto/axis/artpec6_crypto.c | 10 +-
drivers/crypto/bcm/cipher.c | 27 +-
drivers/crypto/cavium/nitrox/nitrox_main.c | 2 +-
drivers/crypto/ccp/Kconfig | 3 +-
drivers/crypto/ccp/ccp-crypto-sha.c | 9 +-
drivers/crypto/ccp/sev-dev.c | 43 ++
drivers/crypto/ccree/cc_cipher.c | 9 +-
drivers/crypto/ccree/cc_debugfs.c | 4 +-
drivers/crypto/chelsio/chcr_algo.c | 3 +-
drivers/crypto/chelsio/chcr_ipsec.c | 1 -
drivers/crypto/hisilicon/Kconfig | 4 +
drivers/crypto/hisilicon/hpre/hpre.h | 18 +-
drivers/crypto/hisilicon/hpre/hpre_crypto.c | 99 +++-
drivers/crypto/hisilicon/hpre/hpre_main.c | 355 +++++++--------
drivers/crypto/hisilicon/qm.c | 3769 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------------------------
drivers/crypto/hisilicon/qm.h | 120 ++++-
drivers/crypto/hisilicon/sec2/sec.h | 5 +-
drivers/crypto/hisilicon/sec2/sec_crypto.c | 20 +-
drivers/crypto/hisilicon/sec2/sec_main.c | 379 ++++++---------
drivers/crypto/hisilicon/zip/zip.h | 8 +
drivers/crypto/hisilicon/zip/zip_crypto.c | 20 +-
drivers/crypto/hisilicon/zip/zip_main.c | 362 +++++++--------
drivers/crypto/marvell/octeontx/otx_cptpf_main.c | 4 +-
drivers/crypto/marvell/octeontx/otx_cptpf_mbox.c | 12 +-
drivers/crypto/marvell/octeontx/otx_cptpf_ucode.c | 95 ++--
drivers/crypto/marvell/octeontx/otx_cptvf_algs.c | 6 +-
drivers/crypto/marvell/octeontx/otx_cptvf_main.c | 12 +-
drivers/crypto/marvell/octeontx/otx_cptvf_reqmgr.c | 10 +-
drivers/crypto/mediatek/mtk-sha.c | 7 +-
drivers/crypto/n2_core.c | 7 +-
drivers/crypto/omap-sham.c | 21 +-
drivers/crypto/s5p-sss.c | 39 +-
drivers/crypto/stm32/stm32-crc32.c | 230 +++++++---
drivers/crypto/stm32/stm32-hash.c | 38 +-
drivers/nfc/s3fwrn5/firmware.c | 10 +-
fs/crypto/fname.c | 7 +-
fs/crypto/hkdf.c | 6 +-
fs/ecryptfs/crypto.c | 17 +-
fs/f2fs/hash.c | 1 -
fs/nfsd/nfs4recover.c | 26 +-
fs/ubifs/auth.c | 20 +-
fs/ubifs/master.c | 9 +-
fs/ubifs/replay.c | 14 +-
include/crypto/acompress.h | 2 +-
include/crypto/algapi.h | 2 +
include/crypto/drbg.h | 6 +-
include/crypto/engine.h | 15 +-
include/crypto/hash.h | 19 +
include/crypto/sha.h | 28 +-
include/crypto/sha256_base.h | 6 +-
include/linux/cryptohash.h | 14 -
include/linux/filter.h | 4 +-
include/linux/padata.h | 6 +-
include/linux/psp-sev.h | 2 +
include/net/tcp.h | 1 -
include/uapi/linux/psp-sev.h | 2 +
kernel/bpf/core.c | 18 +-
kernel/padata.c | 14 +-
lib/crypto/chacha.c | 1 -
lib/crypto/sha256.c | 20 +-
lib/mpi/longlong.h | 2 +-
lib/sha1.c | 24 +-
net/bluetooth/smp.c | 6 +-
net/core/secure_seq.c | 1 -
net/ipv6/addrconf.c | 10 +-
net/ipv6/seg6_hmac.c | 1 -
net/mptcp/crypto.c | 4 +-
net/sctp/auth.c | 10 +-
net/sctp/sm_make_chunk.c | 23 +-
security/keys/encrypted-keys/encrypted.c | 18 +-
127 files changed, 5634 insertions(+), 2462 deletions(-)
create mode 100644 Documentation/devicetree/bindings/rng/arm-cctrng.yaml
create mode 100644 drivers/char/hw_random/cctrng.c
create mode 100644 drivers/char/hw_random/cctrng.h
delete mode 100644 include/linux/cryptohash.h

Thanks,
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

2020-06-01 19:37:43

by pr-tracker-bot

[permalink] [raw]
Subject: Re: [GIT PULL] Crypto Update for 5.8

The pull request you sent on Mon, 1 Jun 2020 12:45:33 +1000:

> git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/81e8c10dac62c427b25f6bbb07936806e4dd9e8a

Thank you!

--
Deet-doot-dot, I am a bot.
https://korg.wiki.kernel.org/userdoc/prtracker

2020-06-11 04:06:39

by Herbert Xu

[permalink] [raw]
Subject: [GIT PULL] Crypto Fixes for 5.8

Hi Linus:

This push contains a number of fixes to the omap and nitrox drivers.

The following changes since commit 58ca0060ec4e51208d2eee12198fc55fd9e4feb3:

crypto: hisilicon - fix driver compatibility issue with different versions of devices (2020-05-28 17:27:52 +1000)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

for you to fetch changes up to 320bdbd816156f9ca07e5fed7bfb449f2908dda7:

crypto: cavium/nitrox - Fix 'nitrox_get_first_device()' when ndevlist is fully iterated (2020-06-04 22:06:26 +1000)

----------------------------------------------------------------
Christophe JAILLET (1):
crypto: cavium/nitrox - Fix 'nitrox_get_first_device()' when ndevlist is fully iterated

Tero Kristo (7):
crypto: omap-aes - avoid spamming console with self tests
crypto: omap-sham - force kernel driver usage for sha algos
crypto: omap-crypto - fix userspace copied buffer access
crypto: omap-sham - huge buffer access fixes
crypto: omap-sham - fix very small data size handling
crypto: omap-aes - prevent unregistering algorithms twice
crypto: omap-sham - add proper load balancing support for multicore

drivers/crypto/cavium/nitrox/nitrox_main.c | 4 ++--
drivers/crypto/omap-aes-gcm.c | 1 -
drivers/crypto/omap-aes.c | 8 ++++++--
drivers/crypto/omap-crypto.c | 10 ++++++++--
drivers/crypto/omap-sham.c | 101 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------------------------
5 files changed, 74 insertions(+), 50 deletions(-)

Thanks,
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

2020-06-11 18:26:13

by pr-tracker-bot

[permalink] [raw]
Subject: Re: [GIT PULL] Crypto Fixes for 5.8

The pull request you sent on Thu, 11 Jun 2020 14:05:44 +1000:

> git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/e8de4575cf7601917c2eae9f8ee1a8ee3d9be2a7

Thank you!

--
Deet-doot-dot, I am a bot.
https://korg.wiki.kernel.org/userdoc/prtracker

2020-06-21 08:23:56

by Herbert Xu

[permalink] [raw]
Subject: [GIT PULL] Crypto Fixes for 5.8

Hi Linus:

This push contains a number of fixes:

- NULL dereference in octeontx.
- PM reference imbalance in ks-sa.
- Dead-lock in crypto manager.
- Memory leak in drbg.
- Missing socket limit check on receive SG list size in algif_skcipher.
- Typos in caam.
- Warnings in ccp and hisilicon.

The following changes since commit b3a9e3b9622ae10064826dccb4f7a52bd88c7407:

Linux 5.8-rc1 (2020-06-14 12:45:04 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

for you to fetch changes up to 819966c06b759022e9932f328284314d9272b9f3:

crypto: drbg - always try to free Jitter RNG instance (2020-06-15 17:38:54 +1000)

----------------------------------------------------------------
Dan Carpenter (1):
crypto: marvell/octeontx - Fix a potential NULL dereference

Dinghao Liu (1):
hwrng: ks-sa - Fix runtime PM imbalance on error

Eric Biggers (1):
crypto: algboss - don't wait during notifier callback

Heinrich Schuchardt (1):
crypto: caam - fix typos

Herbert Xu (3):
crypto: algif_skcipher - Cap recv SG list at ctx->used
crypto: hisilicon - Cap block size at 2^31
crypto: ccp - Fix sparse warnings in sev-dev

Stephan M?ller (1):
crypto: drbg - always try to free Jitter RNG instance

crypto/algboss.c | 2 --
crypto/algif_skcipher.c | 6 +-----
crypto/drbg.c | 6 ++++--
drivers/char/hw_random/ks-sa-rng.c | 1 +
drivers/crypto/caam/Kconfig | 2 +-
drivers/crypto/caam/ctrl.c | 18 +++++++++---------
drivers/crypto/caam/desc.h | 4 ++--
drivers/crypto/caam/pdb.h | 2 +-
drivers/crypto/ccp/sev-dev.c | 23 ++++++++++++++++-------
drivers/crypto/hisilicon/sgl.c | 3 ++-
drivers/crypto/marvell/octeontx/otx_cptvf_algs.c | 11 +++++++----
include/linux/psp-sev.h | 2 +-
12 files changed, 45 insertions(+), 35 deletions(-)

Thanks,
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

2020-06-21 17:10:58

by pr-tracker-bot

[permalink] [raw]
Subject: Re: [GIT PULL] Crypto Fixes for 5.8

The pull request you sent on Sun, 21 Jun 2020 18:23:03 +1000:

> git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/93bbca271a715e2730b6f4ae0be42056cdab6561

Thank you!

--
Deet-doot-dot, I am a bot.
https://korg.wiki.kernel.org/userdoc/prtracker

2020-06-29 02:17:21

by Herbert Xu

[permalink] [raw]
Subject: [GIT PULL] Crypto Fixes for 5.8

Hi Linus:

This push fixes two race conditions, one in padata and one in
af_alg.

The following changes since commit 819966c06b759022e9932f328284314d9272b9f3:

crypto: drbg - always try to free Jitter RNG instance (2020-06-15 17:38:54 +1000)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

for you to fetch changes up to e04ec0de61c1eb9693179093e83ab8ca68a30d08:

padata: upgrade smp_mb__after_atomic to smp_mb in padata_do_serial (2020-06-18 17:09:54 +1000)

----------------------------------------------------------------
Daniel Jordan (1):
padata: upgrade smp_mb__after_atomic to smp_mb in padata_do_serial

Herbert Xu (1):
crypto: af_alg - fix use-after-free in af_alg_accept() due to bh_lock_sock()

crypto/af_alg.c | 26 +++++++++++---------------
crypto/algif_aead.c | 9 +++------
crypto/algif_hash.c | 9 +++------
crypto/algif_skcipher.c | 9 +++------
include/crypto/if_alg.h | 4 ++--
kernel/padata.c | 4 ++--
6 files changed, 24 insertions(+), 37 deletions(-)

Thanks,
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

2020-06-29 21:48:27

by pr-tracker-bot

[permalink] [raw]
Subject: Re: [GIT PULL] Crypto Fixes for 5.8

The pull request you sent on Mon, 29 Jun 2020 12:16:27 +1000:

> git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/2cfa46dadd203eef88cc70131df7a81ebc34b8ff

Thank you!

--
Deet-doot-dot, I am a bot.
https://korg.wiki.kernel.org/userdoc/prtracker

2020-08-14 13:21:58

by Herbert Xu

[permalink] [raw]
Subject: [GIT PULL] Crypto Fixes for 5.9

Hi Linus:

This push fixes a regression in af_alg.

The following changes since commit 3cbfe80737c18ac6e635421ab676716a393d3074:

crypto: sa2ul - Fix inconsistent IS_ERR and PTR_ERR (2020-07-31 18:25:29 +1000)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

for you to fetch changes up to 21dfbcd1f5cbff9cf2f9e7e43475aed8d072b0dd:

crypto: algif_aead - fix uninitialized ctx->init (2020-08-13 17:09:32 +1000)

----------------------------------------------------------------
Ondrej Mosnacek (1):
crypto: algif_aead - fix uninitialized ctx->init

crypto/algif_aead.c | 6 ------
crypto/algif_skcipher.c | 7 +------
2 files changed, 1 insertion(+), 12 deletions(-)

Thanks,
--
Email: Herbert Xu <[email protected]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

2020-08-14 20:36:00

by pr-tracker-bot

[permalink] [raw]
Subject: Re: [GIT PULL] Crypto Fixes for 5.9

The pull request you sent on Fri, 14 Aug 2020 23:18:18 +1000:

> git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6.git linus

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/d9361cb285281563adada9b16708b12053bd6531

Thank you!

--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html