[dpdk-dev] [PATCH v3 3/7] cryptodev/virtio: core code of crypto devices

De Lara Guarch, Pablo pablo.de.lara.guarch at intel.com
Fri Mar 30 09:39:12 CEST 2018



> -----Original Message-----
> From: Zhoujian (jay) [mailto:jianjay.zhou at huawei.com]
> Sent: Friday, March 30, 2018 4:03 AM
> To: De Lara Guarch, Pablo <pablo.de.lara.guarch at intel.com>;
> dev at dpdk.org
> Cc: Zhang, Roy Fan <roy.fan.zhang at intel.com>; thomas at monjalon.net;
> Gonglei (Arei) <arei.gonglei at huawei.com>; Zeng, Xin
> <xin.zeng at intel.com>; Huangweidong (C) <weidong.huang at huawei.com>;
> wangxin (U) <wangxinxin.wang at huawei.com>; longpeng
> <longpeng2 at huawei.com>
> Subject: RE: [PATCH v3 3/7] cryptodev/virtio: core code of crypto devices
> 
> 
> 
> > -----Original Message-----
> > From: De Lara Guarch, Pablo [mailto:pablo.de.lara.guarch at intel.com]
> > Sent: Friday, March 30, 2018 6:28 AM
> > To: Zhoujian (jay) <jianjay.zhou at huawei.com>; dev at dpdk.org
> > Cc: Zhang, Roy Fan <roy.fan.zhang at intel.com>; thomas at monjalon.net;
> > Gonglei
> > (Arei) <arei.gonglei at huawei.com>; Zeng, Xin <xin.zeng at intel.com>;
> > Huangweidong (C) <weidong.huang at huawei.com>; wangxin (U)
> > <wangxinxin.wang at huawei.com>; longpeng <longpeng2 at huawei.com>
> > Subject: RE: [PATCH v3 3/7] cryptodev/virtio: core code of crypto
> > devices
> >
> >
> >
> > > -----Original Message-----
> > > From: Jay Zhou [mailto:jianjay.zhou at huawei.com]
> > > Sent: Sunday, March 25, 2018 9:34 AM
> > > To: dev at dpdk.org
> > > Cc: De Lara Guarch, Pablo <pablo.de.lara.guarch at intel.com>; Zhang,
> > > Roy Fan <roy.fan.zhang at intel.com>; thomas at monjalon.net;
> > > arei.gonglei at huawei.com; Zeng, Xin <xin.zeng at intel.com>;
> > > weidong.huang at huawei.com; wangxinxin.wang at huawei.com;
> > > longpeng2 at huawei.com; jianjay.zhou at huawei.com
> > > Subject: [PATCH v3 3/7] cryptodev/virtio: core code of crypto
> > > devices
> >
> > Use crypto/virtio: ...
> 
> Okay.
> 
> >
> >
> > >
> > > The idea comes from QAT and virtio-net devices.
> >
> > Could you elaborate a bit more here? Which idea?
> > Probably better to describe the patch and not compare with other
> devices.
> 
> I'll describe the patch in more details, and it will help to review the code I
> think.
> 
> >
> > >
> > > Signed-off-by: Jay Zhou <jianjay.zhou at huawei.com>
> > > ---
> > >  drivers/crypto/virtio/virtio_crypto_capabilities.h |   51 +
> > >  drivers/crypto/virtio/virtio_cryptodev.c           | 1553
> > > ++++++++++++++++++++
> > >  drivers/crypto/virtio/virtio_cryptodev.h           |   66 +
> > >  drivers/crypto/virtio/virtio_rxtx.c                |  540 +++++++
> > >  4 files changed, 2210 insertions(+)  create mode 100644
> > > drivers/crypto/virtio/virtio_crypto_capabilities.h
> > >  create mode 100644 drivers/crypto/virtio/virtio_cryptodev.c
> > >  create mode 100644 drivers/crypto/virtio/virtio_cryptodev.h
> > >  create mode 100644 drivers/crypto/virtio/virtio_rxtx.c
> >
> > ...
> >
> > > index 0000000..8affbef
> > > --- /dev/null
> > > +++ b/drivers/crypto/virtio/virtio_cryptodev.c
> >
> > ...
> >
> > +
> > > +static int virtio_crypto_sym_pad_cipher_param(
> > > +		struct virtio_crypto_cipher_session_para *para,
> > > +		struct rte_crypto_cipher_xform *cipher_xform) {
> > > +	switch (cipher_xform->algo) {
> > > +	case RTE_CRYPTO_CIPHER_NULL:
> > > +		para->algo = VIRTIO_CRYPTO_NO_CIPHER;
> > > +		break;
> > > +	case RTE_CRYPTO_CIPHER_3DES_CBC:
> > > +		para->algo = VIRTIO_CRYPTO_CIPHER_3DES_CBC;
> > > +		break;
> >
> > Do you support these algorithms? From capabilities, it looks like you
> > only support AES-CBC and SHA1, but from the cover letter, you say that
> > those are the ones that you have tested, which means that this PMD
> > actually supports more?
> 
> Yes, this PMD actually supports more. But for now, it is limited by the
> virtio-crypto vhost-crypto backend which only supports AES-CBC and SHA1,
> so only AES-CBC and SHA1 can be tested, others are not guaranteed.
> I think it's better to remove other cases and algorithms, we can add them
> once the virtio-crypto vhost-user backend supports them.
> What do you think?

Sounds good.

> 
> >
> >
> > > +	case RTE_CRYPTO_CIPHER_3DES_CTR:
> > > +		para->algo = VIRTIO_CRYPTO_CIPHER_3DES_CTR;
> > > +		break;
> >
> > ...
> >
> > > +RTE_PMD_REGISTER_PCI(CRYPTODEV_NAME_VIRTIO_PMD,
> > > rte_virtio_crypto_driver);
> > > +RTE_PMD_REGISTER_CRYPTO_DRIVER(virtio_crypto_drv,
> > > rte_virtio_crypto_driver,
> > > +		cryptodev_virtio_driver_id);
> >
> > RTE_PMD_REGISTER_CRYPTO_DRIVER has changed. Could you rebase
> against
> > dpdk- next-crypto?
> > You need to pass rte_virtio_crypto_driver.driver as a second parameter.
> >
> 
> Will do.
> 
> 
> 
> Regards,
> Jay


More information about the dev mailing list