[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230705164009.58351-1-giovanni.cabiddu@intel.com>
Date: Wed, 5 Jul 2023 17:40:06 +0100
From: Giovanni Cabiddu <giovanni.cabiddu@...el.com>
To: herbert@...dor.apana.org.au, agk@...hat.com, snitzer@...nel.org
Cc: linux-crypto@...r.kernel.org, dm-devel@...hat.com,
linux-kernel@...r.kernel.org, qat-linux@...el.com,
heinzm@...hat.com, meenakshi.aggarwal@....com, ebiggers@...nel.org,
horia.geanta@....com, V.Sethi@....com, pankaj.gupta@....com,
gaurav.jain@....com, davem@...emloft.net, iuliana.prodan@....com,
Giovanni Cabiddu <giovanni.cabiddu@...el.com>
Subject: [PATCH 0/3] crypto: adjust meaning of CRYPTO_ALG_ALLOCATES_MEMORY
Commit fbb6cda44190 introduced the flag CRYPTO_ALG_ALLOCATES_MEMORY.
This allows to mark algorithms that allocate memory during the datapath
so they are not used for disk encryption.
Following that, cd74693870fb limited dm-crypt to use only
implementations that don't set that flag.
After discussions in the crypto mailing list [1][2][3] about how we
could re-enable algorithms to be used by dm-crypt, we came to the
conclusion that we can change slightly the meaning of the flag
!CRYPTO_ALG_ALLOCATES_MEMORY. If an algorithm does not allocate
memory for requests with a scatterlist of 4 or less entries
(the typical case for dm-crypt), then it can avoid marking the
implementation with the flag CRYPTO_ALG_ALLOCATES_MEMORY.
This set adjusts the meaning of CRYPTO_ALG_ALLOCATES_MEMORY in the
documentation, removes the filtering for algorithms that do not
allocate memory in dm-integrity and removes the
CRYPTO_ALG_ALLOCATES_MEMORY from the algorithms registered in the QAT
driver as this is not allocating memory in the datapath for requests
with 4 or less entries in the source and destination scatterlists.
[1] https://lore.kernel.org/linux-crypto/20200722072932.GA27544@gondor.apana.org.au/
[2] https://lore.kernel.org/linux-crypto/20230523165503.GA864814@google.com/
[3] https://lore.kernel.org/linux-crypto/Ysw9E2Az2oK4jfCf@lucas-Virtual-Machine/
Giovanni Cabiddu (3):
dm integrity: do not filter algos with CRYPTO_ALG_ALLOCATES_MEMORY
crypto: api - adjust meaning of CRYPTO_ALG_ALLOCATES_MEMORY
crypto: qat - remove CRYPTO_ALG_ALLOCATES_MEMORY flag
drivers/crypto/intel/qat/qat_common/qat_algs.c | 13 ++++++-------
.../intel/qat/qat_common/qat_comp_algs.c | 2 +-
drivers/md/dm-integrity.c | 2 +-
include/linux/crypto.h | 18 ++++++++++++++++--
4 files changed, 24 insertions(+), 11 deletions(-)
--
2.40.1
Powered by blists - more mailing lists