[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 00/12] Refactor cryptodev
From: |
zhenwei pi |
Subject: |
[PATCH v3 00/12] Refactor cryptodev |
Date: |
Thu, 19 Jan 2023 15:14:07 +0800 |
v2 -> v3:
- rebase code against the lastest commist: fb7e7990342e59cf67d
- document the missing fields in qapi/cryptodev.json
- rework statistics part: use 'query-stats' command instead of
'query-cryptodev'(cryptodev: Support query-stats QMP command)
v1 -> v2:
- fix coding style and use 'g_strjoin()' instead of 'char services[128]'
(suggested by Dr. David Alan Gilbert)
- wrapper function 'cryptodev_backend_account' to record statistics, and
allocate sym_stat/asym_stat in cryptodev base class. see patch:
'cryptodev: Support statistics'.
- add more arguments into struct CryptoDevBackendOpInfo, then
cryptodev_backend_crypto_operation() uses *op_info only.
- support cryptodev QoS settings(BPS&OPS), both QEMU command line and QMP
command works fine.
- add myself as the maintainer for cryptodev.
v1:
- introduce cryptodev.json to describe the attributes of crypto device, then
drop duplicated type declare, remove some virtio related dependence.
- add statistics: OPS and bandwidth.
- add QMP command: query-cryptodev
- add HMP info command: cryptodev
- misc fix: detect akcipher capability instead of exposing akcipher service
unconditionally.
Zhenwei Pi (12):
cryptodev: Introduce cryptodev.json
cryptodev: Remove 'name' & 'model' fields
cryptodev: Introduce cryptodev alg type in QAPI
cryptodev: Introduce server type in QAPI
cryptodev: Introduce 'query-cryptodev' QMP command
cryptodev-builtin: Detect akcipher capability
hmp: add cryptodev info command
cryptodev: Use CryptoDevBackendOpInfo for operation
cryptodev: Account statistics
cryptodev: support QoS
cryptodev: Support query-stats QMP command
MAINTAINERS: add myself as the maintainer for cryptodev
MAINTAINERS | 2 +
backends/cryptodev-builtin.c | 42 ++--
backends/cryptodev-lkcf.c | 19 +-
backends/cryptodev-vhost-user.c | 13 +-
backends/cryptodev-vhost.c | 4 +-
backends/cryptodev.c | 419 ++++++++++++++++++++++++++++++--
hmp-commands-info.hx | 14 ++
hw/virtio/virtio-crypto.c | 48 +++-
include/monitor/hmp.h | 1 +
include/sysemu/cryptodev.h | 95 ++++----
monitor/hmp-cmds.c | 41 ++++
monitor/qmp-cmds.c | 2 +
qapi/cryptodev.json | 143 +++++++++++
qapi/meson.build | 1 +
qapi/qapi-schema.json | 1 +
qapi/qom.json | 8 +-
qapi/stats.json | 10 +-
17 files changed, 743 insertions(+), 120 deletions(-)
create mode 100644 qapi/cryptodev.json
--
2.34.1
- [PATCH v3 00/12] Refactor cryptodev,
zhenwei pi <=
- [PATCH v3 03/12] cryptodev: Introduce cryptodev alg type in QAPI, zhenwei pi, 2023/01/19
- [PATCH v3 01/12] cryptodev: Introduce cryptodev.json, zhenwei pi, 2023/01/19
- [PATCH v3 02/12] cryptodev: Remove 'name' & 'model' fields, zhenwei pi, 2023/01/19
- [PATCH v3 04/12] cryptodev: Introduce server type in QAPI, zhenwei pi, 2023/01/19
- [PATCH v3 05/12] cryptodev: Introduce 'query-cryptodev' QMP command, zhenwei pi, 2023/01/19
- [PATCH v3 06/12] cryptodev-builtin: Detect akcipher capability, zhenwei pi, 2023/01/19
- [PATCH v3 07/12] hmp: add cryptodev info command, zhenwei pi, 2023/01/19
- [PATCH v3 08/12] cryptodev: Use CryptoDevBackendOpInfo for operation, zhenwei pi, 2023/01/19
- [PATCH v3 09/12] cryptodev: Account statistics, zhenwei pi, 2023/01/19
- [PATCH v3 10/12] cryptodev: support QoS, zhenwei pi, 2023/01/19