qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: "Gonglei (Arei)" <arei.gonglei@huawei.com>
Cc: "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"virtio-dev@lists.oasis-open.org"
	<virtio-dev@lists.oasis-open.org>,
	"Huangpeng (Peter)" <peter.huangpeng@huawei.com>,
	Luonengjun <luonengjun@huawei.com>,
	"cornelia.huck@de.ibm.com" <cornelia.huck@de.ibm.com>,
	"stefanha@redhat.com" <stefanha@redhat.com>,
	"denglingli@chinamobile.com" <denglingli@chinamobile.com>,
	Jani Kokkonen <Jani.Kokkonen@huawei.com>,
	"Ola.Liljedahl@arm.com" <Ola.Liljedahl@arm.com>,
	"Varun.Sethi@freescale.com" <Varun.Sethi@freescale.com>,
	"xin.zeng@intel.com" <xin.zeng@intel.com>,
	"brian.a.keating@intel.com" <brian.a.keating@intel.com>,
	"liang.j.ma@intel.com" <liang.j.ma@intel.com>,
	"john.griffin@intel.com" <john.griffin@intel.com>,
	"Hanweidong (Randy)" <hanweidong@huawei.com>,
	"Huangweidong (C)" <weidong.huang@huawei.com>,
	"mike.caraman@nxp.com" <mike.caraman@nxp.com>,
	"agraf@suse.de" <agraf@suse.de>,
	Claudio Fontana <Claudio.Fontana@huawei.com>,
	"Zhoujian (jay, Euler)" <jianjay.zhou@huawei.com>,
	"nmorey@kalray.eu" <nmorey@kalray.eu>,
	"vincent.jardin@6wind.com" <vincent.jardin@6wind.com>,
	"Wubin (H)" <wu.wubin@huawei.com>,
	Shiqing Fan <Shiqing.Fan@huawei.com>,
	"arei.gonglei@hotmail.com" <arei.gonglei@hotmail.com>
Subject: Re: [Qemu-devel] [PATCH v12 0/2] virtio-crypto: virtio crypto device specification
Date: Fri, 28 Oct 2016 01:13:50 +0300	[thread overview]
Message-ID: <20161028011258-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <33183CC9F5247A488A2544077AF19020B0404775@SZXEMA503-MBS.china.huawei.com>

On Mon, Oct 24, 2016 at 06:51:52AM +0000, Gonglei (Arei) wrote:
> Ping.... 
> 
> And the corresponding source code v9 on QEMU side had been posted:
> 
> [PATCH v9 00/12] virtio-crypto: introduce framework and device emulation
>  https://lists.gnu.org/archive/html/qemu-devel/2016-10/msg04755.html
> 
> Regards,
> -Gonglei

If there are no comments and this is ready to get votes now,
pls open the jira issue that you created.
I can then start the ballot.


