All of lore.kernel.org
 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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.