All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v8 0/2] virtio-crypto: virtio crypto device specification
@ 2016-08-30 12:12 Gonglei
  2016-08-30 12:12 ` [Qemu-devel] [PATCH v8 1/2] virtio-crypto: Add " Gonglei
  2016-08-30 12:12 ` [Qemu-devel] [PATCH v8 2/2] virtio-crypto: Add conformance clauses Gonglei
  0 siblings, 2 replies; 21+ messages in thread
From: Gonglei @ 2016-08-30 12:12 UTC (permalink / raw)
  To: qemu-devel, virtio-dev
  Cc: peter.huangpeng, luonengjun, mst, cornelia.huck, stefanha,
	denglingli, Jani.Kokkonen, Ola.Liljedahl, Varun.Sethi, xin.zeng,
	brian.a.keating, liang.j.ma, john.griffin, hanweidong,
	weidong.huang, mike.caraman, agraf, claudio.fontana, Gonglei

This is the specification about a new virtio crypto device.

If you have any comments, please let me know, 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 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   |  31 ++
 content.tex       |   2 +
 virtio-crypto.tex | 835 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 868 insertions(+)
 create mode 100644 virtio-crypto.tex

-- 
1.7.12.4

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2016-09-05  8:54 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-30 12:12 [Qemu-devel] [PATCH v8 0/2] virtio-crypto: virtio crypto device specification Gonglei
2016-08-30 12:12 ` [Qemu-devel] [PATCH v8 1/2] virtio-crypto: Add " Gonglei
2016-09-01 13:37   ` Alexander Graf
2016-09-02  3:08     ` Gonglei (Arei)
2016-09-02  8:06       ` Alexander Graf
2016-09-02 10:26         ` Gonglei (Arei)
2016-09-02 12:16           ` Ola Liljedahl
2016-09-02 14:05             ` Alexander Graf
2016-09-03  3:18               ` Gonglei (Arei)
2016-09-05  7:37                 ` Alexander Graf
2016-09-05  8:14                   ` Gonglei (Arei)
2016-09-04 15:47               ` Ola Liljedahl
2016-09-05  7:40                 ` Alexander Graf
2016-09-05  8:53                   ` Ola Liljedahl
2016-09-02 13:52           ` Alexander Graf
2016-09-03  2:51             ` Gonglei (Arei)
2016-09-02 12:06   ` Stefan Hajnoczi
2016-09-03  3:44     ` Gonglei (Arei)
2016-09-02 13:47   ` Ma, Liang J
2016-09-03  2:53     ` Gonglei (Arei)
2016-08-30 12:12 ` [Qemu-devel] [PATCH v8 2/2] virtio-crypto: Add conformance clauses Gonglei

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.