[GIT PULL] Crypto Update for 5.8

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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 <herbert@xxxxxxxxxxxxxxxxxxx>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt



[Index of Archives]     [Kernel]     [Gnu Classpath]     [Gnu Crypto]     [DM Crypt]     [Netfilter]     [Bugtraq]

  Powered by Linux