Crypto Update for 4.15

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

 



Hi Linus: 

Here is the crypto update for 4.15:

API:

- Disambiguate EBUSY when queueing crypto request by adding ENOSPC.
  This change touches code outside the crypto API.
- Reset settings when empty string is written to rng_current.

Algorithms:

- Add OSCCA SM3 secure hash.

Drivers:

- Remove old mv_cesa driver (replaced by marvell/cesa).
- Enable rfc3686/ecb/cfb/ofb AES in crypto4xx.
- Add ccm/gcm AES in crypto4xx.
- Add support for BCM7278 in iproc-rng200.
- Add hash support on Exynos in s5p-sss.
- Fix fallback-induced error in vmx.
- Fix output IV in atmel-aes.
- Fix empty GCM hash in mediatek.

Others:

- Fix DoS potential in lib/mpi.
- Fix potential out-of-order issues with padata.

Please note that there may be a conflict with the tips tree due
to the timer_setup patch being applied in both cryptodev and
the tips tree.  The version in the tips tree also touchs the
mv_cesa driver which just happens to have been removed in this
cycle in cryptodev.  Any changes to mv_cesa may be safely discarded.


Please pull from

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


Allen (1):
      crypto: omap - return -ENOMEM on allocation failure.

Arnd Bergmann (1):
      crypto: axis - hide an unused variable

Arvind Yadav (11):
      crypto: nx - constify vio_device_id
      crypto: nx-842 - constify vio_device_id
      hwrng: pseries - constify vio_device_id
      crypto: padlock-aes - constify x86_cpu_id
      crypto: padlock-sha - constify x86_cpu_id
      hwrng: core - pr_err() strings should end with newlines
      crypto: omap-aes - pr_err() strings should end with newlines
      crypto: virtio - pr_err() strings should end with newlines
      crypto: chelsio - pr_err() strings should end with newlines
      crypto: qat - pr_err() strings should end with newlines
      crypto: bcm - pr_err() strings should end with newlines

Boris BREZILLON (5):
      crypto: marvell - Add a platform_device_id table
      ARM: configs: Stop selecting the old CESA driver
      crypto: marvell - Remove the old mv_cesa driver
      crypto: marvell - Switch cipher algs to the skcipher interface
      crypto: marvell - Add a NULL entry at the end of mv_cesa_plat_id_table[]

Christian Lamparter (25):
      crypto: crypto4xx - remove bad list_del
      crypto: crypto4xx - remove unused definitions and write-only variables
      crypto: crypto4xx - set CRYPTO_ALG_KERN_DRIVER_ONLY flag
      crypto: crypto4xx - remove extern statement before function declaration
      crypto: crypto4xx - remove double assignment of pd_uinfo->state
      crypto: crypto4xx - fix dynamic_sa_ctl's sa_contents declaration
      crypto: crypto4xx - move and refactor dynamic_contents helpers
      crypto: crypto4xx - enable AES RFC3686, ECB, CFB and OFB offloads
      crypto: crypto4xx - refactor crypto4xx_copy_pkt_to_dst()
      crypto: crypto4xx - replace crypto4xx_dev's scatter_buffer_size with constant
      crypto: crypto4xx - fix crypto4xx_build_pdr, crypto4xx_build_sdr leak
      crypto: crypto4xx - pointer arithmetic overhaul
      crypto: crypto4xx - wire up hmac_mc to hmac_muting
      crypto: crypto4xx - fix off-by-one AES-OFB
      crypto: crypto4xx - fix type mismatch compiler error
      crypto: crypto4xx - increase context and scatter ring buffer elements
      crypto: crypto4xx - add backlog queue support
      crypto: crypto4xx - use the correct LE32 format for IV and key defs
      crypto: crypto4xx - overhaul crypto4xx_build_pd()
      crypto: crypto4xx - fix various warnings
      crypto: crypto4xx - fix stalls under heavy load
      crypto: crypto4xx - simplify sa and state context acquisition
      crypto: crypto4xx - prepare for AEAD support
      crypto: crypto4xx - add aes-ccm support
      crypto: crypto4xx - add aes-gcm support

Christophe Jaillet (2):
      crypto: lrw - Fix an error handling path in 'create()'
      crypto: lrw - Check for incorrect cipher name

