From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from huawei.com (unknown [45.249.212.255]) by dpdk.org (Postfix) with ESMTP id 085281D3A3; Fri, 15 Jun 2018 06:45:24 +0200 (CEST) Received: from DGGEMM403-HUB.china.huawei.com (unknown [172.30.72.57]) by Forcepoint Email with ESMTP id 3A1B4AD764E16; Fri, 15 Jun 2018 12:45:22 +0800 (CST) Received: from DGGEMM508-MBX.china.huawei.com ([169.254.2.165]) by DGGEMM403-HUB.china.huawei.com ([10.3.20.211]) with mapi id 14.03.0382.000; Fri, 15 Jun 2018 12:45:20 +0800 From: "Zhoujian (jay)" To: Akhil Goyal , Fan Zhang , "dev@dpdk.org" CC: "pablo.de.lara.guarch@intel.com" , "stable@dpdk.org" Thread-Topic: [dpdk-dev] [PATCH] crypto/virtio: fix iv physical address Thread-Index: AQHUA9CUjn2zPX7njk2ctvLNb00YmqRfK46AgAGTGrA= Date: Fri, 15 Jun 2018 04:45:19 +0000 Message-ID: References: <20180614110257.10967-1-roy.fan.zhang@intel.com> <2f19ef2d-d132-7162-d1ef-78871a4b7752@nxp.com> In-Reply-To: <2f19ef2d-d132-7162-d1ef-78871a4b7752@nxp.com> Accept-Language: zh-CN, en-US Content-Language: zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.177.19.14] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-CFilter-Loop: Reflected Subject: Re: [dpdk-dev] [PATCH] crypto/virtio: fix iv physical address X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Jun 2018 04:45:25 -0000 Hi Akhil, > -----Original Message----- > From: Akhil Goyal [mailto:akhil.goyal@nxp.com] > Sent: Thursday, June 14, 2018 8:39 PM > To: Fan Zhang ; dev@dpdk.org > Cc: pablo.de.lara.guarch@intel.com; Zhoujian (jay) ; > stable@dpdk.org > Subject: Re: [dpdk-dev] [PATCH] crypto/virtio: fix iv physical address >=20 > On 6/14/2018 4:32 PM, Fan Zhang wrote: > > The physical address of IV required by Virtio was computed using > > crypto operations' physical address plus the offset. However not all > > crypto ops will have physical address field initialized and compute it > > runtimely is costly. This patch fixes this problem by adding iv field > > in virtio_crypto_op_cookie and does a memcpy of iv instead. > > > > Fixes: 82adb12a1fce ("crypto/virtio: support burst enqueue/dequeue") > > Cc: stable@dpdk.org > > > > Signed-off-by: Fan Zhang > > --- > > drivers/crypto/virtio/virtio_cryptodev.c | 6 ++++++ > > drivers/crypto/virtio/virtio_cryptodev.h | 3 +++ > > drivers/crypto/virtio/virtio_rxtx.c | 8 +++++++- > > 3 files changed, 16 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/crypto/virtio/virtio_cryptodev.c > > b/drivers/crypto/virtio/virtio_cryptodev.c > > index df88953f6..6ffa7619c 100644 > > --- a/drivers/crypto/virtio/virtio_cryptodev.c > > +++ b/drivers/crypto/virtio/virtio_cryptodev.c > > @@ -1223,6 +1223,12 @@ virtio_crypto_sym_pad_op_ctrl_req( > > /* Get cipher xform from crypto xform chain */ > > cipher_xform =3D virtio_crypto_get_cipher_xform(xform); > > if (cipher_xform) { > > + if (cipher_xform->iv.length > VIRTIO_CRYPTO_MAX_IV_SIZE) { > > + VIRTIO_CRYPTO_SESSION_LOG_ERR( > > + "cipher IV cannot longer than %u", > > + VIRTIO_CRYPTO_MAX_IV_SIZE); > > + return -1; > > + } > > if (is_chainned) > > ret =3D virtio_crypto_sym_pad_cipher_param( > > &ctrl->u.sym_create_session.u.chain.para > > diff --git a/drivers/crypto/virtio/virtio_cryptodev.h > > b/drivers/crypto/virtio/virtio_cryptodev.h > > index e402c0309..676e008d9 100644 > > --- a/drivers/crypto/virtio/virtio_cryptodev.h > > +++ b/drivers/crypto/virtio/virtio_cryptodev.h > > @@ -16,6 +16,8 @@ > > > > #define NUM_ENTRY_VIRTIO_CRYPTO_OP 7 > > > > +#define VIRTIO_CRYPTO_MAX_IV_SIZE 32 > > + >=20 > max iv size supported in capability is 16 and here it is 32. Yes, I agree. We could use 16 for now. Regards, Jay >=20