> 
> > -----Original Message-----
> > From: Gonglei (Arei)
> > Sent: Monday, October 10, 2016 11:37 AM
> > Subject: [PATCH v12 0/2] virtio-crypto: virtio crypto device specification
> > 
> > This is the specification about a new virtio crypto device.
> > 
> > You can get the source code from the below website:
> > 
> > [PATCH v3 00/10] virtio-crypto: introduce framework and device emulation
> >   https://lists.gnu.org/archive/html/qemu-devel/2016-09/msg04132.html
> > 
> > [PATCH v4 00/13] virtio-crypto: introduce framework and device emulation
> >  https://lists.gnu.org/archive/html/qemu-devel/2016-09/msg07327.html
> > 
> > [PATCH v5 00/14] virtio-crypto: introduce framework and device emulation
> >  https://lists.gnu.org/archive/html/qemu-devel/2016-10/msg00963.html
> > 
> > For more information, please see:
> >  http://qemu-project.org/Features/VirtioCrypto
> > 
> > Please help to review, thanks.
> > 
> > CC: Michael S. Tsirkin <mst@redhat.com>
> > CC: Cornelia Huck <cornelia.huck@de.ibm.com>
> > CC: Stefan Hajnoczi <stefanha@redhat.com>
> > CC: Lingli Deng <denglingli@chinamobile.com>
> > CC: Jani Kokkonen <Jani.Kokkonen@huawei.com>
> > CC: Ola Liljedahl <Ola.Liljedahl@arm.com>
> > CC: Varun Sethi <Varun.Sethi@freescale.com>
> > CC: Zeng Xin <xin.zeng@intel.com>
> > CC: Keating Brian <brian.a.keating@intel.com>
> > CC: Ma Liang J <liang.j.ma@intel.com>
> > CC: Griffin John <john.griffin@intel.com>
> > CC: Hanweidong <hanweidong@huawei.com>
> > CC: Mihai Claudiu Caraman <mike.caraman@nxp.com>
> > 
> > Changes since v11:
> >  - drop scatter-gather I/O definition for virtio crypto device because
> >    The vring already provides scatter-gather I/O.  It is usually not
> >    necessary to define scatter-gather I/O at the device level.      [Stefan]
> >  - perfect algorithm chain parameters' definition.
> >  - add HASH/MAC parameter structure.
> > 
> > Changes since v10:
> >  - fix typos s/filed/field/. [Xin]
> >  - replace 'real cypto accelerator' with 'backend crypto accelerator'. [mst]
> >  - drop KDF, ASYM, PRIMITIVE services description temporarily. [mst]
> >  - write a device requirement are testable about
> > VIRTIO_CRYPTO_S_HW_READY. [mst]
> >  - add a space before * in one code comment. [mst]
> >  - reset the layout of all crypto operations for better asymmetric algos support.
> > [Xin]
> >  - add more detailed description for initialization vector under different modes.
> >  - sed -i 's/VIRTIO_CRYPTO_OP_/VIRTIO_CRYPTO_/g' for general usage in
> > asym algos. [Xin]
> > 
> > Changes since v9:
> >  - request a native speaker go over the text and fix corresponding grammar
> > issues. [mst]
> >  - make some description more appropriated over here and there. [mst]
> >  - rewrite some requirement for both device and driver. [mst]
> >  - use RFC 2119 keywords. [mst]
> >  - fix some complaints by Xelatex and typoes. [Xin Zeng]
> >  - add scatter/getter chain support for possible large block data.
> > 
> > Thanks for your review, Michael and Xin.
> > 
> > Changes from v8:
> >  - add additional auth gpa and length to struct virtio_crypto_sym_data_req;
> >  - add definition of op in struct virtio_crypto_cipher_session_para,
> >   VIRTIO_CRYPTO_OP_ENCRYPT and VIRTIO_CRYPTO_OP_DECRYPT;
> >  - make all structures 64bit aligned in order to support different
> >   architectures more conveniently [Alex & Stefan]
> >  - change to devicenormative{\subsection} and \drivernormative{\subsection}
> > in some sections [Stefan]
> >  - driver does not have to initialize all data virtqueues if it wants to use fewer
> > [Stefan]
> >  - drop VIRTIO_CRYPTO_NO_SERVICE definition [Stefan]
> >  - many grammatical problems and typos. [Stefan]
> >  - rename VIRTIO_CRYPTO_MAC_CMAC_KASUMI_F9 to
> > VIRTIO_CRYPTO_MAC_CMAC_KASUMI_F9,
> >   and VIRTIO_CRYPTO_MAC_CMAC_SNOW3G_UIA2 to
> > VIRTIO_CRYPTO_MAC_SNOW3G_UIA2. [Liang Ma]
> >  - drop queue_id property of struct virtio_crypto_op_data_req.
> >  - reconstruct some structures about session operation request.
> >  - introduce struct virtio_crypto_alg_chain_session_req and struct
> > virtio_crypto_alg_chain_data_req,
> >   introduce chain para, output, input structures as well.
> >  - change some sections' layout for better compatibility, for asymmetric algos.
> > [Xin Zeng]
> > 
> > Changes from v7:
> >  - fix some grammar or typo problems.
> >  - add more detailed description at steps of encryption section.
> > 
> > Changes from v6:
> >  - drop verion filed in struct virtio_crypto_config. [Michael & Cornelia]
> >  - change the incorrect description in initialization routine. [Zeng Xin]
> >  - redefine flag u16 to make structure alignment. [Zeng Xin]
> >  - move the content of virtio_crypto_hash_session_para into
> >    virtio_crypto_hash_session_input directly, Same to MAC/SYM/AEAD
> > session creation. [Zeng Xin]
> >  - adjuest the sequence of idata and odata refer to the virtio scsi parts,
> >    meanwhile add the comments of device-readable/writable for them.
> >  - add restrictive documents for the guest memory in some structure, which
> >    MUST be gauranted to be allocated and physically-contiguous.
> > 
> > Changes from v5:
> >  - add conformance clauses for virtio crypto device. [Michael]
> >  - drop VIRTIO_CRYPTO_S_STARTED. [Michael]
> >  - fix some characters problems. [Stefan]
> >  - add a MAC algorithm, named VIRTIO_CRYPTO_MAC_ZUC_EIA3. [Zeng Xin]
> >  - add the fourth return code, named VIRTIO_CRYPTO_OP_INVSESS used
> >    for invalid session id when executing crypto operations.
> >  - drop some gpu stuff forgot to delete. [Michael]
> >  - convert tab to space all over the content.
> > 
> > Changes from v4:
> >  - introduce crypto services into virtio crypto device. The services
> >    currently defined are CIPHER, MAC, HASH, AEAD, KDF, ASYM, PRIMITIVE.
> >  - define a unified crypto request format that is consisted of
> >    general header + service specific request,  Where 'general header' is for
> > all
> >    crypto request,  'service specific request' is composed of
> >    operation parameter + input data + output data in generally.
> >    operation parameter is algorithm-specific parameters,
> >    input data is the data should be operated ,
> >    output data is the "operation result + result buffer".
> >  - redefine the algorithms and structure based on above crypto services.
> >  - rearrange the title and subtitle
> >  - Only support CIPHER, MAC, HASH and AEAD crypto services, and Xin will
> >    focus KDF, ASYM and PRIMITIVE services.
> >  - Some other corresponding fixes.
> >  - Make a formal patch using tex type.
> > 
> > This version is a big reconstruction based on Zeng, Xin' comments, thanks a lot.
> > 
> > Changes from v3:
> >  - Don't use enum is the spec but macros in specific structures. [Michael &
> > Stefan]
> >  - Add two complete structures for session creation and closing, so that
> >   the spec is clear on how to lay out the request.  [Stefan]
> >  - Definite the crypto operation request with assigned structure, in this way,
> >   each data request only occupies *one entry* of the Vring descriptor table,
> >   which *improves* the *throughput* of data transferring.
> > 
> > Changes from v2:
> >  - Reserve virtio device ID 20 for crypto device. [Cornelia]
> >  - Drop all feature bits, those capabilities are offered by the device all the time.
> > [Stefan & Cornelia]
> >  - Add a new section 1.4.2 for driver requirements. [Stefan]
> >  - Use definite type definition instead of enum type in some structure. [Stefan]
> >  - Add virtio_crypto_cipher_alg definition. [Stefan]
> >  - Add a "Device requirements" section as using MUST. [Stefan]
> >  - Some grammar nits fixes and typo fixes. [Stefan & Cornelia]
> >  - Add one VIRTIO_CRYPTO_S_STARTED status for the driver as the flag of
> > virtio-crypto device started and can work now.
> > 
> > Great thanks for Stefan and Cornelia!
> > 
> > Changes from v1:
> >  - Drop the feature bit definition for each algorithm, and using config space
> > instead  [Cornelia]
> >  - Add multiqueue support and add corresponding feature bit
> >  - Update Encryption process and header definition
> >  - Add session operation process and add corresponding header description
> >  - Other better description in order to fit for virtio spec  [Michael]
> >  - Some other trivial fixes.
> > 
> > Gonglei (2):
> >   virtio-crypto: Add virtio crypto device specification
> >   virtio-crypto: Add conformance clauses
> > 
> >  conformance.tex   |  30 ++
> >  content.tex       |   2 +
> >  virtio-crypto.tex | 999
> > ++++++++++++++++++++++++++++++++++++++++++++++++++++++
> >  3 files changed, 1031 insertions(+)
> >  create mode 100644 virtio-crypto.tex
> > 
> > --
> > 1.7.12.4
> > 

  reply	other threads:[~2016-10-27 22:14 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-10-10  3:36 [Qemu-devel] [PATCH v12 0/2] virtio-crypto: virtio crypto device specification Gonglei
2016-10-10  3:36 ` [Qemu-devel] [PATCH v12 1/2] virtio-crypto: Add " Gonglei
2016-10-10  3:36 ` [Qemu-devel] [PATCH v12 2/2] virtio-crypto: Add conformance clauses Gonglei
2016-10-24  6:51 ` [Qemu-devel] [PATCH v12 0/2] virtio-crypto: virtio crypto device specification Gonglei (Arei)
2016-10-27 22:13   ` Michael S. Tsirkin [this message]
2016-10-28  1:01     ` [Qemu-devel] [virtio-dev] " Gonglei (Arei)
2016-10-28  1:13       ` Michael S. Tsirkin
2016-10-28  1:16         ` Gonglei (Arei)
2016-11-05  9:15     ` Gonglei (Arei)
2016-11-10 15:15       ` Michael S. Tsirkin
2016-11-11  1:41         ` Gonglei (Arei)

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=20161028011258-mutt-send-email-mst@kernel.org \
    --to=mst@redhat.com \
    --cc=Claudio.Fontana@huawei.com \
    --cc=Jani.Kokkonen@huawei.com \
    --cc=Ola.Liljedahl@arm.com \
    --cc=Shiqing.Fan@huawei.com \
    --cc=Varun.Sethi@freescale.com \
    --cc=agraf@suse.de \
    --cc=arei.gonglei@hotmail.com \
    --cc=arei.gonglei@huawei.com \
    --cc=brian.a.keating@intel.com \
    --cc=cornelia.huck@de.ibm.com \
    --cc=denglingli@chinamobile.com \
    --cc=hanweidong@huawei.com \
    --cc=jianjay.zhou@huawei.com \
    --cc=john.griffin@intel.com \
    --cc=liang.j.ma@intel.com \
    --cc=luonengjun@huawei.com \
    --cc=mike.caraman@nxp.com \
    --cc=nmorey@kalray.eu \
    --cc=peter.huangpeng@huawei.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@redhat.com \
    --cc=vincent.jardin@6wind.com \
    --cc=virtio-dev@lists.oasis-open.org \
    --cc=weidong.huang@huawei.com \
    --cc=wu.wubin@huawei.com \
    --cc=xin.zeng@intel.com \
    /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).