virtualization.lists.linux-foundation.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/5] virtio-crypto: Improve performance
@ 2022-04-21 10:40 zhenwei pi
  2022-04-21 10:40 ` [PATCH v3 1/5] virtio-crypto: use private buffer for control request zhenwei pi
                   ` (4 more replies)
  0 siblings, 5 replies; 13+ messages in thread
From: zhenwei pi @ 2022-04-21 10:40 UTC (permalink / raw)
  To: arei.gonglei, mst
  Cc: helei.sig11, linux-kernel, zhenwei pi, virtualization,
	linux-crypto, davem, herbert

v2 -> v3:
 - Jason suggested that spliting the first patch into two part:
     1, using private buffer
     2, remove the busy polling
   Rework as Jason's suggestion, this makes the smaller change in
   each one and clear.

v1 -> v2:
 - Use kfree instead of kfree_sensitive for insensitive buffer.
 - Several coding style fix.
 - Use memory from current node, instead of memory close to device
 - Add more message in commit, also explain why removing per-device
   request buffer.
 - Add necessary comment in code to explain why using kzalloc to
   allocate struct virtio_crypto_ctrl_request.

v1:
The main point of this series is to improve the performance for
virtio crypto:
- Use wait mechanism instead of busy polling for ctrl queue, this
  reduces CPU and lock racing, it's possiable to create/destroy session
  parallelly, QPS increases from ~40K/s to ~200K/s.
- Enable retry on crypto engine to improve performance for data queue,
  this allows the larger depth instead of 1.
- Fix dst data length in akcipher service.
- Other style fix.

lei he (2):
  virtio-crypto: adjust dst_len at ops callback
  virtio-crypto: enable retry for virtio-crypto-dev

zhenwei pi (3):
  virtio-crypto: use private buffer for control request
  virtio-crypto: wait ctrl queue instead of busy polling
  virtio-crypto: move helpers into virtio_crypto_common.c

 drivers/crypto/virtio/Makefile                |   1 +
 .../virtio/virtio_crypto_akcipher_algs.c      |  95 ++++++-------
 drivers/crypto/virtio/virtio_crypto_common.c  |  92 ++++++++++++
 drivers/crypto/virtio/virtio_crypto_common.h  |  29 +++-
 drivers/crypto/virtio/virtio_crypto_core.c    |  37 +----
 .../virtio/virtio_crypto_skcipher_algs.c      | 133 ++++++++----------
 6 files changed, 226 insertions(+), 161 deletions(-)
 create mode 100644 drivers/crypto/virtio/virtio_crypto_common.c

-- 
2.20.1

_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2022-04-24 10:46 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-04-21 10:40 [PATCH v3 0/5] virtio-crypto: Improve performance zhenwei pi
2022-04-21 10:40 ` [PATCH v3 1/5] virtio-crypto: use private buffer for control request zhenwei pi
2022-04-22  7:41   ` Jason Wang
2022-04-22  9:08     ` zhenwei pi
2022-04-24  6:21       ` Jason Wang
2022-04-24 10:42         ` zhenwei pi
2022-04-21 10:40 ` [PATCH v3 2/5] virtio-crypto: wait ctrl queue instead of busy polling zhenwei pi
2022-04-22  7:46   ` Jason Wang
2022-04-22  8:32     ` zhenwei pi
2022-04-21 10:40 ` [PATCH v3 3/5] virtio-crypto: move helpers into virtio_crypto_common.c zhenwei pi
2022-04-21 10:40 ` [PATCH v3 4/5] virtio-crypto: adjust dst_len at ops callback zhenwei pi
2022-04-21 13:46   ` Gonglei (Arei) via Virtualization
2022-04-21 10:40 ` [PATCH v3 5/5] virtio-crypto: enable retry for virtio-crypto-dev zhenwei pi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).