Test-Label: iol-testing Test-Status: WARNING http://dpdk.org/patch/108181 _apply patch failure_ Submitter: Pablo de Lara Date: Wednesday, February 23 2022 16:01:16 Applied on: CommitID:ee05a93e1e6633d0fdec409faf09f12a2e05b991 Apply patch set 108181-108184 failed: Checking patch drivers/crypto/ipsec_mb/pmd_aesni_mb.c... Hunk #1 succeeded at 918 (offset -12 lines). Hunk #2 succeeded at 929 (offset -12 lines). Hunk #3 succeeded at 937 (offset -12 lines). Hunk #4 succeeded at 1101 (offset -12 lines). Hunk #5 succeeded at 1213 (offset -12 lines). Hunk #6 succeeded at 1271 (offset -12 lines). Hunk #7 succeeded at 1280 (offset -12 lines). error: while searching for: break; case IMB_AUTH_CHACHA20_POLY1305: job->cipher_start_src_offset_in_bytes = op->sym->aead.data.offset; job->hash_start_src_offset_in_bytes = op->sym->aead.data.offset; job->msg_len_to_cipher_in_bytes = op->sym->aead.data.length; job->msg_len_to_hash_in_bytes = op->sym->aead.data.length; job->iv = rte_crypto_op_ctod_offset(op, uint8_t *, session->iv.offset); break; default: /* For SNOW3G, length and offsets are already in bits */ job->cipher_start_src_offset_in_bytes = op->sym->cipher.data.offset; job->msg_len_to_cipher_in_bytes = op->sym->cipher.data.length; job->hash_start_src_offset_in_bytes = auth_start_offset(op, session, oop); job->msg_len_to_hash_in_bytes = op->sym->auth.data.length; job->iv = rte_crypto_op_ctod_offset(op, uint8_t *, session->iv.offset); } if (job->cipher_mode == IMB_CIPHER_NULL && oop) { memcpy(job->dst + job->cipher_start_src_offset_in_bytes, job->src + job->cipher_start_src_offset_in_bytes, job->msg_len_to_cipher_in_bytes); } if (job->cipher_mode == IMB_CIPHER_ZUC_EEA3) job->msg_len_to_cipher_in_bytes >>= 3; else if (job->hash_alg == IMB_AUTH_KASUMI_UIA1) job->msg_len_to_hash_in_bytes >>= 3; /* Set user data to be crypto operation data struct */ job->user_data = op; error: patch failed: drivers/crypto/ipsec_mb/pmd_aesni_mb.c:1310 Applying patch drivers/crypto/ipsec_mb/pmd_aesni_mb.c with 1 reject... Hunk #1 applied cleanly. Hunk #2 applied cleanly. Hunk #3 applied cleanly. Hunk #4 applied cleanly. Hunk #5 applied cleanly. Hunk #6 applied cleanly. Hunk #7 applied cleanly. Rejected hunk #8. diff a/drivers/crypto/ipsec_mb/pmd_aesni_mb.c b/drivers/crypto/ipsec_mb/pmd_aesni_mb.c (rejected hunks) @@ -1310,43 +1306,97 @@ set_mb_job_params(IMB_JOB *job, struct ipsec_mb_qp *qp, break; case IMB_AUTH_CHACHA20_POLY1305: - job->cipher_start_src_offset_in_bytes = - op->sym->aead.data.offset; job->hash_start_src_offset_in_bytes = op->sym->aead.data.offset; - job->msg_len_to_cipher_in_bytes = - op->sym->aead.data.length; job->msg_len_to_hash_in_bytes = op->sym->aead.data.length; job->iv = rte_crypto_op_ctod_offset(op, uint8_t *, session->iv.offset); break; - default: - /* For SNOW3G, length and offsets are already in bits */ - job->cipher_start_src_offset_in_bytes = - op->sym->cipher.data.offset; - job->msg_len_to_cipher_in_bytes = op->sym->cipher.data.length; + /* ZUC and SNOW3G require length in bits and offset in bytes */ + case IMB_AUTH_ZUC_EIA3_BITLEN: + case IMB_AUTH_ZUC256_EIA3_BITLEN: + case IMB_AUTH_SNOW3G_UIA2_BITLEN: + auth_off_in_bytes = op->sym->auth.data.offset >> 3; + ciph_off_in_bytes = op->sym->cipher.data.offset >> 3; + auth_len_in_bytes = op->sym->auth.data.length >> 3; + ciph_len_in_bytes = op->sym->cipher.data.length >> 3; + + job->hash_start_src_offset_in_bytes = auth_start_offset(op, + session, oop, auth_off_in_bytes, + ciph_off_in_bytes, auth_len_in_bytes, + ciph_len_in_bytes); + job->msg_len_to_hash_in_bits = op->sym->auth.data.length; + + job->iv = rte_crypto_op_ctod_offset(op, uint8_t *, + session->iv.offset); + break; + + /* KASUMI requires lengths and offset in bytes */ + case IMB_AUTH_KASUMI_UIA1: + auth_off_in_bytes = op->sym->auth.data.offset >> 3; + ciph_off_in_bytes = op->sym->cipher.data.offset >> 3; + auth_len_in_bytes = op->sym->auth.data.length >> 3; + ciph_len_in_bytes = op->sym->cipher.data.length >> 3; job->hash_start_src_offset_in_bytes = auth_start_offset(op, - session, oop); + session, oop, auth_off_in_bytes, + ciph_off_in_bytes, auth_len_in_bytes, + ciph_len_in_bytes); + job->msg_len_to_hash_in_bytes = auth_len_in_bytes; + + job->iv = rte_crypto_op_ctod_offset(op, uint8_t *, + session->iv.offset); + break; + + default: + job->hash_start_src_offset_in_bytes = auth_start_offset(op, + session, oop, op->sym->auth.data.offset, + op->sym->cipher.data.offset, + op->sym->auth.data.length, + op->sym->cipher.data.length); job->msg_len_to_hash_in_bytes = op->sym->auth.data.length; job->iv = rte_crypto_op_ctod_offset(op, uint8_t *, session->iv.offset); } + switch (job->cipher_mode) { + /* ZUC requires length and offset in bytes */ + case IMB_CIPHER_ZUC_EEA3: + job->cipher_start_src_offset_in_bytes = + op->sym->cipher.data.offset >> 3; + job->msg_len_to_cipher_in_bytes = + op->sym->cipher.data.length >> 3; + break; + /* ZUC and SNOW3G require length and offset in bits */ + case IMB_CIPHER_SNOW3G_UEA2_BITLEN: + case IMB_CIPHER_KASUMI_UEA1_BITLEN: + job->cipher_start_src_offset_in_bits = + op->sym->cipher.data.offset; + job->msg_len_to_cipher_in_bits = + op->sym->cipher.data.length; + break; + case IMB_CIPHER_CCM: + case IMB_CIPHER_GCM: + case IMB_CIPHER_CHACHA20_POLY1305: + job->cipher_start_src_offset_in_bytes = + op->sym->aead.data.offset; + job->msg_len_to_cipher_in_bytes = op->sym->aead.data.length; + break; + default: + job->cipher_start_src_offset_in_bytes = + op->sym->cipher.data.offset; + job->msg_len_to_cipher_in_bytes = op->sym->cipher.data.length; + } + if (job->cipher_mode == IMB_CIPHER_NULL && oop) { memcpy(job->dst + job->cipher_start_src_offset_in_bytes, job->src + job->cipher_start_src_offset_in_bytes, job->msg_len_to_cipher_in_bytes); } - if (job->cipher_mode == IMB_CIPHER_ZUC_EEA3) - job->msg_len_to_cipher_in_bytes >>= 3; - else if (job->hash_alg == IMB_AUTH_KASUMI_UIA1) - job->msg_len_to_hash_in_bytes >>= 3; - /* Set user data to be crypto operation data struct */ job->user_data = op; https://lab.dpdk.org/results/dashboard/patchsets/21229/ UNH-IOL DPDK Community Lab