qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: zhenwei pi <pizhenwei@bytedance.com>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: arei.gonglei@huawei.com, berrange@redhat.com,
	dgilbert@redhat.com, pbonzini@redhat.com, armbru@redhat.com,
	qemu-devel@nongnu.org
Subject: Re: Re: [PATCH v3 00/12] Refactor cryptodev
Date: Sat, 28 Jan 2023 20:45:30 +0800	[thread overview]
Message-ID: <8b04c5f0-b33d-0f02-a8fd-de13a1b3040d@bytedance.com> (raw)
In-Reply-To: <20230128062802-mutt-send-email-mst@kernel.org>

On 1/28/23 19:30, Michael S. Tsirkin wrote:
> On Sat, Jan 28, 2023 at 11:56:21AM +0800, zhenwei pi wrote:
>> v3 -> v4:
>> - a small change in '0005-cryptodev-Introduce-query-cryptodev-QMP-command.patch':
>>    use 'uint32' instead of 'int' to describe CryptodevBackendClient:queue
> 
> what was the motivation for this change? we generally just use int
> unless width is important.
> 
Because we use uint32_t to describe the queues of a cryptodev:
struct CryptoDevBackendPeers {
     CryptoDevBackendClient *ccs[MAX_CRYPTO_QUEUE_NUM];
     uint32_t queues;
};

By the way, I also notice that 'int' and 'uint32_t' in several places, I 
think I need a followup patch to fix this(use 'uint32_t' only for queue 
index).

>> - 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)'
>>
> 
> Are you aware of PRIu64? And if you are going to print uint32 use PRIu32
> 
OK, I'll fix this in the next version.

>> 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
> 

-- 
zhenwei pi


      reply	other threads:[~2023-01-28 12:46 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-28  3:56 [PATCH v3 00/12] Refactor cryptodev zhenwei pi
2023-01-28  3:56 ` [PATCH v3 01/12] cryptodev: Introduce cryptodev.json zhenwei pi
2023-01-28  3:56 ` [PATCH v3 02/12] cryptodev: Remove 'name' & 'model' fields zhenwei pi
2023-01-28  3:56 ` [PATCH v3 03/12] cryptodev: Introduce cryptodev alg type in QAPI zhenwei pi
2023-01-28  3:56 ` [PATCH v3 04/12] cryptodev: Introduce server " zhenwei pi
2023-01-28  3:56 ` [PATCH v3 05/12] cryptodev: Introduce 'query-cryptodev' QMP command zhenwei pi
2023-01-28 11:30   ` Michael S. Tsirkin
2023-01-28 12:50     ` zhenwei pi
2023-01-28  3:56 ` [PATCH v3 06/12] cryptodev-builtin: Detect akcipher capability zhenwei pi
2023-01-28  3:56 ` [PATCH v3 07/12] hmp: add cryptodev info command zhenwei pi
2023-01-28  3:56 ` [PATCH v3 08/12] cryptodev: Use CryptoDevBackendOpInfo for operation zhenwei pi
2023-01-28  3:56 ` [PATCH v3 09/12] cryptodev: Account statistics zhenwei pi
2023-01-28  3:56 ` [PATCH v3 10/12] cryptodev: support QoS zhenwei pi
2023-01-28  3:56 ` [PATCH v3 11/12] cryptodev: Support query-stats QMP command zhenwei pi
2023-01-28  3:56 ` [PATCH v3 12/12] MAINTAINERS: add myself as the maintainer for cryptodev zhenwei pi
2023-01-28 11:30 ` [PATCH v3 00/12] Refactor cryptodev Michael S. Tsirkin
2023-01-28 12:45   ` zhenwei pi [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=8b04c5f0-b33d-0f02-a8fd-de13a1b3040d@bytedance.com \
    --to=pizhenwei@bytedance.com \
    --cc=arei.gonglei@huawei.com \
    --cc=armbru@redhat.com \
    --cc=berrange@redhat.com \
    --cc=dgilbert@redhat.com \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).