Colin Ian King (5):
      crypto: aesni - make arrays aesni_simd_skciphers and aesni_simd_skciphers2 static
      crypto: algboss - remove redundant setting of len to zero
      crypto: cavium - clean up clang warning on unread variable offset
      crypto: ccp - remove unused variable qim
      crypto: qat - remove unused and redundant pointer vf_info

Corentin LABBE (14):
      crypto: gcm - add GCM IV size constant
      crypto: caam - Use GCM IV size constant
      crypto: ccp - Use GCM IV size constant
      crypto: nx - Use GCM IV size constant
      crypto: atmel - Use GCM IV size constant
      crypto: bcm - Use GCM IV size constant
      crypto: mediatek - Use GCM IV size constant
      crypto: chelsio - Use GCM IV size constant
      crypto: omap - Use GCM IV size constant
      crypto: gcm - Use GCM IV size constant
      crypto: aesni - Use GCM IV size constant
      crypto: stm32 - use of_device_get_match_data
      crypto: omap - use of_device_get_match_data
      crypto: bcm - use of_device_get_match_data

Eric Biggers (6):
      crypto: dh - Fix double free of ctx->p
      crypto: dh - Don't permit 'p' to be 0
      crypto: dh - Don't permit 'key' or 'g' size longer than 'p'
      crypto: qat - Clean up error handling in qat_dh_set_secret()
      crypto: dh - Remove pointless checks for NULL 'p' and 'g'
      lib/mpi: call cond_resched() from mpi_powm() loop

Florian Fainelli (2):
      dt-bindings: rng: Document BCM7278 RNG200 compatible
      hwrng: iproc-rng200 - Add support for BCM7278

Geliang Tang (1):
      crypto: drop unnecessary return statements

Gilad Ben-Yossef (22):
      crypto: sm3 - add OSCCA SM3 secure hash
      crypto: sm3 - add SM3 test vectors
      crypto: change transient busy return code to -ENOSPC
      crypto: ccp - use -ENOSPC for transient busy indication
      net: use -ENOSPC for transient busy indication
      crypto: remove redundant backlog checks on EBUSY
      crypto: marvell/cesa - remove redundant backlog checks on EBUSY
      crypto: introduce crypto wait for async op
      crypto: algif - move to generic async completion
      crypto: move pub key to generic async completion
      crypto: drbg - move to generic async completion
      crypto: gcm - move to generic async completion
      crypto: testmgr - move to generic async completion
      fscrypt: move to generic async completion
      dm: move dm-verity to generic async completion
      cifs: move to generic async completion
      ima: move to generic async completion
      crypto: tcrypt - move to generic async completion
      crypto: talitos - move to generic async completion
      crypto: qce - move to generic async completion
      crypto: mediatek - move to generic async completion
      crypto: doc - adapt api sample to use async. op wait

Gustavo A. R. Silva (3):
      crypto: tcrypt - mark expected switch fall-throughs in do_test()
      crypto: qat - mark expected switch fall-throughs in qat_uclo
      crypto: chcr - Replace _manual_ swap with swap macro

Harsh Jain (5):
      crypto: gf128mul - The x8_ble multiplication functions
      crypto: chelsio - Use x8_ble gf multiplication to calculate IV.
      crypto: chelsio - Remove allocation of sg list to implement 2K limit of dsgl header
      crypto: chelsio - Move DMA un/mapping to chcr from lld cxgb4 driver
      crypto: chelsio - Fix memory leak

Herbert Xu (1):
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux

Himanshu Jha (3):
      crypto: n2 - remove null check before kfree
      crypto: inside-secure - remove null check before kfree
      crypto: Use PTR_ERR_ZERO

Horia Geantă (4):
      MAINTAINERS: update caam crypto driver maintainers list
      crypto: caam/qi - abort algorithm setup on DPAA2 parts
      crypto: caam - remove unneeded edesc zeroization
      crypto: caam - remove unused param of ctx_map_to_sec4_sg()

Jim Quigley (1):
      hwrng: virtio - Virtio RNG devices need to be re-registered after suspend/resume

