[GIT PULL] Crypto Update for 6.10

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

 



Hi Linus:

The following changes since commit 174fdc93a241af54772ae3e745ec719e9f6cebfc:

  Merge tag 'v6.9-p2' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 (2024-03-25 10:48:23 -0700)

are available in the Git repository at:

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

for you to fetch changes up to 13909a0c88972c5ef5d13f44d1a8bf065a31bdf4:

  crypto: atmel-sha204a - provide the otp content (2024-05-10 17:15:25 +0800)

----------------------------------------------------------------
This update includes the following changes:

API:

- Remove crypto stats interface.

Algorithms:

- Add faster AES-XTS on modern x86_64 CPUs.
- Forbid curves with order less than 224 bits in ecc (FIPS 186-5).
- Add ECDSA NIST P521.

Drivers:

- Expose otp zone in atmel.
- Add dh fallback for primes > 4K in qat.
- Add interface for live migration in qat.
- Use dma for aes requests in starfive.
- Add full DMA support for stm32mpx in stm32.
- Add Tegra Security Engine driver.

Others:

- Introduce scope-based x509_certificate allocation.
----------------------------------------------------------------

Adam Guerin (2):
      crypto: qat - improve error message in adf_get_arbiter_mapping()
      crypto: qat - improve error logging to be consistent across features

Akhil R (3):
      dt-bindings: crypto: Add Tegra Security Engine
      gpu: host1x: Add Tegra SE to SID table
      crypto: tegra - Add Tegra Security Engine driver

Aleksandr Mishin (1):
      crypto: bcm - Fix pointer arithmetic

Animesh Agarwal (1):
      dt-bindings: crypto: ti,omap-sham: Convert to dtschema

Ard Biesheuvel (1):
      crypto: arm64/aes-ce - Simplify round key load sequence

Arnd Bergmann (1):
      crypto: ccp - drop platform ifdef checks

Chang S. Bae (2):
      crypto: x86/aesni - Rearrange AES key size check
      crypto: x86/aesni - Update aesni_set_key() to return void

Chen Ni (1):
      crypto: octeontx2 - add missing check for dma_map_single

Chenghai Huang (10):
      crypto: hisilicon/sec - Add the condition for configuring the sriov function
      crypto: hisilicon/debugfs - Fix debugfs uninit process issue
      crypto: hisilicon/sgl - Delete redundant parameter verification
      crypto: hisilicon/debugfs - Fix the processing logic issue in the debugfs creation
      crypto: hisilicon/qm - Add the default processing branch
      crypto: hisilicon - Adjust debugfs creation and release order
      crypto: hisilicon/sec - Fix memory leak for sec resource release
      crypto: hisilicon/debugfs - Resolve the problem of applying for redundant space in sq dump
      crypto: hisilicon/qm - Add the err memory release process to qm uninit
      crypto: hisilicon/debugfs - mask the unnecessary info from the dump

Colin Ian King (1):
      crypto: qat - Fix spelling mistake "Invalide" -> "Invalid"

Damian Muszynski (1):
      crypto: qat - implement dh fallback for primes > 4K

Dan Carpenter (1):
      crypto: tegra - Fix some error codes

