Message ID | 20220506131627.180784-1-pizhenwei@bytedance.com |
---|---|
Headers | show |
Series | virtio-crypto: Improve performance | expand |
Hi, Michael I would appreciate it if you could review this series! On 5/6/22 21:16, zhenwei pi wrote: > v5 -> v6: > - Minor fix for crypto_engine_alloc_init_and_set(). > - All the patches have been reviewed by Gonglei, add this in patch. > Thanks to Gonglei. > > v4 -> v5: > - Fix potentially dereferencing uninitialized variables in > 'virtio-crypto: use private buffer for control request'. > Thanks to Dan Carpenter! > > v3 -> v4: > - Don't create new file virtio_common.c, the new functions are added > into virtio_crypto_core.c > - Split the first patch into two parts: > 1, change code style, > 2, use private buffer instead of shared buffer > - Remove relevant change. > - Other minor changes. > > 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: change code style > virtio-crypto: use private buffer for control request > virtio-crypto: wait ctrl queue instead of busy polling > > .../virtio/virtio_crypto_akcipher_algs.c | 95 ++++++------ > drivers/crypto/virtio/virtio_crypto_common.h | 21 ++- > drivers/crypto/virtio/virtio_crypto_core.c | 55 ++++++- > .../virtio/virtio_crypto_skcipher_algs.c | 140 ++++++++---------- > 4 files changed, 182 insertions(+), 129 deletions(-) >