zhenwei pi
2022-Mar-03 01:59 UTC
[PATCH v3 0/4] Introduce akcipher service for virtio-crypto
On 3/3/22 4:40 AM, Eric Biggers wrote:> On Wed, Mar 02, 2022 at 11:39:13AM +0800, zhenwei pi wrote: >> v2 -> v3: >> Rename virtio_crypto_algs.c to virtio_crypto_skcipher_algs.c, and >> minor changes of function name. >> Minor changes in virtio_crypto_akcipher_algs.c: no need to copy from >> buffer if opcode is verify. >> >> v1 -> v2: >> Fix 1 compiling warning reported by kernel test robot <lkp at intel.com> >> Put "__le32 akcipher_algo;" instead of "__le32 reserve;" field of >> struct virtio_crypto_config directly without size change. >> Add padding in struct virtio_crypto_ecdsa_session_para to keep >> 64-bit alignment. >> Remove irrelevant change by code format alignment. >> >> Also CC crypto gurus Herbert and linux-crypto at vger.kernel.org. >> >> Test with QEMU(patched by the v2 version), works fine. >> >> v1: >> Introduce akcipher service, implement RSA algorithm, and a minor fix. >> >> zhenwei pi (4): >> virtio_crypto: Introduce VIRTIO_CRYPTO_NOSPC >> virtio-crypto: introduce akcipher service >> virtio-crypto: implement RSA algorithm >> virtio-crypto: rename skcipher algs >> >> drivers/crypto/virtio/Makefile | 3 +- >> .../virtio/virtio_crypto_akcipher_algs.c | 585 ++++++++++++++++++ >> drivers/crypto/virtio/virtio_crypto_common.h | 7 +- >> drivers/crypto/virtio/virtio_crypto_core.c | 6 +- >> drivers/crypto/virtio/virtio_crypto_mgr.c | 15 +- >> ...o_algs.c => virtio_crypto_skcipher_algs.c} | 4 +- >> include/uapi/linux/virtio_crypto.h | 82 ++- >> 7 files changed, 693 insertions(+), 9 deletions(-) >> create mode 100644 drivers/crypto/virtio/virtio_crypto_akcipher_algs.c >> rename drivers/crypto/virtio/{virtio_crypto_algs.c => virtio_crypto_skcipher_algs.c} (99%) > > Why is this patchset useful? That isn't explained anywhere. > > - Eric >Sorry about this missing part. This feature provides akcipher service offloading capability for guest side. And I also sent a patchset of QEMU: https://patchwork.kernel.org/project/qemu-devel/cover/20220211084335.1254281-1-pizhenwei at bytedance.com/ The two patchsets work together, guest side sends encrypt/decrypt/sign/verify requests to host side, host side handles request and return response to the guest. -- zhenwei pi