Eric Biggers (24):
      crypto: remove CONFIG_CRYPTO_STATS
      x86: add kconfig symbols for assembler VAES and VPCLMULQDQ support
      crypto: x86/aes-xts - add AES-XTS assembly macro for modern CPUs
      crypto: x86/aes-xts - wire up AESNI + AVX implementation
      crypto: x86/aes-xts - wire up VAES + AVX2 implementation
      crypto: x86/aes-xts - wire up VAES + AVX10/256 implementation
      crypto: x86/aes-xts - wire up VAES + AVX10/512 implementation
      crypto: x86/nh-avx2 - add missing vzeroupper
      crypto: x86/sha256-avx2 - add missing vzeroupper
      crypto: x86/sha512-avx2 - add missing vzeroupper
      crypto: x86/aes-xts - make non-AVX implementation use new glue code
      crypto: x86/aes-xts - access round keys using single-byte offsets
      crypto: x86/sha256-ni - convert to use rounds macros
      crypto: x86/sha256-ni - rename some register aliases
      crypto: x86/sha256-ni - optimize code size
      crypto: x86/sha256-ni - simplify do_4rounds
      crypto: x86/aes-xts - handle CTS encryption more efficiently
      crypto: x86/aesni-xts - deduplicate aesni_xts_enc() and aesni_xts_dec()
      crypto: x86/aes-xts - handle AES-128 and AES-192 more efficiently
      crypto: x86/aes-xts - eliminate a few more instructions
      crypto: x86/aes-xts - optimize size of instructions operating on lengths
      crypto: x86/aes-xts - simplify loop in xts_crypt_slowpath()
      crypto: x86/aes-gcm - delete unused GCM assembly code
      crypto: x86/aes-gcm - simplify GCM hash subkey derivation

Geert Uytterhoeven (1):
      dt-bindings: crypto: starfive: Restore sort order

Giovanni Cabiddu (3):
      crypto: qat - adf_get_etr_base() helper
      crypto: qat - relocate CSR access code
      crypto: qat - specify firmware files for 402xx

Gustavo A. R. Silva (2):
      crypto: nx - Avoid -Wflex-array-member-not-at-end warning
      crypto: qat - Avoid -Wflex-array-member-not-at-end warnings

Hailey Mothershead (1):
      crypto: aead,cipher - zeroize key buffer after use

Herbert Xu (1):
      padata: Disable BH when taking works lock on MT path

Jerry Snitselaar (1):
      crypto: iaa - Fix some errors in IAA documentation

Jia Jie Ho (8):
      dt-bindings: crypto: starfive: Add jh8100 support
      crypto: starfive - Update hash dma usage
      crypto: starfive - Skip unneeded key free
      crypto: starfive - Use dma for aes requests
      crypto: starfive - Skip dma setup for zeroed message
      crypto: starfive - Skip unneeded fallback allocation
      crypto: starfive - Do not free stack buffer
      crypto: starfive - Use fallback for unaligned dma access

Joachim Vandersmissen (2):
      crypto: ecc - update ecc_gen_privkey for FIPS 186-5
      crypto: ecdh - explicitly zeroize private_key

Joel Granados (1):
      crypto: fips - Remove the now superfluous sentinel element from ctl_table array

Li Zhijian (1):
      hwrng: core - Convert sprintf/snprintf to sysfs_emit

Lothar Rubusch (4):
      crypto: atmel-i2c - add missing arg description
      crypto: atmel-i2c - rename read function
      crypto: atmel-sha204a - add reading from otp zone
      crypto: atmel-sha204a - provide the otp content

Luca Weiss (1):
      dt-bindings: crypto: ice: Document sc7280 inline crypto engine

Lucas Segarra Fernandez (1):
      crypto: qat - validate slices count returned by FW

Lukas Wunner (1):
      X.509: Introduce scope-based x509_certificate allocation

Marek Vasut (3):
      hwrng: stm32 - use logical OR in conditional
      hwrng: stm32 - put IP into RPM suspend on failure
      hwrng: stm32 - repair clock handling

Maxime Méré (1):
      crypto: stm32/hash - add full DMA support for stm32mpx

Pankaj Gupta (2):
      crypto: caam - init-clk based on caam-page0-access
      crypto: caam - i.MX8ULP donot have CAAM page0 access

Roman Smirnov (2):
      crypto: ecc - remove checks in crypto_ecdh_shared_secret() and ecc_make_pub_key()
      crypto: algboss - remove NULL check in cryptomgr_schedule_probe()

Siming Wan (3):
      crypto: qat - rename get_sla_arr_of_type()
      crypto: qat - expand CSR operations for QAT GEN4 devices
      crypto: qat - add bank save and restore flows

