qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

PING: [PATCH v4 00/12] Refactor cryptodev


From: zhenwei pi
Subject: PING: [PATCH v4 00/12] Refactor cryptodev
Date: Mon, 6 Feb 2023 08:23:20 +0800
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.4.2

Hi Michael

Please correct me if I miss anything...

On 1/29/23 10:57, zhenwei pi wrote:
v4 -> v5:
- suggested by MST, use 'PRIu32' instead of '%u' to print a uint32_t value
- correct *QCryptodevBackendClient* and *QCryptodevInfo* in qapi/cryptodev.json

v3 -> v4:
- a small change in 
'0005-cryptodev-Introduce-query-cryptodev-QMP-command.patch':
   use 'uint32' instead of 'int' to describe CryptodevBackendClient:queue
- fix compling warning(gcc)/error(clang-11) on 32 bit platform in
   '0007-hmp-add-cryptodev-info-command.patch':
   use 'printf("%u", client->queue)' instead of 'printf("%ld", client->queue)'

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              |  42 ++++
  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, 744 insertions(+), 120 deletions(-)
  create mode 100644 qapi/cryptodev.json


--
zhenwei pi



reply via email to

[Prev in Thread] Current Thread [Next in Thread]