Test-Label: iol-testing Test-Status: WARNING http://dpdk.org/patch/103490 _apply patch failure_ Submitter: Kai Ji Date: Tuesday, November 02 2021 13:49:13 Applied on: CommitID:b2be63b55ab086c52c082d5c0b2b01fffbc48326 Apply patch set 103490-103496 failed: Checking patch drivers/common/qat/qat_qp.c... error: while searching for: return data & modulo_mask; } uint16_t qat_enqueue_op_burst(void *qp, void **ops, uint16_t nb_ops) { error: patch failed: drivers/common/qat/qat_qp.c:549 Checking patch drivers/common/qat/qat_qp.h... Hunk #1 succeeded at 78 (offset 42 lines). Hunk #2 succeeded at 131 (offset 42 lines). error: while searching for: const char *service_str; }; uint16_t qat_enqueue_op_burst(void *qp, void **ops, uint16_t nb_ops); error: patch failed: drivers/common/qat/qat_qp.h:77 Checking patch drivers/crypto/qat/qat_asym.c... Checking patch drivers/crypto/qat/qat_asym.h... Checking patch drivers/crypto/qat/qat_sym.c... Checking patch drivers/crypto/qat/qat_sym.h... Checking patch drivers/crypto/qat/qat_sym_session.h... Applying patch drivers/common/qat/qat_qp.c with 1 reject... Rejected hunk #1. Applying patch drivers/common/qat/qat_qp.h with 1 reject... Hunk #1 applied cleanly. Hunk #2 applied cleanly. Rejected hunk #3. Applied patch drivers/crypto/qat/qat_asym.c cleanly. Applied patch drivers/crypto/qat/qat_asym.h cleanly. Applied patch drivers/crypto/qat/qat_sym.c cleanly. Applied patch drivers/crypto/qat/qat_sym.h cleanly. Applied patch drivers/crypto/qat/qat_sym_session.h cleanly. diff a/drivers/common/qat/qat_qp.c b/drivers/common/qat/qat_qp.c (rejected hunks) @@ -549,6 +549,22 @@ adf_modulo(uint32_t data, uint32_t modulo_mask) return data & modulo_mask; } +uint16_t +refactor_qat_enqueue_op_burst(__rte_unused void *qp, + __rte_unused qat_op_build_request_t op_build_request, + __rte_unused void **ops, __rte_unused uint16_t nb_ops) +{ + return 0; +} + +uint16_t +refactor_qat_dequeue_op_burst(__rte_unused void *qp, __rte_unused void **ops, + __rte_unused qat_op_dequeue_t qat_dequeue_process_response, + __rte_unused uint16_t nb_ops) +{ + return 0; +} + uint16_t qat_enqueue_op_burst(void *qp, void **ops, uint16_t nb_ops) { diff a/drivers/common/qat/qat_qp.h b/drivers/common/qat/qat_qp.h (rejected hunks) @@ -77,6 +123,14 @@ struct qat_qp_config { const char *service_str; }; +uint16_t +refactor_qat_enqueue_op_burst(void *qp, qat_op_build_request_t op_build_request, + void **ops, uint16_t nb_ops); + +uint16_t +refactor_qat_dequeue_op_burst(void *qp, void **ops, + qat_op_dequeue_t qat_dequeue_process_response, uint16_t nb_ops); + uint16_t qat_enqueue_op_burst(void *qp, void **ops, uint16_t nb_ops); Checking patch drivers/crypto/qat/dev/qat_crypto_pmd_gens.h... error: drivers/crypto/qat/dev/qat_crypto_pmd_gens.h: does not exist in index Checking patch drivers/crypto/qat/dev/qat_sym_pmd_gen1.c... error: drivers/crypto/qat/dev/qat_sym_pmd_gen1.c: does not exist in index Checking patch drivers/crypto/qat/qat_sym.h... error: drivers/crypto/qat/qat_sym.h: does not match index Checking patch drivers/crypto/qat/qat_sym_hw_dp.c... Checking patch drivers/crypto/qat/qat_sym_refactor.c... Checking patch drivers/crypto/qat/qat_sym_refactor.h... Applied patch drivers/crypto/qat/qat_sym_hw_dp.c cleanly. Applied patch drivers/crypto/qat/qat_sym_refactor.c cleanly. Applied patch drivers/crypto/qat/qat_sym_refactor.h cleanly. Checking patch drivers/crypto/qat/dev/qat_asym_pmd_gen1.c... error: drivers/crypto/qat/dev/qat_asym_pmd_gen1.c: does not exist in index Checking patch drivers/crypto/qat/qat_asym_refactor.c... Checking patch drivers/crypto/qat/qat_asym_refactor.h... Applied patch drivers/crypto/qat/qat_asym_refactor.c cleanly. Applied patch drivers/crypto/qat/qat_asym_refactor.h cleanly. Checking patch drivers/crypto/qat/dev/qat_crypto_pmd_gen2.c... error: drivers/crypto/qat/dev/qat_crypto_pmd_gen2.c: does not exist in index Checking patch drivers/crypto/qat/dev/qat_crypto_pmd_gen3.c... error: drivers/crypto/qat/dev/qat_crypto_pmd_gen3.c: does not exist in index Checking patch drivers/crypto/qat/dev/qat_crypto_pmd_gen4.c... error: drivers/crypto/qat/dev/qat_crypto_pmd_gen4.c: does not exist in index Checking patch drivers/crypto/qat/dev/qat_sym_pmd_gen1.c... error: drivers/crypto/qat/dev/qat_sym_pmd_gen1.c: does not exist in index Checking patch drivers/crypto/qat/qat_crypto.c... error: drivers/crypto/qat/qat_crypto.c: does not exist in index Checking patch drivers/crypto/qat/qat_crypto.h... error: drivers/crypto/qat/qat_crypto.h: does not exist in index Checking patch drivers/crypto/qat/qat_sym.c... error: drivers/crypto/qat/qat_sym.c: does not match index Checking patch drivers/crypto/qat/qat_sym_session.c... error: while searching for: return 0; } static void qat_sym_session_set_ext_hash_flags(struct qat_sym_session *session, uint8_t hash_flag) { struct icp_qat_fw_comn_req_hdr *header = &session->fw_req.comn_hdr; struct icp_qat_fw_cipher_auth_cd_ctrl_hdr *cd_ctrl = (struct icp_qat_fw_cipher_auth_cd_ctrl_hdr *) session->fw_req.cd_ctrl.content_desc_ctrl_lw; /* Set the Use Extended Protocol Flags bit in LW 1 */ QAT_FIELD_SET(header->comn_req_flags, QAT_COMN_EXT_FLAGS_USED, QAT_COMN_EXT_FLAGS_BITPOS, QAT_COMN_EXT_FLAGS_MASK); /* Set Hash Flags in LW 28 */ cd_ctrl->hash_flags |= hash_flag; /* Set proto flags in LW 1 */ switch (session->qat_cipher_alg) { case ICP_QAT_HW_CIPHER_ALGO_SNOW_3G_UEA2: ICP_QAT_FW_LA_PROTO_SET(header->serv_specif_flags, ICP_QAT_FW_LA_SNOW_3G_PROTO); ICP_QAT_FW_LA_ZUC_3G_PROTO_FLAG_SET( header->serv_specif_flags, 0); break; case ICP_QAT_HW_CIPHER_ALGO_ZUC_3G_128_EEA3: ICP_QAT_FW_LA_PROTO_SET(header->serv_specif_flags, ICP_QAT_FW_LA_NO_PROTO); ICP_QAT_FW_LA_ZUC_3G_PROTO_FLAG_SET( header->serv_specif_flags, ICP_QAT_FW_LA_ZUC_3G_PROTO); break; default: ICP_QAT_FW_LA_PROTO_SET(header->serv_specif_flags, ICP_QAT_FW_LA_NO_PROTO); ICP_QAT_FW_LA_ZUC_3G_PROTO_FLAG_SET( header->serv_specif_flags, 0); break; } } static void qat_sym_session_handle_mixed(const struct rte_cryptodev *dev, struct qat_sym_session *session) { const struct qat_cryptodev_private *qat_private = dev->data->dev_private; enum qat_device_gen min_dev_gen = (qat_private->internal_capabilities & QAT_SYM_CAP_MIXED_CRYPTO) ? QAT_GEN2 : QAT_GEN3; if (session->qat_hash_alg == ICP_QAT_HW_AUTH_ALGO_ZUC_3G_128_EIA3 && session->qat_cipher_alg != ICP_QAT_HW_CIPHER_ALGO_ZUC_3G_128_EEA3) { session->min_qat_dev_gen = min_dev_gen; qat_sym_session_set_ext_hash_flags(session, 1 << ICP_QAT_FW_AUTH_HDR_FLAG_ZUC_EIA3_BITPOS); } else if (session->qat_hash_alg == ICP_QAT_HW_AUTH_ALGO_SNOW_3G_UIA2 && session->qat_cipher_alg != ICP_QAT_HW_CIPHER_ALGO_SNOW_3G_UEA2) { session->min_qat_dev_gen = min_dev_gen; qat_sym_session_set_ext_hash_flags(session, 1 << ICP_QAT_FW_AUTH_HDR_FLAG_SNOW3G_UIA2_BITPOS); } else if ((session->aes_cmac || session->qat_hash_alg == ICP_QAT_HW_AUTH_ALGO_NULL) && (session->qat_cipher_alg == ICP_QAT_HW_CIPHER_ALGO_SNOW_3G_UEA2 || session->qat_cipher_alg == ICP_QAT_HW_CIPHER_ALGO_ZUC_3G_128_EEA3)) { session->min_qat_dev_gen = min_dev_gen; qat_sym_session_set_ext_hash_flags(session, 0); } } int qat_sym_session_set_parameters(struct rte_cryptodev *dev, struct rte_crypto_sym_xform *xform, void *session_private) error: patch failed: drivers/crypto/qat/qat_sym_session.c:486 Hunk #2 succeeded at 568 (offset 73 lines). Hunk #3 succeeded at 582 (offset 73 lines). Hunk #4 succeeded at 623 (offset 73 lines). Hunk #5 succeeded at 640 (offset 73 lines). Hunk #6 succeeded at 660 (offset 73 lines). Hunk #7 succeeded at 671 (offset 73 lines). Hunk #8 succeeded at 1197 (offset 73 lines). Hunk #9 succeeded at 1647 (offset 73 lines). Hunk #10 succeeded at 1994 (offset 73 lines). Hunk #11 succeeded at 2254 (offset 73 lines). Hunk #12 succeeded at 2278 (offset 73 lines). Hunk #13 succeeded at 2304 (offset 73 lines). Checking patch drivers/crypto/qat/qat_sym_session.h... error: drivers/crypto/qat/qat_sym_session.h: does not match index Applying patch drivers/crypto/qat/qat_sym_session.c with 1 reject... Rejected hunk #1. Hunk #2 applied cleanly. Hunk #3 applied cleanly. Hunk #4 applied cleanly. Hunk #5 applied cleanly. Hunk #6 applied cleanly. Hunk #7 applied cleanly. Hunk #8 applied cleanly. Hunk #9 applied cleanly. Hunk #10 applied cleanly. Hunk #11 applied cleanly. Hunk #12 applied cleanly. Hunk #13 applied cleanly. diff a/drivers/crypto/qat/qat_sym_session.c b/drivers/crypto/qat/qat_sym_session.c (rejected hunks) @@ -486,80 +486,6 @@ qat_sym_session_configure(struct rte_cryptodev *dev, return 0; } -static void -qat_sym_session_set_ext_hash_flags(struct qat_sym_session *session, - uint8_t hash_flag) -{ - struct icp_qat_fw_comn_req_hdr *header = &session->fw_req.comn_hdr; - struct icp_qat_fw_cipher_auth_cd_ctrl_hdr *cd_ctrl = - (struct icp_qat_fw_cipher_auth_cd_ctrl_hdr *) - session->fw_req.cd_ctrl.content_desc_ctrl_lw; - - /* Set the Use Extended Protocol Flags bit in LW 1 */ - QAT_FIELD_SET(header->comn_req_flags, - QAT_COMN_EXT_FLAGS_USED, - QAT_COMN_EXT_FLAGS_BITPOS, - QAT_COMN_EXT_FLAGS_MASK); - - /* Set Hash Flags in LW 28 */ - cd_ctrl->hash_flags |= hash_flag; - - /* Set proto flags in LW 1 */ - switch (session->qat_cipher_alg) { - case ICP_QAT_HW_CIPHER_ALGO_SNOW_3G_UEA2: - ICP_QAT_FW_LA_PROTO_SET(header->serv_specif_flags, - ICP_QAT_FW_LA_SNOW_3G_PROTO); - ICP_QAT_FW_LA_ZUC_3G_PROTO_FLAG_SET( - header->serv_specif_flags, 0); - break; - case ICP_QAT_HW_CIPHER_ALGO_ZUC_3G_128_EEA3: - ICP_QAT_FW_LA_PROTO_SET(header->serv_specif_flags, - ICP_QAT_FW_LA_NO_PROTO); - ICP_QAT_FW_LA_ZUC_3G_PROTO_FLAG_SET( - header->serv_specif_flags, - ICP_QAT_FW_LA_ZUC_3G_PROTO); - break; - default: - ICP_QAT_FW_LA_PROTO_SET(header->serv_specif_flags, - ICP_QAT_FW_LA_NO_PROTO); - ICP_QAT_FW_LA_ZUC_3G_PROTO_FLAG_SET( - header->serv_specif_flags, 0); - break; - } -} - -static void -qat_sym_session_handle_mixed(const struct rte_cryptodev *dev, - struct qat_sym_session *session) -{ - const struct qat_cryptodev_private *qat_private = - dev->data->dev_private; - enum qat_device_gen min_dev_gen = (qat_private->internal_capabilities & - QAT_SYM_CAP_MIXED_CRYPTO) ? QAT_GEN2 : QAT_GEN3; - - if (session->qat_hash_alg == ICP_QAT_HW_AUTH_ALGO_ZUC_3G_128_EIA3 && - session->qat_cipher_alg != - ICP_QAT_HW_CIPHER_ALGO_ZUC_3G_128_EEA3) { - session->min_qat_dev_gen = min_dev_gen; - qat_sym_session_set_ext_hash_flags(session, - 1 << ICP_QAT_FW_AUTH_HDR_FLAG_ZUC_EIA3_BITPOS); - } else if (session->qat_hash_alg == ICP_QAT_HW_AUTH_ALGO_SNOW_3G_UIA2 && - session->qat_cipher_alg != - ICP_QAT_HW_CIPHER_ALGO_SNOW_3G_UEA2) { - session->min_qat_dev_gen = min_dev_gen; - qat_sym_session_set_ext_hash_flags(session, - 1 << ICP_QAT_FW_AUTH_HDR_FLAG_SNOW3G_UIA2_BITPOS); - } else if ((session->aes_cmac || - session->qat_hash_alg == ICP_QAT_HW_AUTH_ALGO_NULL) && - (session->qat_cipher_alg == - ICP_QAT_HW_CIPHER_ALGO_SNOW_3G_UEA2 || - session->qat_cipher_alg == - ICP_QAT_HW_CIPHER_ALGO_ZUC_3G_128_EEA3)) { - session->min_qat_dev_gen = min_dev_gen; - qat_sym_session_set_ext_hash_flags(session, 0); - } -} - int qat_sym_session_set_parameters(struct rte_cryptodev *dev, struct rte_crypto_sym_xform *xform, void *session_private) Checking patch drivers/common/qat/meson.build... error: while searching for: endif if qat_crypto foreach f: ['qat_sym_pmd.c', 'qat_sym.c', 'qat_sym_session.c', 'qat_sym_hw_dp.c', 'qat_asym_pmd.c', 'qat_asym.c', 'qat_crypto.c', 'dev/qat_sym_pmd_gen1.c', 'dev/qat_asym_pmd_gen1.c', 'dev/qat_crypto_pmd_gen2.c', error: patch failed: drivers/common/qat/meson.build:70 Checking patch drivers/common/qat/qat_qp.c... error: while searching for: #include "qat_logs.h" #include "qat_device.h" #include "qat_qp.h" #include "qat_sym.h" #include "qat_asym.h" #include "qat_comp.h" #define QAT_CQ_MAX_DEQ_RETRIES 10 error: patch failed: drivers/common/qat/qat_qp.c:15 error: while searching for: } uint16_t refactor_qat_enqueue_op_burst(__rte_unused void *qp, __rte_unused qat_op_build_request_t op_build_request, __rte_unused void **ops, __rte_unused uint16_t nb_ops) { return 0; } uint16_t refactor_qat_dequeue_op_burst(__rte_unused void *qp, __rte_unused void **ops, __rte_unused qat_op_dequeue_t qat_dequeue_process_response, __rte_unused uint16_t nb_ops) { return 0; } uint16_t qat_enqueue_op_burst(void *qp, void **ops, uint16_t nb_ops) { register struct qat_queue *queue; struct qat_qp *tmp_qp = (struct qat_qp *)qp; error: patch failed: drivers/common/qat/qat_qp.c:550 Hunk #3 succeeded at 765 (offset 164 lines). Hunk #4 succeeded at 971 (offset 164 lines). Hunk #5 succeeded at 990 (offset 164 lines). Checking patch drivers/common/qat/qat_qp.h... error: drivers/common/qat/qat_qp.h: does not match index Checking patch drivers/compress/qat/qat_comp_pmd.c... Hunk #1 succeeded at 633 (offset 17 lines). Hunk #2 succeeded at 662 (offset 17 lines). Checking patch drivers/crypto/qat/dev/qat_crypto_pmd_gen2.c... error: drivers/crypto/qat/dev/qat_crypto_pmd_gen2.c: does not exist in index Checking patch drivers/crypto/qat/dev/qat_crypto_pmd_gen4.c... error: drivers/crypto/qat/dev/qat_crypto_pmd_gen4.c: does not exist in index Checking patch drivers/crypto/qat/dev/qat_sym_pmd_gen1.c... error: drivers/crypto/qat/dev/qat_sym_pmd_gen1.c: does not exist in index Checking patch drivers/crypto/qat/qat_asym_refactor.c... error: drivers/crypto/qat/qat_asym_refactor.c: does not exist in index Checking patch drivers/crypto/qat/qat_asym_refactor.h... error: drivers/crypto/qat/qat_asym_refactor.h: does not exist in index Checking patch drivers/crypto/qat/qat_sym_hw_dp.c... error: drivers/crypto/qat/qat_sym_hw_dp.c: does not match index Checking patch drivers/crypto/qat/qat_sym_refactor.c... error: drivers/crypto/qat/qat_sym_refactor.c: does not exist in index Checking patch drivers/crypto/qat/qat_sym_refactor.h... error: drivers/crypto/qat/qat_sym_refactor.h: does not exist in index Applying patch drivers/common/qat/meson.build with 1 reject... Rejected hunk #1. Applying patch drivers/common/qat/qat_qp.c with 2 rejects... Rejected hunk #1. Rejected hunk #2. Hunk #3 applied cleanly. Hunk #4 applied cleanly. Hunk #5 applied cleanly. Applied patch drivers/compress/qat/qat_comp_pmd.c cleanly. diff a/drivers/common/qat/meson.build b/drivers/common/qat/meson.build (rejected hunks) @@ -70,8 +70,8 @@ if qat_compress endif if qat_crypto - foreach f: ['qat_sym_pmd.c', 'qat_sym.c', 'qat_sym_session.c', - 'qat_sym_hw_dp.c', 'qat_asym_pmd.c', 'qat_asym.c', 'qat_crypto.c', + foreach f: ['qat_sym_refactor.c', 'qat_sym_session.c', + 'qat_sym_hw_dp.c', 'qat_asym_refactor.c', 'qat_crypto.c', 'dev/qat_sym_pmd_gen1.c', 'dev/qat_asym_pmd_gen1.c', 'dev/qat_crypto_pmd_gen2.c', diff a/drivers/common/qat/qat_qp.c b/drivers/common/qat/qat_qp.c (rejected hunks) @@ -15,8 +15,8 @@ #include "qat_logs.h" #include "qat_device.h" #include "qat_qp.h" -#include "qat_sym.h" -#include "qat_asym.h" +#include "qat_sym_refactor.h" +#include "qat_asym_refactor.h" #include "qat_comp.h" #define QAT_CQ_MAX_DEQ_RETRIES 10 @@ -550,23 +550,8 @@ adf_modulo(uint32_t data, uint32_t modulo_mask) } uint16_t -refactor_qat_enqueue_op_burst(__rte_unused void *qp, - __rte_unused qat_op_build_request_t op_build_request, - __rte_unused void **ops, __rte_unused uint16_t nb_ops) -{ - return 0; -} - -uint16_t -refactor_qat_dequeue_op_burst(__rte_unused void *qp, __rte_unused void **ops, - __rte_unused qat_op_dequeue_t qat_dequeue_process_response, - __rte_unused uint16_t nb_ops) -{ - return 0; -} - -uint16_t -qat_enqueue_op_burst(void *qp, void **ops, uint16_t nb_ops) +qat_enqueue_op_burst(void *qp, qat_op_build_request_t op_build_request, + void **ops, uint16_t nb_ops) { register struct qat_queue *queue; struct qat_qp *tmp_qp = (struct qat_qp *)qp; Checking patch drivers/crypto/qat/dev/qat_crypto_pmd_gen3.c... error: drivers/crypto/qat/dev/qat_crypto_pmd_gen3.c: does not exist in index Checking patch drivers/crypto/qat/dev/qat_crypto_pmd_gen4.c... error: drivers/crypto/qat/dev/qat_crypto_pmd_gen4.c: does not exist in index Checking patch drivers/crypto/qat/dev/qat_sym_pmd_gen1.c... error: drivers/crypto/qat/dev/qat_sym_pmd_gen1.c: does not exist in index Checking patch drivers/common/qat/meson.build... error: while searching for: endif if qat_crypto foreach f: ['qat_sym_refactor.c', 'qat_sym_session.c', 'qat_sym_hw_dp.c', 'qat_asym_refactor.c', 'qat_crypto.c', 'dev/qat_sym_pmd_gen1.c', 'dev/qat_asym_pmd_gen1.c', 'dev/qat_crypto_pmd_gen2.c', error: patch failed: drivers/common/qat/meson.build:70 Checking patch drivers/common/qat/qat_device.c... Checking patch drivers/common/qat/qat_qp.c... error: drivers/common/qat/qat_qp.c: does not match index Checking patch drivers/common/qat/qat_qp.h... error: drivers/common/qat/qat_qp.h: does not match index Checking patch drivers/crypto/qat/dev/qat_crypto_pmd_gen2.c... error: drivers/crypto/qat/dev/qat_crypto_pmd_gen2.c: does not exist in index Checking patch drivers/crypto/qat/dev/qat_crypto_pmd_gen4.c... error: drivers/crypto/qat/dev/qat_crypto_pmd_gen4.c: does not exist in index Checking patch drivers/crypto/qat/dev/qat_crypto_pmd_gens.h... error: drivers/crypto/qat/dev/qat_crypto_pmd_gens.h: does not exist in index Checking patch drivers/crypto/qat/dev/qat_sym_pmd_gen1.c... error: drivers/crypto/qat/dev/qat_sym_pmd_gen1.c: does not exist in index Checking patch drivers/crypto/qat/qat_asym.c... error: drivers/crypto/qat/qat_asym.c: does not match index Checking patch drivers/crypto/qat/qat_asym.h... error: drivers/crypto/qat/qat_asym.h: does not match index Checking patch drivers/crypto/qat/qat_asym_pmd.c... error: while searching for: /* SPDX-License-Identifier: BSD-3-Clause * Copyright(c) 2019 Intel Corporation */ #include #include "qat_logs.h" #include "qat_crypto.h" #include "qat_asym.h" #include "qat_asym_pmd.h" uint8_t qat_asym_driver_id; struct qat_crypto_gen_dev_ops qat_asym_gen_dev_ops[QAT_N_GENS]; void qat_asym_init_op_cookie(void *op_cookie) { int j; struct qat_asym_op_cookie *cookie = op_cookie; cookie->input_addr = rte_mempool_virt2iova(cookie) + offsetof(struct qat_asym_op_cookie, input_params_ptrs); cookie->output_addr = rte_mempool_virt2iova(cookie) + offsetof(struct qat_asym_op_cookie, output_params_ptrs); for (j = 0; j < 8; j++) { cookie->input_params_ptrs[j] = rte_mempool_virt2iova(cookie) + offsetof(struct qat_asym_op_cookie, input_array[j]); cookie->output_params_ptrs[j] = rte_mempool_virt2iova(cookie) + offsetof(struct qat_asym_op_cookie, output_array[j]); } } static struct rte_cryptodev_ops crypto_qat_ops = { /* Device related operations */ .dev_configure = qat_cryptodev_config, .dev_start = qat_cryptodev_start, .dev_stop = qat_cryptodev_stop, .dev_close = qat_cryptodev_close, .dev_infos_get = qat_cryptodev_info_get, .stats_get = qat_cryptodev_stats_get, .stats_reset = qat_cryptodev_stats_reset, .queue_pair_setup = qat_cryptodev_qp_setup, .queue_pair_release = qat_cryptodev_qp_release, /* Crypto related operations */ .asym_session_get_size = qat_asym_session_get_private_size, .asym_session_configure = qat_asym_session_configure, .asym_session_clear = qat_asym_session_clear }; uint16_t qat_asym_pmd_enqueue_op_burst(void *qp, struct rte_crypto_op **ops, uint16_t nb_ops) { return qat_enqueue_op_burst(qp, (void **)ops, nb_ops); } uint16_t qat_asym_pmd_dequeue_op_burst(void *qp, struct rte_crypto_op **ops, uint16_t nb_ops) { return qat_dequeue_op_burst(qp, (void **)ops, nb_ops); } /* An rte_driver is needed in the registration of both the device and the driver * with cryptodev. * The actual qat pci's rte_driver can't be used as its name represents * the whole pci device with all services. Think of this as a holder for a name * for the crypto part of the pci device. */ static const char qat_asym_drv_name[] = RTE_STR(CRYPTODEV_NAME_QAT_ASYM_PMD); static const struct rte_driver cryptodev_qat_asym_driver = { .name = qat_asym_drv_name, .alias = qat_asym_drv_name }; int qat_asym_dev_create(struct qat_pci_device *qat_pci_dev, struct qat_dev_cmd_param *qat_dev_cmd_param) { int i = 0; struct qat_device_info *qat_dev_instance = &qat_pci_devs[qat_pci_dev->qat_dev_id]; struct rte_cryptodev_pmd_init_params init_params = { .name = "", .socket_id = qat_dev_instance->pci_dev->device.numa_node, .private_data_size = sizeof(struct qat_cryptodev_private) }; struct qat_capabilities_info capa_info; const struct rte_cryptodev_capabilities *capabilities; const struct qat_crypto_gen_dev_ops *gen_dev_ops = &qat_asym_gen_dev_ops[qat_pci_dev->qat_dev_gen]; char name[RTE_CRYPTODEV_NAME_MAX_LEN]; char capa_memz_name[RTE_CRYPTODEV_NAME_MAX_LEN]; struct rte_cryptodev *cryptodev; struct qat_cryptodev_private *internals; uint64_t capa_size; snprintf(name, RTE_CRYPTODEV_NAME_MAX_LEN, "%s_%s", qat_pci_dev->name, "asym"); QAT_LOG(DEBUG, "Creating QAT ASYM device %s\n", name); if (gen_dev_ops->cryptodev_ops == NULL) { QAT_LOG(ERR, "Device %s does not support asymmetric crypto", name); return -EFAULT; } if (rte_eal_process_type() == RTE_PROC_PRIMARY) { qat_pci_dev->qat_asym_driver_id = qat_asym_driver_id; } else if (rte_eal_process_type() == RTE_PROC_SECONDARY) { if (qat_pci_dev->qat_asym_driver_id != qat_asym_driver_id) { QAT_LOG(ERR, "Device %s have different driver id than corresponding device in primary process", name); return -(EFAULT); } } /* Populate subset device to use in cryptodev device creation */ qat_dev_instance->asym_rte_dev.driver = &cryptodev_qat_asym_driver; qat_dev_instance->asym_rte_dev.numa_node = qat_dev_instan error: patch failed: drivers/crypto/qat/qat_asym_pmd.c:1 error: removal patch leaves file contents error: drivers/crypto/qat/qat_asym_pmd.c: patch does not apply Checking patch drivers/crypto/qat/qat_asym_pmd.h... error: while searching for: /* SPDX-License-Identifier: BSD-3-Clause * Copyright(c) 2019 Intel Corporation */ #ifndef _QAT_ASYM_PMD_H_ #define _QAT_ASYM_PMD_H_ #include #include "qat_crypto.h" #include "qat_device.h" /** Intel(R) QAT Asymmetric Crypto PMD driver name */ #define CRYPTODEV_NAME_QAT_ASYM_PMD crypto_qat_asym /** * Helper function to add an asym capability * **/ #define QAT_ASYM_CAP(n, o, l, r, i) \ { \ .op = RTE_CRYPTO_OP_TYPE_ASYMMETRIC, \ {.asym = { \ .xform_capa = { \ .xform_type = RTE_CRYPTO_ASYM_XFORM_##n,\ .op_types = o, \ { \ .modlen = { \ .min = l, \ .max = r, \ .increment = i \ }, } \ } \ }, \ } \ } extern uint8_t qat_asym_driver_id; extern struct qat_crypto_gen_dev_ops qat_asym_gen_dev_ops[]; void qat_asym_init_op_cookie(void *op_cookie); uint16_t qat_asym_pmd_enqueue_op_burst(void *qp, struct rte_crypto_op **ops, uint16_t nb_ops); uint16_t qat_asym_pmd_dequeue_op_burst(void *qp, struct rte_crypto_op **ops, uint16_t nb_ops); #endif /* _QAT_ASYM_PMD_H_ */ error: patch failed: drivers/crypto/qat/qat_asym_pmd.h:1 error: removal patch leaves file contents error: drivers/crypto/qat/qat_asym_pmd.h: patch does not apply Checking patch drivers/crypto/qat/qat_asym_refactor.c... error: drivers/crypto/qat/qat_asym_refactor.c: does not exist in index Checking patch drivers/crypto/qat/qat_asym_refactor.h... error: drivers/crypto/qat/qat_asym_refactor.h: does not exist in index Checking patch drivers/crypto/qat/qat_crypto.h... error: drivers/crypto/qat/qat_crypto.h: does not exist in index Checking patch drivers/crypto/qat/qat_sym.c... error: drivers/crypto/qat/qat_sym.c: does not match index Checking patch drivers/crypto/qat/qat_sym.h... error: drivers/crypto/qat/qat_sym.h: does not match index Checking patch drivers/crypto/qat/qat_sym_hw_dp.c... error: drivers/crypto/qat/qat_sym_hw_dp.c: does not match index Checking patch drivers/crypto/qat/qat_sym_pmd.c... error: while searching for: /* SPDX-License-Identifier: BSD-3-Clause * Copyright(c) 2015-2018 Intel Corporation */ #include #include #include #include #include #include #ifdef RTE_LIB_SECURITY #include #endif #include "qat_logs.h" #include "qat_crypto.h" #include "qat_sym.h" #include "qat_sym_session.h" #include "qat_sym_pmd.h" #define MIXED_CRYPTO_MIN_FW_VER 0x04090000 uint8_t qat_sym_driver_id; struct qat_crypto_gen_dev_ops qat_sym_gen_dev_ops[QAT_N_GENS]; void qat_sym_init_op_cookie(void *op_cookie) { struct qat_sym_op_cookie *cookie = op_cookie; cookie->qat_sgl_src_phys_addr = rte_mempool_virt2iova(cookie) + offsetof(struct qat_sym_op_cookie, qat_sgl_src); cookie->qat_sgl_dst_phys_addr = rte_mempool_virt2iova(cookie) + offsetof(struct qat_sym_op_cookie, qat_sgl_dst); cookie->opt.spc_gmac.cd_phys_addr = rte_mempool_virt2iova(cookie) + offsetof(struct qat_sym_op_cookie, opt.spc_gmac.cd_cipher); } static uint16_t qat_sym_pmd_enqueue_op_burst(void *qp, struct rte_crypto_op **ops, uint16_t nb_ops) { return qat_enqueue_op_burst(qp, (void **)ops, nb_ops); } static uint16_t qat_sym_pmd_dequeue_op_burst(void *qp, struct rte_crypto_op **ops, uint16_t nb_ops) { return qat_dequeue_op_burst(qp, (void **)ops, nb_ops); } /* An rte_driver is needed in the registration of both the device and the driver * with cryptodev. * The actual qat pci's rte_driver can't be used as its name represents * the whole pci device with all services. Think of this as a holder for a name * for the crypto part of the pci device. */ static const char qat_sym_drv_name[] = RTE_STR(CRYPTODEV_NAME_QAT_SYM_PMD); static const struct rte_driver cryptodev_qat_sym_driver = { .name = qat_sym_drv_name, .alias = qat_sym_drv_name }; int qat_sym_dev_create(struct qat_pci_device *qat_pci_dev, struct qat_dev_cmd_param *qat_dev_cmd_param __rte_unused) { int i = 0, ret = 0; struct qat_device_info *qat_dev_instance = &qat_pci_devs[qat_pci_dev->qat_dev_id]; struct rte_cryptodev_pmd_init_params init_params = { .name = "", .socket_id = qat_dev_instance->pci_dev->device.numa_node, .private_data_size = sizeof(struct qat_cryptodev_private) }; char name[RTE_CRYPTODEV_NAME_MAX_LEN]; char capa_memz_name[RTE_CRYPTODEV_NAME_MAX_LEN]; struct rte_cryptodev *cryptodev; struct qat_cryptodev_private *internals; struct qat_capabilities_info capa_info; const struct rte_cryptodev_capabilities *capabilities; const struct qat_crypto_gen_dev_ops *gen_dev_ops = &qat_sym_gen_dev_ops[qat_pci_dev->qat_dev_gen]; uint64_t capa_size; snprintf(name, RTE_CRYPTODEV_NAME_MAX_LEN, "%s_%s", qat_pci_dev->name, "sym"); QAT_LOG(DEBUG, "Creating QAT SYM device %s", name); if (gen_dev_ops->cryptodev_ops == NULL) { QAT_LOG(ERR, "Device %s does not support symmetric crypto", name); return -EFAULT; } /* * All processes must use same driver id so they can share sessions. * Store driver_id so we can validate that all processes have the same * value, typically they have, but could differ if binaries built * separately. */ if (rte_eal_process_type() == RTE_PROC_PRIMARY) { qat_pci_dev->qat_sym_driver_id = qat_sym_driver_id; } else if (rte_eal_process_type() == RTE_PROC_SECONDARY) { if (qat_pci_dev->qat_sym_driver_id != qat_sym_driver_id) { QAT_LOG(ERR, "Device %s have different driver id than corresponding device in primary process", name); return -(EFAULT); } } /* Populate subset device to use in cryptodev device creation */ qat_dev_instance->sym_rte_dev.driver = &cryptodev_qat_sym_driver; qat_dev_instance->sym_rte_dev.numa_node = qat_dev_instance->pci_dev->device.numa_node; qat_dev_instance->sym_rte_dev.devargs = NULL; cryptodev = rte_cryptodev_pmd_create(name, &(qat_dev_instance->sym_rte_dev), &init_params); if (cryptodev == NULL) return -ENODEV; qat_dev_instance->sym_rte_dev.name = cryptodev->data->name; cryptodev->driver_id = qat_sym_driver_id; crypto error: patch failed: drivers/crypto/qat/qat_sym_pmd.c:1 error: removal patch leaves file contents error: drivers/crypto/qat/qat_sym_pmd.c: patch does not apply Checking patch drivers/crypto/qat/qat_sym_pmd.h... error: while searching for: /* SPDX-License-Identifier: BSD-3-Clause * Copyright(c) 2015-2018 Intel Corporation */ #ifndef _QAT_SYM_PMD_H_ #define _QAT_SYM_PMD_H_ #ifdef BUILD_QAT_SYM #include #include #ifdef RTE_LIB_SECURITY #include #endif #include "qat_crypto.h" #include "qat_device.h" /** Intel(R) QAT Symmetric Crypto PMD driver name */ #define CRYPTODEV_NAME_QAT_SYM_PMD crypto_qat /* Internal capabilities */ #define QAT_SYM_CAP_MIXED_CRYPTO (1 << 0) #define QAT_SYM_CAP_VALID (1 << 31) /** * Macro to add a sym capability * helper function to add an sym capability * * **/ #define QAT_SYM_PLAIN_AUTH_CAP(n, b, d) \ { \ .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC, \ {.sym = { \ .xform_type = RTE_CRYPTO_SYM_XFORM_AUTH, \ {.auth = { \ .algo = RTE_CRYPTO_AUTH_##n, \ b, d \ }, } \ }, } \ } #define QAT_SYM_AUTH_CAP(n, b, k, d, a, i) \ { \ .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC, \ {.sym = { \ .xform_type = RTE_CRYPTO_SYM_XFORM_AUTH, \ {.auth = { \ .algo = RTE_CRYPTO_AUTH_##n, \ b, k, d, a, i \ }, } \ }, } \ } #define QAT_SYM_AEAD_CAP(n, b, k, d, a, i) \ { \ .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC, \ {.sym = { \ .xform_type = RTE_CRYPTO_SYM_XFORM_AEAD, \ {.aead = { \ .algo = RTE_CRYPTO_AEAD_##n, \ b, k, d, a, i \ }, } \ }, } \ } #define QAT_SYM_CIPHER_CAP(n, b, k, i) \ { \ .op = RTE_CRYPTO_OP_TYPE_SYMMETRIC, \ {.sym = { \ .xform_type = RTE_CRYPTO_SYM_XFORM_CIPHER, \ {.cipher = { \ .algo = RTE_CRYPTO_CIPHER_##n, \ b, k, i \ }, } \ }, } \ } extern uint8_t qat_sym_driver_id; extern struct qat_crypto_gen_dev_ops qat_sym_gen_dev_ops[]; int qat_sym_dev_create(struct qat_pci_device *qat_pci_dev, struct qat_dev_cmd_param *qat_dev_cmd_param); int qat_sym_dev_destroy(struct qat_pci_device *qat_pci_dev); void qat_sym_init_op_cookie(void *op_cookie); #endif #endif /* _QAT_SYM_PMD_H_ */ error: patch failed: drivers/crypto/qat/qat_sym_pmd.h:1 error: removal patch leaves file contents error: drivers/crypto/qat/qat_sym_pmd.h: patch does not apply Checking patch drivers/crypto/qat/qat_sym_refactor.c... error: drivers/crypto/qat/qat_sym_refactor.c: does not exist in index Checking patch drivers/crypto/qat/qat_sym_refactor.h... error: drivers/crypto/qat/qat_sym_refactor.h: does not exist in index Checking patch drivers/crypto/qat/qat_sym_session.c... error: drivers/crypto/qat/qat_sym_session.c: does not match index Applying patch drivers/common/qat/meson.build with 1 reject... Rejected hunk #1. Applied patch drivers/common/qat/qat_device.c cleanly. diff a/drivers/common/qat/meson.build b/drivers/common/qat/meson.build (rejected hunks) @@ -70,8 +70,8 @@ if qat_compress endif if qat_crypto - foreach f: ['qat_sym_refactor.c', 'qat_sym_session.c', - 'qat_sym_hw_dp.c', 'qat_asym_refactor.c', 'qat_crypto.c', + foreach f: ['qat_sym.c', 'qat_sym_session.c', + 'qat_asym.c', 'qat_crypto.c', 'dev/qat_sym_pmd_gen1.c', 'dev/qat_asym_pmd_gen1.c', 'dev/qat_crypto_pmd_gen2.c', https://lab.dpdk.org/results/dashboard/patchsets/19925/ UNH-IOL DPDK Community Lab