[dpdk-dev] qat: change optimization flag for Intel QuickAssist Technology

Message ID 1462872255-13100-1-git-send-email-arkadiuszx.kusztal@intel.com (mailing list archive)
State Not Applicable, archived
Delegated to: Thomas Monjalon
Headers

Commit Message

Arkadiusz Kusztal May 10, 2016, 9:24 a.m. UTC
  From: Arkadiusz Kusztal <arkadiuszx.kusztal@intel.com>

Changed to -O3 optimization flag in Intel QuickAssist Technology Makefile

Signed-off-by: Arkadiusz Kusztal <arkadiuszx.kusztal@intel.com>
---
 drivers/crypto/qat/Makefile                      | 1 +
 drivers/crypto/qat/qat_adf/qat_algs_build_desc.c | 8 +++++---
 2 files changed, 6 insertions(+), 3 deletions(-)
  

Comments

Thomas Monjalon May 13, 2016, 8:17 a.m. UTC | #1
2016-05-10 10:24, Arek Kusztal:
> From: Arkadiusz Kusztal <arkadiuszx.kusztal@intel.com>
> 
> Changed to -O3 optimization flag in Intel QuickAssist Technology Makefile

There is another change below. Should it be a separate patch?

> --- a/drivers/crypto/qat/qat_adf/qat_algs_build_desc.c
> +++ b/drivers/crypto/qat/qat_adf/qat_algs_build_desc.c
> @@ -616,10 +616,12 @@ int qat_alg_aead_session_create_content_desc_auth(struct qat_session *cdesc,
>  		 * Write (the length of AAD) into bytes 16-19 of state2
>  		 * in big-endian format. This field is 8 bytes
>  		 */
> -		*(uint32_t *)&(hash->sha.state1[
> +		uint32_t *aad_len = (uint32_t *)&hash->sha.state1[
>  					ICP_QAT_HW_GALOIS_128_STATE1_SZ +
> -					ICP_QAT_HW_GALOIS_H_SZ]) =
> -			rte_bswap32(add_auth_data_length);
> +						ICP_QAT_HW_GALOIS_H_SZ];
> +
> +		*aad_len = rte_bswap32(add_auth_data_length);
> +
>  		proto = ICP_QAT_FW_LA_GCM_PROTO;
>  	} else if (cdesc->qat_hash_alg == ICP_QAT_HW_AUTH_ALGO_SNOW_3G_UIA2)  {
>  		proto = ICP_QAT_FW_LA_SNOW_3G_PROTO;
>
  
Deepak Kumar JAIN May 13, 2016, 8:24 a.m. UTC | #2
Hi Thomas,

This change was made to fix the compilation issues arising when optimization flag was changed. Hence its related to same optimization flag patch.
Do you want us to separate the Makefile and .c file change?

Regards,
Deepak

-----Original Message-----
From: Thomas Monjalon [mailto:thomas.monjalon@6wind.com] 
Sent: Friday, May 13, 2016 9:18 AM
To: Kusztal, ArkadiuszX <arkadiuszx.kusztal@intel.com>
Cc: dev@dpdk.org; Trahe, Fiona <fiona.trahe@intel.com>; Griffin, John <john.griffin@intel.com>; Jain, Deepak K <deepak.k.jain@intel.com>
Subject: Re: [dpdk-dev] [PATCH] qat: change optimization flag for Intel QuickAssist Technology

2016-05-10 10:24, Arek Kusztal:
> From: Arkadiusz Kusztal <arkadiuszx.kusztal@intel.com>
> 
> Changed to -O3 optimization flag in Intel QuickAssist Technology Makefile

There is another change below. Should it be a separate patch?

> --- a/drivers/crypto/qat/qat_adf/qat_algs_build_desc.c
> +++ b/drivers/crypto/qat/qat_adf/qat_algs_build_desc.c
> @@ -616,10 +616,12 @@ int qat_alg_aead_session_create_content_desc_auth(struct qat_session *cdesc,
>  		 * Write (the length of AAD) into bytes 16-19 of state2
>  		 * in big-endian format. This field is 8 bytes
>  		 */
> -		*(uint32_t *)&(hash->sha.state1[
> +		uint32_t *aad_len = (uint32_t *)&hash->sha.state1[
>  					ICP_QAT_HW_GALOIS_128_STATE1_SZ +
> -					ICP_QAT_HW_GALOIS_H_SZ]) =
> -			rte_bswap32(add_auth_data_length);
> +						ICP_QAT_HW_GALOIS_H_SZ];
> +
> +		*aad_len = rte_bswap32(add_auth_data_length);
> +
>  		proto = ICP_QAT_FW_LA_GCM_PROTO;
>  	} else if (cdesc->qat_hash_alg == ICP_QAT_HW_AUTH_ALGO_SNOW_3G_UIA2)  {
>  		proto = ICP_QAT_FW_LA_SNOW_3G_PROTO;
>
  
De Lara Guarch, Pablo May 31, 2016, 11:29 a.m. UTC | #3
Hi Deepak/Arek,

> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Jain, Deepak K
> Sent: Friday, May 13, 2016 9:25 AM
> To: Thomas Monjalon; Kusztal, ArkadiuszX
> Cc: dev@dpdk.org; Trahe, Fiona; Griffin, John
> Subject: Re: [dpdk-dev] [PATCH] qat: change optimization flag for Intel
> QuickAssist Technology
> 
> Hi Thomas,
> 
> This change was made to fix the compilation issues arising when optimization
> flag was changed. Hence its related to same optimization flag patch.
> Do you want us to separate the Makefile and .c file change?
> 

I think you need to explain the change in the .c file and separate it to another patch, if it is not related to the Makefile change (and if it is related, consider creating a patchset, maybe).

Thanks,
Pablo

> Regards,
> Deepak
> 
> -----Original Message-----
> From: Thomas Monjalon [mailto:thomas.monjalon@6wind.com]
> Sent: Friday, May 13, 2016 9:18 AM
> To: Kusztal, ArkadiuszX <arkadiuszx.kusztal@intel.com>
> Cc: dev@dpdk.org; Trahe, Fiona <fiona.trahe@intel.com>; Griffin, John
> <john.griffin@intel.com>; Jain, Deepak K <deepak.k.jain@intel.com>
> Subject: Re: [dpdk-dev] [PATCH] qat: change optimization flag for Intel
> QuickAssist Technology
> 
> 2016-05-10 10:24, Arek Kusztal:
> > From: Arkadiusz Kusztal <arkadiuszx.kusztal@intel.com>
> >
> > Changed to -O3 optimization flag in Intel QuickAssist Technology Makefile
> 
> There is another change below. Should it be a separate patch?
> 
> > --- a/drivers/crypto/qat/qat_adf/qat_algs_build_desc.c
> > +++ b/drivers/crypto/qat/qat_adf/qat_algs_build_desc.c
> > @@ -616,10 +616,12 @@ int
> qat_alg_aead_session_create_content_desc_auth(struct qat_session *cdesc,
> >  		 * Write (the length of AAD) into bytes 16-19 of state2
> >  		 * in big-endian format. This field is 8 bytes
> >  		 */
> > -		*(uint32_t *)&(hash->sha.state1[
> > +		uint32_t *aad_len = (uint32_t *)&hash->sha.state1[
> >
> 	ICP_QAT_HW_GALOIS_128_STATE1_SZ +
> > -					ICP_QAT_HW_GALOIS_H_SZ]) =
> > -			rte_bswap32(add_auth_data_length);
> > +						ICP_QAT_HW_GALOIS_H_SZ];
> > +
> > +		*aad_len = rte_bswap32(add_auth_data_length);
> > +
> >  		proto = ICP_QAT_FW_LA_GCM_PROTO;
> >  	} else if (cdesc->qat_hash_alg ==
> ICP_QAT_HW_AUTH_ALGO_SNOW_3G_UIA2)  {
> >  		proto = ICP_QAT_FW_LA_SNOW_3G_PROTO;
> >
>
  
Thomas Monjalon June 7, 2016, 2:56 p.m. UTC | #4
2016-05-31 11:29, De Lara Guarch, Pablo:
> Hi Deepak/Arek,
> 
> > Hi Thomas,
> > 
> > This change was made to fix the compilation issues arising when optimization
> > flag was changed. Hence its related to same optimization flag patch.
> > Do you want us to separate the Makefile and .c file change?
> 
> I think you need to explain the change in the .c file and separate it to another patch, if it is not related to the Makefile change (and if it is related, consider creating a patchset, maybe).

Yes, or at least, explain the change in the commit message.
Thanks
  

Patch

diff --git a/drivers/crypto/qat/Makefile b/drivers/crypto/qat/Makefile
index 258c2d5..ee72a61 100644
--- a/drivers/crypto/qat/Makefile
+++ b/drivers/crypto/qat/Makefile
@@ -38,6 +38,7 @@  LIBABIVER := 1
 
 # build flags
 CFLAGS += $(WERROR_FLAGS)
+CFLAGS += -O3
 
 # external library include paths
 CFLAGS += -I$(SRCDIR)/qat_adf
diff --git a/drivers/crypto/qat/qat_adf/qat_algs_build_desc.c b/drivers/crypto/qat/qat_adf/qat_algs_build_desc.c
index bcccdf4..a5210d2 100644
--- a/drivers/crypto/qat/qat_adf/qat_algs_build_desc.c
+++ b/drivers/crypto/qat/qat_adf/qat_algs_build_desc.c
@@ -616,10 +616,12 @@  int qat_alg_aead_session_create_content_desc_auth(struct qat_session *cdesc,
 		 * Write (the length of AAD) into bytes 16-19 of state2
 		 * in big-endian format. This field is 8 bytes
 		 */
-		*(uint32_t *)&(hash->sha.state1[
+		uint32_t *aad_len = (uint32_t *)&hash->sha.state1[
 					ICP_QAT_HW_GALOIS_128_STATE1_SZ +
-					ICP_QAT_HW_GALOIS_H_SZ]) =
-			rte_bswap32(add_auth_data_length);
+						ICP_QAT_HW_GALOIS_H_SZ];
+
+		*aad_len = rte_bswap32(add_auth_data_length);
+
 		proto = ICP_QAT_FW_LA_GCM_PROTO;
 	} else if (cdesc->qat_hash_alg == ICP_QAT_HW_AUTH_ALGO_SNOW_3G_UIA2)  {
 		proto = ICP_QAT_FW_LA_SNOW_3G_PROTO;