From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by dpdk.org (Postfix) with ESMTP id CCC6423C for ; Tue, 24 Apr 2018 12:05:38 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga007.jf.intel.com ([10.7.209.58]) by orsmga106.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 24 Apr 2018 03:05:36 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.49,322,1520924400"; d="scan'208";a="35721110" Received: from irsmsx104.ger.corp.intel.com ([163.33.3.159]) by orsmga007.jf.intel.com with ESMTP; 24 Apr 2018 03:05:35 -0700 Received: from irsmsx108.ger.corp.intel.com ([169.254.11.155]) by IRSMSX104.ger.corp.intel.com ([169.254.5.171]) with mapi id 14.03.0319.002; Tue, 24 Apr 2018 11:05:35 +0100 From: "De Lara Guarch, Pablo" To: "Daly, Lee" , "dev@dpdk.org" CC: "Tucker, Greg B" , "Jain, Deepak K" , "Trahe, Fiona" Thread-Topic: [PATCH v3 08/11] compress/isal: add ISA-L compression functionality Thread-Index: AQHT1lEM8W7x5QFwI0+M4rsp/iPyI6QPuc/w Date: Tue, 24 Apr 2018 10:05:34 +0000 Message-ID: References: <1523038388-29964-1-git-send-email-lee.daly@intel.com> <1523972132-6894-1-git-send-email-lee.daly@intel.com> <1523972132-6894-9-git-send-email-lee.daly@intel.com> In-Reply-To: <1523972132-6894-9-git-send-email-lee.daly@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiMDI4N2MxZWQtNjlhNC00NTA2LWI3NjUtYWJiMWZkMjg0ZWI1IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE2LjUuOS4zIiwiVHJ1c3RlZExhYmVsSGFzaCI6ImxWZkZ4TXgzR0Rza3U3MUNMNllYQWJJK1RqOEd3UVpWOGlkZ2VKWXdEN0E9In0= x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.0.200.100 dlp-reaction: no-action x-originating-ip: [163.33.239.182] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v3 08/11] compress/isal: add ISA-L compression functionality 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: Tue, 24 Apr 2018 10:05:39 -0000 > -----Original Message----- > From: Daly, Lee > Sent: Tuesday, April 17, 2018 2:35 PM > To: dev@dpdk.org > Cc: De Lara Guarch, Pablo ; Tucker, Greg = B > ; Jain, Deepak K ; Trah= e, > Fiona ; Daly, Lee > Subject: [PATCH v3 08/11] compress/isal: add ISA-L compression functional= ity >=20 > Signed-off-by: Lee Daly > --- > drivers/compress/isal/isal_compress_pmd.c | 108 ... > +/* Stateless Compression Function */ > +static int > +process_isal_deflate(struct rte_comp_op *op, struct isal_comp_qp *qp, > + struct isal_priv_xform *priv_xform) > +{ > + int ret =3D 0; > + op->status =3D RTE_COMP_OP_STATUS_SUCCESS; > + > + /* Required due to init clearing level_buf */ > + uint8_t *temp_level_buf =3D qp->stream->level_buf; > + > + /* Initialize compression stream */ > + isal_deflate_stateless_init(qp->stream); > + > + qp->stream->level_buf =3D temp_level_buf; > + > + qp->stream->flush =3D NO_FLUSH; > + > + /* Set op checksum, none by default */ > + if (priv_xform->compress.chksum =3D=3D RTE_COMP_CHECKSUM_CRC32) > + qp->stream->gzip_flag =3D IGZIP_GZIP; > + else if (priv_xform->compress.chksum =3D=3D > RTE_COMP_CHECKSUM_ADLER32) > + qp->stream->gzip_flag =3D IGZIP_ZLIB; > + > + /* set op level & intermediate level buffer */ > + if (priv_xform->compress.level =3D=3D RTE_COMP_ISAL_LEVEL_ZERO) { > + qp->stream->level =3D ISAL_DEF_MIN_LEVEL; > + qp->stream->level_buf_size =3D ISAL_DEF_LVL0_DEFAULT; > + } else if (priv_xform->compress.level =3D=3D RTE_COMP_ISAL_LEVEL_ONE) { > + qp->stream->level =3D RTE_COMP_ISAL_LEVEL_ONE; > + qp->stream->level_buf_size =3D ISAL_DEF_LVL1_DEFAULT; > + } else if (priv_xform->compress.level =3D=3D RTE_COMP_ISAL_LEVEL_TWO) > { > + qp->stream->level =3D RTE_COMP_ISAL_LEVEL_TWO; > + qp->stream->level_buf_size =3D ISAL_DEF_LVL2_DEFAULT; > + } else { > + qp->stream->level =3D ISAL_DEF_MAX_LEVEL; > + qp->stream->level_buf_size =3D ISAL_DEF_LVL3_DEFAULT; > + } Better to store directly "level", "level_buf_size" and "gzip_flag" in priv_= xform, and setting them when creating it. That way, you save these branches in data path.