ping ...

On 2026/1/13 上午11:05, Bibo Mao wrote:
There is problem when multiple processes add encrypt/decrypt requests
with virtio crypto device and spinlock is missing with command response
handling. Also there is duplicated virtqueue_kick() without lock hold.

Here these two issues are fixed, also there is code cleanup, such as use
logical numa id rather than physical package id when checking matched
virtio device with current CPU.

---
v4 ... v5:
   1. Only add bugfix patches and remove code cleanup patches.

v3 ... v4:
   1. Remove patch 10 which adds ECB AES algo, since application and qemu
      backend emulation is not ready for ECB AES algo.
   2. Add Cc stable tag with patch 2 which removes duplicated
      virtqueue_kick() without lock hold.

v2 ... v3:
   1. Remove NULL checking with req_data where kfree() is called, since
      NULL pointer is workable with kfree() API.
   2. In patch 7 and patch 8, req_data and IV buffer which are preallocated
      are sensitive data, memzero_explicit() is used even on error path
      handling.
   3. Remove duplicated virtqueue_kick() in new patch 2, since it is
      already called in previous __virtio_crypto_skcipher_do_req().

v1 ... v2:
   1. Add Fixes tag with patch 1.
   2. Add new patch 2 - patch 9 to add ecb aes algo support.
---
Bibo Mao (3):
   crypto: virtio: Add spinlock protection with virtqueue notification
   crypto: virtio: Remove duplicated virtqueue_kick in
     virtio_crypto_skcipher_crypt_req
   crypto: virtio: Replace package id with numa node id

  drivers/crypto/virtio/virtio_crypto_common.h        | 2 +-
  drivers/crypto/virtio/virtio_crypto_core.c          | 5 +++++
  drivers/crypto/virtio/virtio_crypto_skcipher_algs.c | 2 --
  3 files changed, 6 insertions(+), 3 deletions(-)


base-commit: 9c7ef209cd0f7c1a92ed61eed3e835d6e4abc66c



Reply via email to