Stefan Berger (16):
      crypto: ecdsa - Fix module auto-load on add-key
      crypto: ecc - Use ECC_CURVE_NIST_P192/256/384_DIGITS where possible
      crypto: ecdsa - Convert byte arrays with key coordinates to digits
      crypto: ecdsa - Adjust tests on length of key parameters
      crypto: ecdsa - Extend res.x mod n calculation for NIST P521
      crypto: ecc - Add nbits field to ecc_curve structure
      crypto: ecc - Implement vli_mmod_fast_521 for NIST p521
      crypto: ecc - Add special case for NIST P521 in ecc_point_mult
      crypto: ecc - Add NIST P521 curve parameters
      crypto: ecdsa - Replace ndigits with nbits where precision is needed
      crypto: ecdsa - Rename keylen to bufsize where necessary
      crypto: ecdsa - Register NIST P521 and extend test suite
      crypto: asymmetric_keys - Adjust signature size calculation for NIST P521
      crypto: x509 - Add OID for NIST P521 and extend parser for it
      crypto: ecdh - Pass private key in proper byte order to check valid key
      crypto: ecdh - Initialize ctx->private_key in proper byte order

Thorsten Blum (4):
      crypto: jitter - Use kvfree_sensitive() to fix Coccinelle warning
      crypto: jitter - Remove duplicate word in comment
      crypto: jitter - Replace http with https
      crypto: iaa - Use kmemdup() instead of kzalloc() and memcpy()

Tom Zanussi (5):
      crypto: iaa - fix decomp_bytes_in stats
      crypto: iaa - Remove comp/decomp delay statistics
      crypto: iaa - Add global_stats file and remove individual stat files
      crypto: iaa - Change iaa statistics to atomic64_t
      crypto: iaa - Use cpumask_weight() when rebalancing

Uwe Kleine-König (2):
      hwrng: mxc-rnga - Drop usage of platform_driver_probe()
      crypto: tegra - Convert to platform remove callback returning void

Vitaly Chikunov (1):
      crypto: ecrdsa - Fix module auto-load on add_key

Wenkai Lin (1):
      crypto: hisilicon/sec2 - fix for register offset

Wolfram Sang (2):
      crypto: api - use 'time_left' variable with wait_for_completion_killable_timeout()
      crypto: sahara - use 'time_left' variable with wait_for_completion_timeout()

