<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);" class="elementToProof">
Hey Patrick,</div>
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);" class="elementToProof">
Were you able to fix the issue with the traffic generator? Is there documentation on what steps need to be done to request a rerun?</div>
<div id="Signature">
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
Thanks<br>
Sameer Vaze</div>
</div>
<div id="appendonsend"></div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> Patrick Robb <probb@iol.unh.edu><br>
<b>Sent:</b> Wednesday, September 24, 2025 2:24 PM<br>
<b>To:</b> Sameer Vaze <svaze@qti.qualcomm.com><br>
<b>Cc:</b> Fan Zhang <fanzhang.oss@gmail.com>; Ashish Gupta <ashishg@marvell.com>; dev@dpdk.org <dev@dpdk.org><br>
<b>Subject:</b> Re: [PATCH 1/3] compressdev: support for dictionaries and PDCP checksum</font>
<div> </div>
</div>
<div>
<p style="text-align:center"><span style="background-color:#ffff00; font-size:14px; font-family:sans-serif; color:#000000"><strong>WARNING:</strong> This email originated from outside of Qualcomm. Please be wary of any links or attachments, and do not enable
macros.</span></p>
<div>
<div dir="ltr">The CI testing failure for this series is due to an issue with the traffic generator that is unrelated to the patch. I will resolve it tomorrow and do a test rerun.</div>
<br>
<div class="x_gmail_quote x_gmail_quote_container">
<div dir="ltr" class="x_gmail_attr">On Wed, Sep 24, 2025 at 12:19 PM Sameer Vaze <<a href="mailto:svaze@qti.qualcomm.com">svaze@qti.qualcomm.com</a>> wrote:<br>
</div>
<blockquote class="x_gmail_quote" style="margin:0px 0px 0px 0.8ex; border-left:1px solid rgb(204,204,204); padding-left:1ex">
Adds definitions for PDCP checksums and apis to pass in<br>
dictionaries<br>
<br>
Signed-off-by: Sameer Vaze <<a href="mailto:svaze@qti.qualcomm.com" target="_blank">svaze@qti.qualcomm.com</a>><br>
---<br>
lib/compressdev/rte_comp.h | 31 +++++++++++++++++++++++++++++++<br>
1 file changed, 31 insertions(+)<br>
<br>
diff --git a/lib/compressdev/rte_comp.h b/lib/compressdev/rte_comp.h<br>
index 96d9b276dd..169d3d960e 100644<br>
--- a/lib/compressdev/rte_comp.h<br>
+++ b/lib/compressdev/rte_comp.h<br>
@@ -101,6 +101,10 @@ enum rte_comp_op_status {<br>
* is not an error case. Output data up to op.produced can be used and<br>
* next op in the stream should continue on from op.consumed+1.<br>
*/<br>
+ RTE_COMP_OP_STATUS_CHECK_SUM_VALIDATION_FAILED,<br>
+ /**< Checksum validation failed. Either calculated does checksum not match<br>
+ * the one provided or there was an error calculating the checksum<br>
+ */<br>
};<br>
<br>
/** Compression Algorithms */<br>
@@ -166,6 +170,10 @@ enum rte_comp_checksum_type {<br>
/**< Generates a xxHash-32 checksum, as used by LZ4.<br>
* <a href="https://github.com/Cyan4973/xxHash/blob/dev/doc/xxhash_spec.md" rel="noreferrer" target="_blank">
https://github.com/Cyan4973/xxHash/blob/dev/doc/xxhash_spec.md</a><br>
*/<br>
+ RTE_COMP_CHECKSUM_3GPP_PDCP_UDC,<br>
+ /**< Generates checksum as defined under Uplink Data Compression<br>
+ * checksum as defined in the 3GPP PDCP specification<br>
+ */<br>
};<br>
<br>
/** Compression Huffman Type - used by DEFLATE algorithm */<br>
@@ -201,6 +209,11 @@ enum rte_comp_flush_flag {<br>
*/<br>
};<br>
<br>
+#define DEFLATE_MAX_WINDOW_SIZE (1ULL << 15)<br>
+<br>
+#define DEFLATE_MIN_WINDOW_SIZE (1ULL << 8)<br>
+<br>
+<br>
/** Compression transform types */<br>
enum rte_comp_xform_type {<br>
RTE_COMP_COMPRESS,<br>
@@ -305,6 +318,15 @@ struct rte_comp_compress_xform {<br>
/**< Hash algorithm to be used with compress operation. Hash is always<br>
* done on plaintext.<br>
*/<br>
+ uint8_t *dictionary;<br>
+ /**<<br>
+ * Pointer to memory containing dictionary to be used for inflate<br>
+ * and deflate operations<br>
+ */<br>
+ uint16_t dictionary_len;<br>
+ /**<<br>
+ * Length of dictionary to be used<br>
+ */<br>
};<br>
<br>
/**<br>
@@ -328,6 +350,15 @@ struct rte_comp_decompress_xform {<br>
/**< Hash algorithm to be used with decompress operation. Hash is always<br>
* done on plaintext.<br>
*/<br>
+ uint8_t *dictionary;<br>
+ /**<<br>
+ * Pointer to memory containing dictionary to be used for inflate<br>
+ * and deflate operations<br>
+ */<br>
+ uint16_t dictionary_len;<br>
+ /**<<br>
+ * Length of dictionary to be used<br>
+ */<br>
};<br>
<br>
/**<br>
-- <br>
2.31.1<br>
<br>
</blockquote>
</div>
</div>
</div>
</body>
</html>