1. 12 Oct, 2023 3 commits
  2. 05 Oct, 2023 15 commits
  3. 01 Oct, 2023 19 commits
  4. 20 Sep, 2023 3 commits
    • Roxana Nicolescu's avatar
      crypto: x86/sha - load modules based on CPU features · 1c43c0f1
      Roxana Nicolescu authored
      x86 optimized crypto modules are built as modules rather than build-in and
      they are not loaded when the crypto API is initialized, resulting in the
      generic builtin module (sha1-generic) being used instead.
      
      It was discovered when creating a sha1/sha256 checksum of a 2Gb file by
      using kcapi-tools because it would take significantly longer than creating
      a sha512 checksum of the same file. trace-cmd showed that for sha1/256 the
      generic module was used, whereas for sha512 the optimized module was used
      instead.
      
      Add module aliases() for these x86 optimized crypto modules based on CPU
      feature bits so udev gets a chance to load them later in the boot
      process. This resulted in ~3x decrease in the real-time execution of
      kcapi-dsg.
      
      Fix is inspired from commit
      aa031b8f ("crypto: x86/sha512 - load based on CPU features")
      where a similar fix was done for sha512.
      
      Cc: stable@vger.kernel.org # 5.15+
      Suggested-by: default avatarDimitri John Ledkov <dimitri.ledkov@canonical.com>
      Suggested-by: default avatarJulian Andres Klode <julian.klode@canonical.com>
      Signed-off-by: default avatarRoxana Nicolescu <roxana.nicolescu@canonical.com>
      Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
      1c43c0f1
    • Wenkai Lin's avatar
      crypto: hisilicon/sec - fix for sgl unmmap problem · ce2cb2e1
      Wenkai Lin authored
      When sec_aead_mac_init returns an error code, sec_cipher_map
      will exit abnormally, the hardware sgl should be unmmaped.
      Signed-off-by: default avatarWenkai Lin <linwenkai6@hisilicon.com>
      Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
      ce2cb2e1
    • Adam Guerin's avatar
      crypto: qat - enable dc chaining service · 37b14f2d
      Adam Guerin authored
      QAT GEN4 devices support chained compression operations. These
      allow, with a single request to firmware, to hash then compress
      data.
      
      Extend the configuration to enable such mode. The cfg_services
      operations in sysfs are extended to allow the string "dcc". When
      selected, the driver downloads to the device both the symmetric
      crypto and the compression firmware images and sends an admin message
      to firmware which enables `chained` operations.
      In addition, it sets the device's capabilities as the combination
      of compression and symmetric crypto capabilities, while excluding
      the ICP_ACCEL_CAPABILITIES_CRYPTO_SYMMETRIC bit to indicate
      that in this mode, symmetric crypto instances are not supported.
      
      When "dcc" is enabled, the device will handle compression requests
      as if the "dc" configuration is loaded ("dcc" is a variation of "dc")
      and the driver will register the acomp algorithms.
      
      As for the other extended configurations, "dcc" is only available for
      qat_4xxx devices and the chaining service will be only accessible from
      user space.
      Signed-off-by: default avatarAdam Guerin <adam.guerin@intel.com>
      Reviewed-by: default avatarGiovanni Cabiddu <giovanni.cabiddu@intel.com>
      Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
      37b14f2d