Kamil Konieczny (3):
      crypto: doc - clarify return values for async hash methods
      crypto: s5p-sss - Change spaces to tabs
      crypto: s5p-sss - Add HASH support for Exynos

Kees Cook (2):
      hwrng: xgene - Convert timers to use timer_setup()
      crypto: drivers - Convert timers to use timer_setup()

LEROY Christophe (18):
      crypto: talitos - fix AEAD test failures
      crypto: talitos - fix memory corruption on SEC2
      crypto: talitos - fix setkey to check key weakness
      crypto: talitos - fix AEAD for sha224 on non sha224 capable chips
      crypto: talitos - fix use of sg_link_tbl_len
      crypto: talitos - fix ctr-aes-talitos
      crypto: talitos - zeroize the descriptor with memset()
      crypto: talitos - declare local functions static
      crypto: talitos - use devm_kmalloc()
      crypto: talitos - use of_property_read_u32()
      crypto: talitos - use devm_ioremap()
      crypto: talitos - don't check the number of channels at each interrupt
      crypto: talitos - remove to_talitos_ptr_len()
      crypto: talitos - simplify tests in ipsec_esp()
      crypto: talitos - DMA map key in setkey()
      crypto: talitos - do hw_context DMA mapping outside the requests
      crypto: talitos - chain in buffered data for ahash on SEC1
      crypto: talitos - avoid useless copy

Lionel Debieve (1):
      crypto: stm32/hash - Fix return issue on update

Mathias Krause (3):
      padata: set cpu_index of unused CPUs to -1
      padata: ensure the reorder timer callback runs on the correct CPU
      padata: ensure padata_do_serial() runs on the correct CPU

Mikulas Patocka (1):
      crypto: crc32-pclmul - remove useless relative addressing

Paulo Flabiano Smorigo (1):
      crypto: vmx - Use skcipher for ctr fallback

PrasannaKumar Muralidharan (3):
      hwrng: timeriomem - Remove 'max < 4' condition check
      dt/bindings: exynos-rng: Move dt binding documentation to bindings/crypto
      hwrng: core - Reset user selected rng by writing "" to rng_current

Radu Alexe (1):
      crypto: caam - fix incorrect define

Robert Baronescu (1):
      crypto: tcrypt - fix buffer lengths in test_aead_speed()

Romain Izard (2):
      crypto: atmel-aes - properly set IV after {en,de}crypt
      crypto: atmel-aes - Reset the controller before each use

Ryder Lee (1):
      crypto: mediatek - Add empty messages check in GCM mode

Salvatore Benedetto (1):
      MAINTAINERS: update maintainer for qat

Stephan Mueller (1):
      crypto: keywrap - simplify code

Tudor-Dan Ambarus (7):
      crypto: ecdh - return unsigned value for crypto_ecdh_key_len()
      crypto: dh - return unsigned int for dh_data_size()
      crypto: dh - return unsigned value for crypto_dh_key_len()
      crypto: atmel - return appropriate error code
      crypto: atmel - remove useless irq init
      crypto: ecdh - remove empty exit()
      crypto: atmel - remove empty functions

Yeshaswi M R Gowda (2):
      crypto: chelsio - Remove unused parameter
      crypto: chelsio - Check error code with IS_ERR macro

amd (2):
      crypto: ccp - unmap pages and remove unmap objects in callback
      crypto:ccp - invoke the DMA callback in a standard way

lionel.debieve@xxxxxx (1):
      crypto: stm32/hash - Remove uninitialized symbol

