[dpdk-dev] [PATCH 1/2] compress/qat: fix buffer lengths in offset case

Tomasz Jozwiak tomaszx.jozwiak at intel.com
Thu Aug 2 17:09:25 CEST 2018


Fixed lengths for src and dest buffers

Fixes: 32842f2a6d7d ("compress/qat: create FW request and process response")

Signed-off-by: Tomasz Jozwiak <tomaszx.jozwiak at intel.com>
Acked-by: Fiona Trahe <fiona.trahe at intel.com>
---
 drivers/compress/qat/qat_comp.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/compress/qat/qat_comp.c b/drivers/compress/qat/qat_comp.c
index cbf7614..522edfc 100644
--- a/drivers/compress/qat/qat_comp.c
+++ b/drivers/compress/qat/qat_comp.c
@@ -44,7 +44,8 @@ qat_comp_build_request(void *in_op, uint8_t *out_msg,
 
 	/* common for sgl and flat buffers */
 	comp_req->comp_pars.comp_len = op->src.length;
-	comp_req->comp_pars.out_buffer_sz = rte_pktmbuf_pkt_len(op->m_dst);
+	comp_req->comp_pars.out_buffer_sz = rte_pktmbuf_pkt_len(op->m_dst) -
+			op->dst.offset;
 
 	if (op->m_src->next != NULL || op->m_dst->next != NULL) {
 		/* sgl */
@@ -85,8 +86,9 @@ qat_comp_build_request(void *in_op, uint8_t *out_msg,
 		/* flat aka linear buffer */
 		ICP_QAT_FW_COMN_PTR_TYPE_SET(comp_req->comn_hdr.comn_req_flags,
 				QAT_COMN_PTR_TYPE_FLAT);
-		comp_req->comn_mid.src_length = rte_pktmbuf_data_len(op->m_src);
-		comp_req->comn_mid.dst_length = rte_pktmbuf_data_len(op->m_dst);
+		comp_req->comn_mid.src_length = op->src.length;
+		comp_req->comn_mid.dst_length =
+				comp_req->comp_pars.out_buffer_sz;
 
 		comp_req->comn_mid.src_data_addr =
 		    rte_pktmbuf_mtophys_offset(op->m_src, op->src.offset);
-- 
2.7.4



More information about the dev mailing list