[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20251204064220-mutt-send-email-mst@kernel.org>
Date: Thu, 4 Dec 2025 06:43:15 -0500
From: "Michael S. Tsirkin" <mst@...hat.com>
To: Bibo Mao <maobibo@...ngson.cn>
Cc: Gonglei <arei.gonglei@...wei.com>, Jason Wang <jasowang@...hat.com>,
Xuan Zhuo <xuanzhuo@...ux.alibaba.com>,
Eugenio Pérez <eperezma@...hat.com>,
Herbert Xu <herbert@...dor.apana.org.au>,
"David S. Miller" <davem@...emloft.net>,
virtualization@...ts.linux.dev, linux-crypto@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 9/9] crypto: virtio: Add ecb aes algo support
On Thu, Dec 04, 2025 at 07:26:11PM +0800, Bibo Mao wrote:
> ECB AES also is added here, its ivsize is zero and name is different
> compared with CBC AES algo.
>
> Signed-off-by: Bibo Mao <maobibo@...ngson.cn>
you did not post the cover letter, so the mail thread is malformed.
> ---
> .../virtio/virtio_crypto_skcipher_algs.c | 74 +++++++++++++------
> 1 file changed, 50 insertions(+), 24 deletions(-)
>
> diff --git a/drivers/crypto/virtio/virtio_crypto_skcipher_algs.c b/drivers/crypto/virtio/virtio_crypto_skcipher_algs.c
> index b4b79121c37c..9b4ba6a6b9cf 100644
> --- a/drivers/crypto/virtio/virtio_crypto_skcipher_algs.c
> +++ b/drivers/crypto/virtio/virtio_crypto_skcipher_algs.c
> @@ -559,31 +559,57 @@ static void virtio_crypto_skcipher_finalize_req(
> req, err);
> }
>
> -static struct virtio_crypto_algo virtio_crypto_algs[] = { {
> - .algonum = VIRTIO_CRYPTO_CIPHER_AES_CBC,
> - .service = VIRTIO_CRYPTO_SERVICE_CIPHER,
> - .algo.base = {
> - .base.cra_name = "cbc(aes)",
> - .base.cra_driver_name = "virtio_crypto_aes_cbc",
> - .base.cra_priority = 150,
> - .base.cra_flags = CRYPTO_ALG_ASYNC |
> - CRYPTO_ALG_ALLOCATES_MEMORY,
> - .base.cra_blocksize = AES_BLOCK_SIZE,
> - .base.cra_ctxsize = sizeof(struct virtio_crypto_skcipher_ctx),
> - .base.cra_module = THIS_MODULE,
> - .init = virtio_crypto_skcipher_init,
> - .exit = virtio_crypto_skcipher_exit,
> - .setkey = virtio_crypto_skcipher_setkey,
> - .decrypt = virtio_crypto_skcipher_decrypt,
> - .encrypt = virtio_crypto_skcipher_encrypt,
> - .min_keysize = AES_MIN_KEY_SIZE,
> - .max_keysize = AES_MAX_KEY_SIZE,
> - .ivsize = AES_BLOCK_SIZE,
> +static struct virtio_crypto_algo virtio_crypto_algs[] = {
> + {
> + .algonum = VIRTIO_CRYPTO_CIPHER_AES_CBC,
> + .service = VIRTIO_CRYPTO_SERVICE_CIPHER,
> + .algo.base = {
> + .base.cra_name = "cbc(aes)",
> + .base.cra_driver_name = "virtio_crypto_aes_cbc",
> + .base.cra_priority = 150,
> + .base.cra_flags = CRYPTO_ALG_ASYNC |
> + CRYPTO_ALG_ALLOCATES_MEMORY,
> + .base.cra_blocksize = AES_BLOCK_SIZE,
> + .base.cra_ctxsize = sizeof(struct virtio_crypto_skcipher_ctx),
> + .base.cra_module = THIS_MODULE,
> + .init = virtio_crypto_skcipher_init,
> + .exit = virtio_crypto_skcipher_exit,
> + .setkey = virtio_crypto_skcipher_setkey,
> + .decrypt = virtio_crypto_skcipher_decrypt,
> + .encrypt = virtio_crypto_skcipher_encrypt,
> + .min_keysize = AES_MIN_KEY_SIZE,
> + .max_keysize = AES_MAX_KEY_SIZE,
> + .ivsize = AES_BLOCK_SIZE,
> + },
> + .algo.op = {
> + .do_one_request = virtio_crypto_skcipher_crypt_req,
> + },
> },
> - .algo.op = {
> - .do_one_request = virtio_crypto_skcipher_crypt_req,
> - },
> -} };
> + {
> + .algonum = VIRTIO_CRYPTO_CIPHER_AES_ECB,
> + .service = VIRTIO_CRYPTO_SERVICE_CIPHER,
> + .algo.base = {
> + .base.cra_name = "ecb(aes)",
> + .base.cra_driver_name = "virtio_crypto_aes_ecb",
> + .base.cra_priority = 150,
> + .base.cra_flags = CRYPTO_ALG_ASYNC |
> + CRYPTO_ALG_ALLOCATES_MEMORY,
> + .base.cra_blocksize = AES_BLOCK_SIZE,
> + .base.cra_ctxsize = sizeof(struct virtio_crypto_skcipher_ctx),
> + .base.cra_module = THIS_MODULE,
> + .init = virtio_crypto_skcipher_init,
> + .exit = virtio_crypto_skcipher_exit,
> + .setkey = virtio_crypto_skcipher_setkey,
> + .decrypt = virtio_crypto_skcipher_decrypt,
> + .encrypt = virtio_crypto_skcipher_encrypt,
> + .min_keysize = AES_MIN_KEY_SIZE,
> + .max_keysize = AES_MAX_KEY_SIZE,
> + },
> + .algo.op = {
> + .do_one_request = virtio_crypto_skcipher_crypt_req,
> + },
> + }
> +};
>
> int virtio_crypto_skcipher_algs_register(struct virtio_crypto *vcrypto)
> {
> --
> 2.39.3
Powered by blists - more mailing lists