raveendra padasalagi (1):
      crypto: brcm - Explicity ACK mailbox message

 Documentation/crypto/api-samples.rst               |   52 +-
 .../{rng => crypto}/samsung,exynos-rng4.txt        |    0
 .../devicetree/bindings/rng/brcm,iproc-rng200.txt  |    4 +-
 MAINTAINERS                                        |    5 +-
 arch/arm/configs/dove_defconfig                    |    2 +-
 arch/arm/configs/multi_v5_defconfig                |    2 +-
 arch/arm/configs/orion5x_defconfig                 |    2 +-
 arch/x86/crypto/aesni-intel_glue.c                 |   10 +-
 arch/x86/crypto/crc32-pclmul_asm.S                 |   17 +-
 crypto/Kconfig                                     |   11 +
 crypto/Makefile                                    |    1 +
 crypto/af_alg.c                                    |   27 -
 crypto/ahash.c                                     |   12 +-
 crypto/algapi.c                                    |    6 +-
 crypto/algboss.c                                   |    1 -
 crypto/algif_aead.c                                |    8 +-
 crypto/algif_hash.c                                |   30 +-
 crypto/algif_skcipher.c                            |    9 +-
 crypto/api.c                                       |   13 +
 crypto/asymmetric_keys/public_key.c                |   28 +-
 crypto/cryptd.c                                    |    4 +-
 crypto/cts.c                                       |    6 +-
 crypto/dh.c                                        |   36 +-
 crypto/dh_helper.c                                 |   20 +-
 crypto/drbg.c                                      |   36 +-
 crypto/ecdh.c                                      |    6 -
 crypto/ecdh_helper.c                               |    2 +-
 crypto/gcm.c                                       |   55 +-
 crypto/gf128mul.c                                  |   13 +
 crypto/keywrap.c                                   |   84 +-
 crypto/lrw.c                                       |   17 +-
 crypto/rmd128.c                                    |    2 -
 crypto/rmd160.c                                    |    2 -
 crypto/rmd256.c                                    |    2 -
 crypto/rmd320.c                                    |    2 -
 crypto/rsa-pkcs1pad.c                              |   16 +-
 crypto/sm3_generic.c                               |  210 +++
 crypto/tcrypt.c                                    |  209 +--
 crypto/testmgr.c                                   |  210 +--
 crypto/testmgr.h                                   |   67 +
 crypto/xts.c                                       |    8 +-
 drivers/char/hw_random/Kconfig                     |    6 +-
 drivers/char/hw_random/core.c                      |   53 +-
 drivers/char/hw_random/iproc-rng200.c              |    1 +
 drivers/char/hw_random/pseries-rng.c               |    2 +-
 drivers/char/hw_random/timeriomem-rng.c            |    7 -
 drivers/char/hw_random/virtio-rng.c                |   21 +-
 drivers/char/hw_random/xgene-rng.c                 |    8 +-
 drivers/crypto/Kconfig                             |   40 +-
 drivers/crypto/Makefile                            |    1 -
 drivers/crypto/amcc/Makefile                       |    2 +-
 drivers/crypto/amcc/crypto4xx_alg.c                |  512 +++++-
 drivers/crypto/amcc/crypto4xx_core.c               |  831 +++++----
 drivers/crypto/amcc/crypto4xx_core.h               |  199 ++-
 drivers/crypto/amcc/crypto4xx_reg_def.h            |    3 +
 drivers/crypto/amcc/crypto4xx_sa.c                 |   85 -
 drivers/crypto/amcc/crypto4xx_sa.h                 |   99 +-
 drivers/crypto/atmel-aes.c                         |   80 +-
 drivers/crypto/atmel-sha.c                         |    5 +-
 drivers/crypto/atmel-tdes.c                        |   23 +-
 drivers/crypto/axis/artpec6_crypto.c               |   10 +-
 drivers/crypto/bcm/cipher.c                        |  116 +-
 drivers/crypto/bcm/cipher.h                        |    3 +-
 drivers/crypto/bcm/util.c                          |   14 +-
 drivers/crypto/caam/caamalg.c                      |   10 +-
 drivers/crypto/caam/caamalg_qi.c                   |    7 +-
 drivers/crypto/caam/caamhash.c                     |   12 +-
 drivers/crypto/caam/compat.h                       |    1 +
 drivers/crypto/caam/desc.h                         |    2 +-
 drivers/crypto/cavium/nitrox/nitrox_hal.c          |    2 +-
 drivers/crypto/ccp/ccp-crypto-aes-galois.c         |    9 +-
 drivers/crypto/ccp/ccp-crypto-main.c               |    8 +-
 drivers/crypto/ccp/ccp-dev-v5.c                    |    3 +-
 drivers/crypto/ccp/ccp-dev.c                       |    7 +-
 drivers/crypto/ccp/ccp-dmaengine.c                 |    5 +-
 drivers/crypto/chelsio/chcr_algo.c                 | 1798 ++++++++++++--------
 drivers/crypto/chelsio/chcr_algo.h                 |   57 +-
 drivers/crypto/chelsio/chcr_core.c                 |   10 +-
 drivers/crypto/chelsio/chcr_core.h                 |    2 +-
 drivers/crypto/chelsio/chcr_crypto.h               |  121 +-
 drivers/crypto/inside-secure/safexcel_hash.c       |    6 +-
 drivers/crypto/ixp4xx_crypto.c                     |    1 -
 drivers/crypto/marvell/cesa.c                      |   29 +-
 drivers/crypto/marvell/cesa.h                      |   27 +-
 drivers/crypto/marvell/cipher.c                    |  476 +++---
 drivers/crypto/marvell/tdma.c                      |    5 +-
 drivers/crypto/mediatek/mtk-aes.c                  |   39 +-
 drivers/crypto/mv_cesa.c                           | 1216 -------------
 drivers/crypto/mv_cesa.h                           |  150 --
 drivers/crypto/n2_core.c                           |   12 +-
 drivers/crypto/nx/nx-842-pseries.c                 |    2 +-
 drivers/crypto/nx/nx-aes-gcm.c                     |    9 +-
 drivers/crypto/nx/nx.c                             |    2 +-
 drivers/crypto/omap-aes-gcm.c                      |   11 +-
 drivers/crypto/omap-aes.c                          |   12 +-
 drivers/crypto/omap-des.c                          |    7 +-
 drivers/crypto/omap-sham.c                         |    7 +-
 drivers/crypto/padlock-aes.c                       |    2 +-
 drivers/crypto/padlock-sha.c                       |    2 +-
 drivers/crypto/picoxcell_crypto.c                  |    7 +-
 drivers/crypto/qat/qat_common/adf_dev_mgr.c        |    3 -
 drivers/crypto/qat/qat_common/qat_asym_algs.c      |   18 +-
 drivers/crypto/qat/qat_common/qat_uclo.c           |   15 +-
 drivers/crypto/qce/ablkcipher.c                    |    5 +-
 drivers/crypto/qce/sha.c                           |   30 +-
 drivers/crypto/s5p-sss.c                           | 1596 +++++++++++++++--
 drivers/crypto/stm32/stm32-hash.c                  |   20 +-
 drivers/crypto/talitos.c                           |  582 ++++---
 drivers/crypto/talitos.h                           |    7 +-
 drivers/crypto/ux500/cryp/cryp_core.c              |    1 -
 drivers/crypto/virtio/virtio_crypto_algs.c         |    2 +-
 drivers/crypto/vmx/aes_ctr.c                       |   33 +-
 drivers/md/dm-verity-target.c                      |   81 +-
 drivers/md/dm-verity.h                             |    5 -
 drivers/net/ethernet/chelsio/cxgb4/sge.c           |    8 +-
 fs/cifs/smb2ops.c                                  |   30 +-
 fs/crypto/crypto.c                                 |   28 +-
 fs/crypto/fname.c                                  |   36 +-
 fs/crypto/fscrypt_private.h                        |   10 -
 fs/crypto/keyinfo.c                                |   21 +-
 include/crypto/dh.h                                |    2 +-
 include/crypto/drbg.h                              |    3 +-
 include/crypto/ecdh.h                              |    2 +-
 include/crypto/gcm.h                               |    8 +
 include/crypto/gf128mul.h                          |    2 +-
 include/crypto/hash.h                              |   28 +-
 include/crypto/if_alg.h                            |   15 +-
 include/crypto/sm3.h                               |   40 +
 include/crypto/sm3_base.h                          |  117 ++
 include/linux/crypto.h                             |   40 +
 include/linux/padata.h                             |    4 +
 kernel/padata.c                                    |   71 +-
 lib/mpi/mpi-pow.c                                  |    2 +
 net/ipv4/ah4.c                                     |    2 +-
 net/ipv4/esp4.c                                    |    2 +-
 net/ipv6/ah6.c                                     |    2 +-
 net/ipv6/esp6.c                                    |    2 +-
 security/integrity/ima/ima_crypto.c                |   56 +-
 138 files changed, 5712 insertions(+), 4661 deletions(-)

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