Xin Zeng (4):
      crypto: qat - relocate and rename 4xxx PF2VM definitions
      crypto: qat - move PFVF compat checker to a function
      crypto: qat - add interface for live migration
      crypto: qat - implement interface for live migration

 .../bindings/crypto/nvidia,tegra234-se-aes.yaml    |   52 +
 .../bindings/crypto/nvidia,tegra234-se-hash.yaml   |   52 +
 .../devicetree/bindings/crypto/omap-sham.txt       |   28 -
 .../bindings/crypto/qcom,inline-crypto-engine.yaml |    1 +
 .../bindings/crypto/starfive,jh7110-crypto.yaml    |   30 +-
 .../devicetree/bindings/crypto/ti,omap-sham.yaml   |   56 +
 Documentation/driver-api/crypto/iaa/iaa-crypto.rst |   96 +-
 MAINTAINERS                                        |    5 +
 arch/arm64/crypto/aes-ce.S                         |   34 +-
 arch/arm64/crypto/aes-neon.S                       |   20 +-
 arch/s390/configs/debug_defconfig                  |    1 -
 arch/s390/configs/defconfig                        |    1 -
 arch/x86/Kconfig.assembler                         |   10 +
 arch/x86/crypto/Makefile                           |    3 +-
 arch/x86/crypto/aes-xts-avx-x86_64.S               |  845 +++++++++
 arch/x86/crypto/aesni-intel_asm.S                  |  469 +----
 arch/x86/crypto/aesni-intel_glue.c                 |  420 +++--
 arch/x86/crypto/nh-avx2-x86_64.S                   |    1 +
 arch/x86/crypto/sha256-avx2-asm.S                  |    1 +
 arch/x86/crypto/sha256_ni_asm.S                    |  251 +--
 arch/x86/crypto/sha512-avx2-asm.S                  |    1 +
 crypto/Kconfig                                     |   20 -
 crypto/Makefile                                    |    2 -
 crypto/acompress.c                                 |   33 -
 crypto/aead.c                                      |   87 +-
 crypto/ahash.c                                     |   63 +-
 crypto/akcipher.c                                  |   31 -
 crypto/algboss.c                                   |    3 -
 crypto/api.c                                       |    8 +-
 crypto/asymmetric_keys/public_key.c                |   14 +-
 crypto/asymmetric_keys/x509_cert_parser.c          |   46 +-
 crypto/asymmetric_keys/x509_parser.h               |    3 +
 crypto/asymmetric_keys/x509_public_key.c           |   31 +-
 crypto/cipher.c                                    |    3 +-
 crypto/compress.h                                  |    3 -
 crypto/{crypto_user_base.c => crypto_user.c}       |   10 +-
 crypto/crypto_user_stat.c                          |  176 --
 crypto/ecc.c                                       |  100 +-
 crypto/ecc_curve_defs.h                            |   49 +
 crypto/ecdh.c                                      |   11 +-
 crypto/ecdsa.c                                     |   66 +-
 crypto/ecrdsa.c                                    |    1 +
 crypto/ecrdsa_defs.h                               |    5 +
 crypto/fips.c                                      |    1 -
 crypto/hash.h                                      |   30 -
 crypto/jitterentropy-kcapi.c                       |    3 +-
 crypto/jitterentropy.c                             |    4 +-
 crypto/kpp.c                                       |   30 -
 crypto/lskcipher.c                                 |   73 +-
 crypto/rng.c                                       |   44 +-
 crypto/scompress.c                                 |    3 -
 crypto/shash.c                                     |   75 +-
 crypto/sig.c                                       |   13 -
 crypto/skcipher.c                                  |   86 +-
 crypto/skcipher.h                                  |   10 -
 crypto/testmgr.c                                   |    7 +
 crypto/testmgr.h                                   |  146 ++
 drivers/char/hw_random/core.c                      |    2 +-
 drivers/char/hw_random/mxc-rnga.c                  |    9 +-
 drivers/char/hw_random/stm32-rng.c                 |   18 +-
 drivers/crypto/Kconfig                             |    8 +
 drivers/crypto/Makefile                            |    1 +
 drivers/crypto/atmel-i2c.c                         |   30 +-
 drivers/crypto/atmel-i2c.h                         |    8 +-
 drivers/crypto/atmel-sha204a.c                     |   68 +
 drivers/crypto/bcm/spu2.c                          |    2 +-
 drivers/crypto/caam/ctrl.c                         |   19 +-
 drivers/crypto/ccp/sp-platform.c                   |   14 +-
 drivers/crypto/hisilicon/debugfs.c                 |   65 +-
 drivers/crypto/hisilicon/hpre/hpre_main.c          |   23 +-
 drivers/crypto/hisilicon/qm.c                      |    8 +-
 drivers/crypto/hisilicon/sec2/sec_crypto.c         |    4 +-
 drivers/crypto/hisilicon/sec2/sec_main.c           |   32 +-
 drivers/crypto/hisilicon/sgl.c                     |    5 +-
 drivers/crypto/hisilicon/zip/zip_main.c            |   24 +-
 drivers/crypto/intel/iaa/iaa_crypto.h              |   16 +-
 drivers/crypto/intel/iaa/iaa_crypto_main.c         |   23 +-
 drivers/crypto/intel/iaa/iaa_crypto_stats.c        |  183 +-
 drivers/crypto/intel/iaa/iaa_crypto_stats.h        |    8 -
 .../crypto/intel/qat/qat_420xx/adf_420xx_hw_data.c |    5 +-
 .../crypto/intel/qat/qat_4xxx/adf_4xxx_hw_data.c   |    7 +-
 drivers/crypto/intel/qat/qat_4xxx/adf_drv.c        |    2 +
 .../crypto/intel/qat/qat_c3xxx/adf_c3xxx_hw_data.c |    1 +
 .../intel/qat/qat_c3xxxvf/adf_c3xxxvf_hw_data.c    |    1 +
 .../crypto/intel/qat/qat_c62x/adf_c62x_hw_data.c   |    1 +
 .../intel/qat/qat_c62xvf/adf_c62xvf_hw_data.c      |    1 +
 drivers/crypto/intel/qat/qat_common/Makefile       |    6 +-
 .../intel/qat/qat_common/adf_accel_devices.h       |   88 +
 .../crypto/intel/qat/qat_common/adf_common_drv.h   |   10 +
 .../intel/qat/qat_common/adf_gen2_hw_csr_data.c    |  101 +
 .../intel/qat/qat_common/adf_gen2_hw_csr_data.h    |   86 +
 .../crypto/intel/qat/qat_common/adf_gen2_hw_data.c |   97 -
 .../crypto/intel/qat/qat_common/adf_gen2_hw_data.h |   76 -
 .../intel/qat/qat_common/adf_gen4_hw_csr_data.c    |  231 +++
 .../intel/qat/qat_common/adf_gen4_hw_csr_data.h    |  188 ++
 .../crypto/intel/qat/qat_common/adf_gen4_hw_data.c |  380 +++-
 .../crypto/intel/qat/qat_common/adf_gen4_hw_data.h |  127 +-
 .../crypto/intel/qat/qat_common/adf_gen4_pfvf.c    |    8 +-
 drivers/crypto/intel/qat/qat_common/adf_gen4_tl.c  |    1 +
 .../crypto/intel/qat/qat_common/adf_gen4_vf_mig.c  | 1010 ++++++++++
 .../crypto/intel/qat/qat_common/adf_gen4_vf_mig.h  |   10 +
 .../crypto/intel/qat/qat_common/adf_mstate_mgr.c   |  318 ++++
 .../crypto/intel/qat/qat_common/adf_mstate_mgr.h   |   89 +
 .../intel/qat/qat_common/adf_pfvf_pf_proto.c       |    8 +-
 .../crypto/intel/qat/qat_common/adf_pfvf_utils.h   |   11 +
 drivers/crypto/intel/qat/qat_common/adf_rl.c       |   12 +-
 drivers/crypto/intel/qat/qat_common/adf_rl.h       |    2 +
 drivers/crypto/intel/qat/qat_common/adf_sriov.c    |    7 +-
 .../crypto/intel/qat/qat_common/adf_telemetry.c    |   21 +
 .../crypto/intel/qat/qat_common/adf_telemetry.h    |    1 +
 .../crypto/intel/qat/qat_common/adf_transport.c    |    4 +-
 .../crypto/intel/qat/qat_common/qat_asym_algs.c    |   66 +-
 drivers/crypto/intel/qat/qat_common/qat_bl.c       |    6 +-
 drivers/crypto/intel/qat/qat_common/qat_bl.h       |   11 +-
 drivers/crypto/intel/qat/qat_common/qat_mig_dev.c  |  130 ++
 .../intel/qat/qat_dh895xcc/adf_dh895xcc_hw_data.c  |    1 +
 .../qat/qat_dh895xccvf/adf_dh895xccvf_hw_data.c    |    1 +
 drivers/crypto/marvell/octeontx2/cn10k_cpt.c       |    4 +
 drivers/crypto/nx/nx-842.c                         |    6 +-
 drivers/crypto/nx/nx-842.h                         |   10 +-
 drivers/crypto/sahara.c                            |   16 +-
 drivers/crypto/starfive/Kconfig                    |    4 +
 drivers/crypto/starfive/jh7110-aes.c               |  603 ++++--
 drivers/crypto/starfive/jh7110-cryp.c              |   43 -
 drivers/crypto/starfive/jh7110-cryp.h              |   10 +-
 drivers/crypto/starfive/jh7110-hash.c              |  285 ++-
 drivers/crypto/starfive/jh7110-rsa.c               |   14 +-
 drivers/crypto/stm32/stm32-hash.c                  |  570 ++++--
 drivers/crypto/tegra/Makefile                      |    9 +
 drivers/crypto/tegra/tegra-se-aes.c                | 1933 ++++++++++++++++++++
 drivers/crypto/tegra/tegra-se-hash.c               | 1060 +++++++++++
 drivers/crypto/tegra/tegra-se-key.c                |  156 ++
 drivers/crypto/tegra/tegra-se-main.c               |  437 +++++
 drivers/crypto/tegra/tegra-se.h                    |  560 ++++++
 drivers/gpu/host1x/dev.c                           |   24 +
 include/crypto/acompress.h                         |   73 +-
 include/crypto/aead.h                              |   21 -
 include/crypto/akcipher.h                          |   78 +-
 include/crypto/algapi.h                            |    3 -
 include/crypto/ecc_curve.h                         |    2 +
 include/crypto/ecdh.h                              |    1 +
 include/crypto/hash.h                              |   22 -
 include/crypto/internal/acompress.h                |    1 -
 include/crypto/internal/cryptouser.h               |   16 -
 include/crypto/internal/ecc.h                      |   27 +-
 include/crypto/internal/scompress.h                |    1 -
 include/crypto/kpp.h                               |   58 +-
 include/crypto/rng.h                               |   51 +-
 include/crypto/skcipher.h                          |   25 -
 include/linux/compiler.h                           |    2 +
 include/linux/oid_registry.h                       |    1 +
 include/linux/qat/qat_mig_dev.h                    |   31 +
 include/uapi/linux/cryptouser.h                    |   30 +-
 kernel/padata.c                                    |    8 +-
 154 files changed, 10335 insertions(+), 3222 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/crypto/nvidia,tegra234-se-aes.yaml
 create mode 100644 Documentation/devicetree/bindings/crypto/nvidia,tegra234-se-hash.yaml
 delete mode 100644 Documentation/devicetree/bindings/crypto/omap-sham.txt
 create mode 100644 Documentation/devicetree/bindings/crypto/ti,omap-sham.yaml
 create mode 100644 arch/x86/crypto/aes-xts-avx-x86_64.S
 rename crypto/{crypto_user_base.c => crypto_user.c} (98%)
 delete mode 100644 crypto/crypto_user_stat.c
 create mode 100644 drivers/crypto/intel/qat/qat_common/adf_gen2_hw_csr_data.c
 create mode 100644 drivers/crypto/intel/qat/qat_common/adf_gen2_hw_csr_data.h
 create mode 100644 drivers/crypto/intel/qat/qat_common/adf_gen4_hw_csr_data.c
 create mode 100644 drivers/crypto/intel/qat/qat_common/adf_gen4_hw_csr_data.h
 create mode 100644 drivers/crypto/intel/qat/qat_common/adf_gen4_vf_mig.c
 create mode 100644 drivers/crypto/intel/qat/qat_common/adf_gen4_vf_mig.h
 create mode 100644 drivers/crypto/intel/qat/qat_common/adf_mstate_mgr.c
 create mode 100644 drivers/crypto/intel/qat/qat_common/adf_mstate_mgr.h
 create mode 100644 drivers/crypto/intel/qat/qat_common/qat_mig_dev.c
 create mode 100644 drivers/crypto/tegra/Makefile
 create mode 100644 drivers/crypto/tegra/tegra-se-aes.c
 create mode 100644 drivers/crypto/tegra/tegra-se-hash.c
 create mode 100644 drivers/crypto/tegra/tegra-se-key.c
 create mode 100644 drivers/crypto/tegra/tegra-se-main.c
 create mode 100644 drivers/crypto/tegra/tegra-se.h
 delete mode 100644 include/crypto/internal/cryptouser.h
 create mode 100644 include/linux/qat/qat_mig_dev.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