From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id F2168A00C2; Wed, 28 Sep 2022 06:08:54 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 8A05A4113C; Wed, 28 Sep 2022 06:08:54 +0200 (CEST) Received: from mail-qv1-f52.google.com (mail-qv1-f52.google.com [209.85.219.52]) by mails.dpdk.org (Postfix) with ESMTP id 3372741133 for ; Wed, 28 Sep 2022 06:08:53 +0200 (CEST) Received: by mail-qv1-f52.google.com with SMTP id u8so1849302qvv.9 for ; Tue, 27 Sep 2022 21:08:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date; bh=K/uyRfoFM/5QxfSIlbuzONsKHDFs3f3mEufXnFBcem0=; b=JNb5Opg0C7h8DEjyMmmKfrS6PMJbJGeHXOcgmqkj6+5xEQKGe2O9yonVTZQNDPXEgq 0iLozIAMiBKYBsh13cIyspXGB524d5uifRqJH+JNFSVMtcjMNgP9ZVJveoMZZO+W0nFR uWqoZ+h9Z9df3Rl12/YruAcP0FBchY+kXIhOLhADWSiUSTD7aZ0EGhCBh9litqPrVwsa FxQzIRZGQ+U+Y/qgpoxzCY252dy3izZ3xkStORteLkxsFCKpUORBszTalMlaC6Sw+RSY Sr+S04dUdKfkDnH4LY+EnL8lbBd5f/JmtLFMx0h1y9hkOja2quYnhPIyjTOvIyAF8RnS 1nrg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date; bh=K/uyRfoFM/5QxfSIlbuzONsKHDFs3f3mEufXnFBcem0=; b=FQ9fT6e+oB/RiSvW/uwcOxbTgrvT8O8jrd1a2LXb8whfzQHs+tDdsHTq7WPgJdd8EQ 4p06VfsPFFad3ibXwofCeLu1gaLXzeEp3g+6zkX0JLqEwgaW+DsmjKTiT29x2eYlqL0F Yo2LuEcxnU7FA3eR0UWMgrw9FVVoVPN0z3lz27FUY0UBSTy0p477v9IAdfGVNK67heV0 xUOwe3sYCI1gZB5mtlYNBXR+wsQzDRGd9rP6Hu1xmeGwHqmInqV4DnM9VpUYbzgxv657 09yKaSpUMN+CcTkBuP14566IkGpth93ppZZzhofHZaT0ekLmeuIsERib67b1NxdLjF+p TZNA== X-Gm-Message-State: ACrzQf2jxwrabhngtxq/SgydZncOIuepsNzdoKEWxxpFuXMQ49FmL6KR 1DIXRG33LdMWW5DnMGXO8pPdaDS2w8Szg67HMSU= X-Google-Smtp-Source: AMsMyM66JLLhvO2KeCZVS5IAm7MScdhaZaONOFSvuoXDhoCUzARk2mFMSNXiqwxiuDU9Co0eMq1XSLQ/6T/l9gBTxz4= X-Received: by 2002:a0c:f3d3:0:b0:4a0:86d9:1807 with SMTP id f19-20020a0cf3d3000000b004a086d91807mr24712636qvm.19.1664338132354; Tue, 27 Sep 2022 21:08:52 -0700 (PDT) MIME-Version: 1.0 References: <20220916173227.27758-1-amitprakashs@marvell.com> In-Reply-To: <20220916173227.27758-1-amitprakashs@marvell.com> From: Jerin Jacob Date: Wed, 28 Sep 2022 09:38:25 +0530 Message-ID: Subject: Re: [PATCH] cryptodev: add trace points To: Amit Prakash Shukla Cc: Akhil Goyal , Fan Zhang , Ray Kinsella , dev@dpdk.org, jerinj@marvell.com Content-Type: text/plain; charset="UTF-8" X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org On Fri, Sep 16, 2022 at 11:05 PM Amit Prakash Shukla wrote: > > Add trace points for cryptodev functions. > > Signed-off-by: Amit Prakash Shukla > --- 1) Please include the result of API operation in trace so that once can know the API status 2) restrict trace additions to public API. i.e I think, no need to add trace for PMD hooks 3) Please test with https://patches.dpdk.org/project/dpdk/patch/20220804134430.6192-7-adwivedi@marvell.com/ patch by adding cryptodev symbols to make sure not to missed any public cryptodev API. > @@ -135,6 +139,8 @@ rte_cryptodev_pmd_create(const char *name, > /* initialise user call-back tail queue */ > TAILQ_INIT(&(cryptodev->link_intr_cbs)); > > + rte_cryptodev_trace_pmd_create(name, params->socket_id, cryptodev); > + > return cryptodev; > } > > @@ -144,6 +150,8 @@ rte_cryptodev_pmd_destroy(struct rte_cryptodev *cryptodev) > int retval; > void *dev_priv = cryptodev->data->dev_private; > > + rte_cryptodev_trace_pmd_destroy(cryptodev); > + > CDEV_LOG_INFO("Closing crypto device %s", cryptodev->device->name); > > /* free crypto device */ > @@ -166,6 +174,9 @@ rte_cryptodev_pmd_probing_finish(struct rte_cryptodev *cryptodev) > { > if (cryptodev == NULL) > return; > + > + rte_cryptodev_trace_pmd_probing_finish(cryptodev); > + > /* > * for secondary process, at that point we expect device > * to be already 'usable', so shared data and all function > @@ -231,6 +242,8 @@ cryptodev_fp_ops_set(struct rte_crypto_fp_ops *fp_ops, > void * > rte_cryptodev_session_event_mdata_get(struct rte_crypto_op *op) > { > + rte_cryptodev_trace_session_event_mdata_get(op->type); > + > if (op->type == RTE_CRYPTO_OP_TYPE_SYMMETRIC && > op->sess_type == RTE_CRYPTO_OP_WITH_SESSION) > return rte_cryptodev_sym_session_get_user_data(op->sym->session); > diff --git a/lib/cryptodev/cryptodev_trace_points.c b/lib/cryptodev/cryptodev_trace_points.c > index c5bfe08b79..bca4deecc2 100644 > --- a/lib/cryptodev/cryptodev_trace_points.c > +++ b/lib/cryptodev/cryptodev_trace_points.c > @@ -50,3 +50,168 @@ RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_enqueue_burst, > > RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_dequeue_burst, > lib.cryptodev.deq.burst) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_callback_register, > + lib.cryptodev.callback.register) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_callback_unregister, > + lib.cryptodev.callback.unregister) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_device_count_by_driver, > + lib.cryptodev.device.count.by.driver) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_devices_get, > + lib.cryptodev.devices.get) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_driver_id_get, > + lib.cryptodev.driver.id.get) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_driver_name_get, > + lib.cryptodev.driver.name.get) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_get_aead_algo_enum, > + lib.cryptodev.get.aead.algo.enum) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_get_auth_algo_enum, > + lib.cryptodev.get.auth.algo.enum) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_get_cipher_algo_enum, > + lib.cryptodev.get.cipher.algo.enum) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_get_dev_id, > + lib.cryptodev.get.dev.id) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_get_feature_name, > + lib.cryptodev.get.feature.name) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_get_sec_ctx, > + lib.cryptodev.get.sec.ctx) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_info_get, > + lib.cryptodev.info.get) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_is_valid_dev, > + lib.cryptodev.is.valid.dev) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_name_get, > + lib.cryptodev.name.get) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_queue_pair_count, > + lib.cryptodev.queue.pair.count) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_socket_id, > + lib.cryptodev.socket.id) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_stats_get, > + lib.cryptodev.stats.get) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_stats_reset, > + lib.cryptodev.stats.reset) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_sym_capability_check_aead, > + lib.cryptodev.sym.capability.check.aead) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_sym_capability_check_auth, > + lib.cryptodev.sym.capability.check.auth) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_sym_capability_check_cipher, > + lib.cryptodev.sym.capability.check.cipher) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_sym_capability_get, > + lib.cryptodev.sym.capability.get) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_sym_get_private_session_size, > + lib.cryptodev.sym.get.private.session.size) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_asym_capability_get, > + lib.cryptodev.asym.capability.get) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_asym_get_private_session_size, > + lib.cryptodev.asym.get.private.session.size) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_asym_get_xform_enum, > + lib.cryptodev.asym.get.xform.enum) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_asym_xform_capability_check_modlen, > + lib.cryptodev.asym.xform.capability.check.modlen) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_sym_cpu_crypto_process, > + lib.cryptodev.sym.cpu.crypto.process) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_sym_get_existing_header_session_size, > + lib.cryptodev.sym.get.existing.header.session.size) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_sym_session_get_user_data, > + lib.cryptodev.sym.session.get.user.data) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_sym_session_set_user_data, > + lib.cryptodev.sym.session.set.user.data) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_get_qp_status, > + lib.cryptodev.get.qp.status) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_configure_raw_dp_ctx, > + lib.cryptodev.configure.raw.dp.ctx) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_get_raw_dp_ctx_size, > + lib.cryptodev.get.raw.dp.ctx.size) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_add_deq_callback, > + lib.cryptodev.add.deq.callback) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_add_enq_callback, > + lib.cryptodev.add.enq.callback) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_remove_deq_callback, > + lib.cryptodev.remove.deq.callback) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_remove_enq_callback, > + lib.cryptodev.remove.enq.callback) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_asym_session_get_user_data, > + lib.cryptodev.asym.session.get.user.data) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_asym_session_set_user_data, > + lib.cryptodev.asym.session.set.user.data) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_session_event_mdata_set, > + lib.cryptodev.session.event.mdata.set) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_allocate_driver, > + lib.cryptodev.allocate.driver) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_pmd_allocate, > + lib.cryptodev.pmd.allocate) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_pmd_callback_process, > + lib.cryptodev.pmd.callback.process) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_pmd_create, > + lib.cryptodev.pmd.create) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_pmd_create_dev_name, > + lib.cryptodev.pmd.create.dev.name) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_pmd_destroy, > + lib.cryptodev.pmd.destroy) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_pmd_get_dev, > + lib.cryptodev.pmd.get.dev) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_pmd_get_named_dev, > + lib.cryptodev.pmd.get.named.dev) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_pmd_parse_input_args, > + lib.cryptodev.pmd.parse.input.args) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_pmd_probing_finish, > + lib.cryptodev.pmd.probing.finish) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_pmd_release_device, > + lib.cryptodev.pmd.release.device) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_session_event_mdata_get, > + lib.cryptodev.session.event.mdata.get) > + > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_op_pool_create, > + lib.cryptodev.op.pool.create) > diff --git a/lib/cryptodev/rte_cryptodev.c b/lib/cryptodev/rte_cryptodev.c > index 42f3221052..b712315674 100644 > --- a/lib/cryptodev/rte_cryptodev.c > +++ b/lib/cryptodev/rte_cryptodev.c > @@ -216,6 +216,8 @@ rte_cryptodev_get_cipher_algo_enum(enum rte_crypto_cipher_algorithm *algo_enum, > { > unsigned int i; > > + rte_cryptodev_trace_get_cipher_algo_enum(algo_string); > + > for (i = 1; i < RTE_DIM(rte_crypto_cipher_algorithm_strings); i++) { > if (strcmp(algo_string, rte_crypto_cipher_algorithm_strings[i]) == 0) { > *algo_enum = (enum rte_crypto_cipher_algorithm) i; > @@ -233,6 +235,8 @@ rte_cryptodev_get_auth_algo_enum(enum rte_crypto_auth_algorithm *algo_enum, > { > unsigned int i; > > + rte_cryptodev_trace_get_auth_algo_enum(algo_string); > + > for (i = 1; i < RTE_DIM(rte_crypto_auth_algorithm_strings); i++) { > if (strcmp(algo_string, rte_crypto_auth_algorithm_strings[i]) == 0) { > *algo_enum = (enum rte_crypto_auth_algorithm) i; > @@ -250,6 +254,8 @@ rte_cryptodev_get_aead_algo_enum(enum rte_crypto_aead_algorithm *algo_enum, > { > unsigned int i; > > + rte_cryptodev_trace_get_aead_algo_enum(algo_string); > + > for (i = 1; i < RTE_DIM(rte_crypto_aead_algorithm_strings); i++) { > if (strcmp(algo_string, rte_crypto_aead_algorithm_strings[i]) == 0) { > *algo_enum = (enum rte_crypto_aead_algorithm) i; > @@ -267,6 +273,8 @@ rte_cryptodev_asym_get_xform_enum(enum rte_crypto_asym_xform_type *xform_enum, > { > unsigned int i; > > + rte_cryptodev_trace_asym_get_xform_enum(xform_string); > + > for (i = 1; i < RTE_DIM(rte_crypto_asym_xform_strings); i++) { > if (strcmp(xform_string, > rte_crypto_asym_xform_strings[i]) == 0) { > @@ -299,6 +307,9 @@ rte_cryptodev_sym_capability_get(uint8_t dev_id, > > rte_cryptodev_info_get(dev_id, &dev_info); > > + rte_cryptodev_trace_sym_capability_get(dev_id, dev_info.driver_name, > + dev_info.driver_id, idx->type); > + > while ((capability = &dev_info.capabilities[i++])->op != > RTE_CRYPTO_OP_TYPE_UNDEFINED) { > if (capability->op != RTE_CRYPTO_OP_TYPE_SYMMETRIC) > @@ -359,6 +370,9 @@ rte_cryptodev_asym_capability_get(uint8_t dev_id, > memset(&dev_info, 0, sizeof(struct rte_cryptodev_info)); > rte_cryptodev_info_get(dev_id, &dev_info); > > + rte_cryptodev_trace_asym_capability_get(dev_info.driver_name, > + dev_info.driver_id, idx->type); > + > while ((capability = &dev_info.capabilities[i++])->op != > RTE_CRYPTO_OP_TYPE_UNDEFINED) { > if (capability->op != RTE_CRYPTO_OP_TYPE_ASYMMETRIC) > @@ -375,6 +389,9 @@ rte_cryptodev_sym_capability_check_cipher( > const struct rte_cryptodev_symmetric_capability *capability, > uint16_t key_size, uint16_t iv_size) > { > + rte_cryptodev_trace_sym_capability_check_cipher(capability, key_size, > + iv_size); > + > if (param_range_check(key_size, &capability->cipher.key_size) != 0) > return -1; > > @@ -389,6 +406,9 @@ rte_cryptodev_sym_capability_check_auth( > const struct rte_cryptodev_symmetric_capability *capability, > uint16_t key_size, uint16_t digest_size, uint16_t iv_size) > { > + rte_cryptodev_trace_sym_capability_check_auth(capability, key_size, > + digest_size, iv_size); > + > if (param_range_check(key_size, &capability->auth.key_size) != 0) > return -1; > > @@ -407,6 +427,9 @@ rte_cryptodev_sym_capability_check_aead( > uint16_t key_size, uint16_t digest_size, uint16_t aad_size, > uint16_t iv_size) > { > + rte_cryptodev_trace_sym_capability_check_aead(capability, key_size, > + digest_size, aad_size, iv_size); > + > if (param_range_check(key_size, &capability->aead.key_size) != 0) > return -1; > > @@ -437,6 +460,9 @@ rte_cryptodev_asym_xform_capability_check_modlen( > const struct rte_cryptodev_asymmetric_xform_capability *capability, > uint16_t modlen) > { > + rte_cryptodev_trace_asym_xform_capability_check_modlen(capability, > + modlen); > + > /* no need to check for limits, if min or max = 0 */ > if (capability->modlen.min != 0) { > if (modlen < capability->modlen.min) > @@ -577,6 +603,8 @@ cryptodev_cb_init(struct rte_cryptodev *dev) > const char * > rte_cryptodev_get_feature_name(uint64_t flag) > { > + rte_cryptodev_trace_get_feature_name(flag); > + > switch (flag) { > case RTE_CRYPTODEV_FF_SYMMETRIC_CRYPTO: > return "SYMMETRIC_CRYPTO"; > @@ -638,6 +666,8 @@ rte_cryptodev_get_feature_name(uint64_t flag) > struct rte_cryptodev * > rte_cryptodev_pmd_get_dev(uint8_t dev_id) > { > + rte_cryptodev_trace_pmd_get_dev(dev_id); > + > return &cryptodev_globals.devs[dev_id]; > } > > @@ -650,6 +680,8 @@ rte_cryptodev_pmd_get_named_dev(const char *name) > if (name == NULL) > return NULL; > > + rte_cryptodev_trace_pmd_get_named_dev(name); > + > for (i = 0; i < RTE_CRYPTO_MAX_DEVS; i++) { > dev = &cryptodev_globals.devs[i]; > > @@ -676,6 +708,8 @@ rte_cryptodev_is_valid_dev(uint8_t dev_id) > { > struct rte_cryptodev *dev = NULL; > > + rte_cryptodev_trace_is_valid_dev(dev_id); > + > if (!rte_cryptodev_is_valid_device_data(dev_id)) > return 0; > > @@ -695,6 +729,8 @@ rte_cryptodev_get_dev_id(const char *name) > if (name == NULL) > return -1; > > + rte_cryptodev_trace_get_dev_id(name); > + > for (i = 0; i < RTE_CRYPTO_MAX_DEVS; i++) { > if (!rte_cryptodev_is_valid_device_data(i)) > continue; > @@ -725,6 +761,8 @@ rte_cryptodev_device_count_by_driver(uint8_t driver_id) > RTE_CRYPTODEV_ATTACHED) > dev_count++; > > + rte_cryptodev_trace_device_count_by_driver(driver_id, dev_count); > + > return dev_count; > } > > @@ -751,12 +789,16 @@ rte_cryptodev_devices_get(const char *driver_name, uint8_t *devices, > } > } > > + rte_cryptodev_trace_devices_get(driver_name, count); > + > return count; > } > > void * > rte_cryptodev_get_sec_ctx(uint8_t dev_id) > { > + rte_cryptodev_trace_get_sec_ctx(dev_id); > + > if (dev_id < RTE_CRYPTO_MAX_DEVS && > (rte_crypto_devices[dev_id].feature_flags & > RTE_CRYPTODEV_FF_SECURITY)) > @@ -775,6 +817,8 @@ rte_cryptodev_socket_id(uint8_t dev_id) > > dev = rte_cryptodev_pmd_get_dev(dev_id); > > + rte_cryptodev_trace_socket_id(dev_id, dev->data->name, > + dev->data->socket_id); > return dev->data->socket_id; > } > > @@ -913,6 +957,7 @@ rte_cryptodev_pmd_allocate(const char *name, int socket_id) > cryptodev_globals.nb_devs++; > } > > + rte_cryptodev_trace_pmd_allocate(cryptodev); > return cryptodev; > } > > @@ -925,6 +970,8 @@ rte_cryptodev_pmd_release_device(struct rte_cryptodev *cryptodev) > if (cryptodev == NULL) > return -EINVAL; > > + rte_cryptodev_trace_pmd_release_device(cryptodev); > + > dev_id = cryptodev->data->dev_id; > > cryptodev_fp_ops_reset(rte_crypto_fp_ops + dev_id); > @@ -956,6 +1003,8 @@ rte_cryptodev_queue_pair_count(uint8_t dev_id) > } > > dev = &rte_crypto_devices[dev_id]; > + rte_cryptodev_trace_queue_pair_count(dev); > + > return dev->data->nb_queue_pairs; > } > > @@ -1178,6 +1227,8 @@ rte_cryptodev_get_qp_status(uint8_t dev_id, uint16_t queue_pair_id) > { > struct rte_cryptodev *dev; > > + rte_cryptodev_trace_get_qp_status(dev_id, queue_pair_id); > + > if (!rte_cryptodev_is_valid_dev(dev_id)) { > CDEV_LOG_ERR("Invalid dev_id=%" PRIu8, dev_id); > return -EINVAL; > @@ -1331,6 +1382,7 @@ rte_cryptodev_add_enq_callback(uint8_t dev_id, > > rte_spinlock_unlock(&rte_cryptodev_callback_lock); > > + rte_cryptodev_trace_add_enq_callback(dev_id, qp_id, cb_fn); > return cb; > } > > @@ -1356,6 +1408,8 @@ rte_cryptodev_remove_enq_callback(uint8_t dev_id, > return -ENODEV; > } > > + rte_cryptodev_trace_remove_enq_callback(dev_id, qp_id, cb->fn); > + > dev = &rte_crypto_devices[dev_id]; > if (qp_id >= dev->data->nb_queue_pairs) { > CDEV_LOG_ERR("Invalid queue_pair_id=%d", qp_id); > @@ -1466,6 +1520,8 @@ rte_cryptodev_add_deq_callback(uint8_t dev_id, > > rte_spinlock_unlock(&rte_cryptodev_callback_lock); > > + rte_cryptodev_trace_add_deq_callback(dev_id, qp_id, cb_fn); > + > return cb; > } > > @@ -1491,6 +1547,8 @@ rte_cryptodev_remove_deq_callback(uint8_t dev_id, > return -ENODEV; > } > > + rte_cryptodev_trace_remove_deq_callback(dev_id, qp_id, cb->fn); > + > dev = &rte_crypto_devices[dev_id]; > if (qp_id >= dev->data->nb_queue_pairs) { > CDEV_LOG_ERR("Invalid queue_pair_id=%d", qp_id); > @@ -1559,6 +1617,8 @@ rte_cryptodev_stats_get(uint8_t dev_id, struct rte_cryptodev_stats *stats) > > RTE_FUNC_PTR_OR_ERR_RET(*dev->dev_ops->stats_get, -ENOTSUP); > (*dev->dev_ops->stats_get)(dev, stats); > + > + rte_cryptodev_trace_stats_get(dev_id, stats); > return 0; > } > > @@ -1567,6 +1627,8 @@ rte_cryptodev_stats_reset(uint8_t dev_id) > { > struct rte_cryptodev *dev; > > + rte_cryptodev_trace_stats_reset(dev_id); > + > if (!rte_cryptodev_is_valid_dev(dev_id)) { > CDEV_LOG_ERR("Invalid dev_id=%" PRIu8, dev_id); > return; > @@ -1597,6 +1659,9 @@ rte_cryptodev_info_get(uint8_t dev_id, struct rte_cryptodev_info *dev_info) > > dev_info->driver_name = dev->device->driver->name; > dev_info->device = dev->device; > + > + rte_cryptodev_trace_info_get(dev_id); > + > } > > int > @@ -1639,6 +1704,8 @@ rte_cryptodev_callback_register(uint8_t dev_id, > } > > rte_spinlock_unlock(&rte_cryptodev_cb_lock); > + > + rte_cryptodev_trace_callback_register(dev_id, event, cb_fn); > return (user_cb == NULL) ? -ENOMEM : 0; > } > > @@ -1685,6 +1752,8 @@ rte_cryptodev_callback_unregister(uint8_t dev_id, > } > > rte_spinlock_unlock(&rte_cryptodev_cb_lock); > + > + rte_cryptodev_trace_callback_unregister(dev_id, event, cb_fn); > return ret; > } > > @@ -1695,6 +1764,7 @@ rte_cryptodev_pmd_callback_process(struct rte_cryptodev *dev, > struct rte_cryptodev_callback *cb_lst; > struct rte_cryptodev_callback dev_cb; > > + rte_cryptodev_trace_pmd_callback_process(dev, event); > rte_spinlock_lock(&rte_cryptodev_cb_lock); > TAILQ_FOREACH(cb_lst, &(dev->link_intr_cbs), next) { > if (cb_lst->cb_fn == NULL || cb_lst->event != event) > @@ -2117,6 +2187,9 @@ rte_cryptodev_sym_get_private_session_size(uint8_t dev_id) > > priv_sess_size = (*dev->dev_ops->sym_session_get_size)(dev); > > + rte_cryptodev_trace_sym_get_private_session_size(dev_id, > + priv_sess_size); > + > return priv_sess_size; > } > > @@ -2136,6 +2209,9 @@ rte_cryptodev_asym_get_private_session_size(uint8_t dev_id) > > priv_sess_size = (*dev->dev_ops->asym_session_get_size)(dev); > > + rte_cryptodev_trace_asym_get_private_session_size(dev_id, > + priv_sess_size); > + > return priv_sess_size; > } > > @@ -2152,6 +2228,9 @@ rte_cryptodev_sym_session_set_user_data( > return -ENOMEM; > > rte_memcpy(sess->sess_data + sess->nb_drivers, data, size); > + > + rte_cryptodev_trace_sym_session_set_user_data(sess, data, size); > + > return 0; > } > > @@ -2162,6 +2241,8 @@ rte_cryptodev_sym_session_get_user_data( > if (sess == NULL || sess->user_data_sz == 0) > return NULL; > > + rte_cryptodev_trace_sym_session_get_user_data(sess); > + > return (void *)(sess->sess_data + sess->nb_drivers); > } > > @@ -2178,6 +2259,9 @@ rte_cryptodev_asym_session_set_user_data(void *session, void *data, uint16_t siz > rte_memcpy(sess->sess_private_data + > sess->max_priv_data_sz, > data, size); > + > + rte_cryptodev_trace_asym_session_set_user_data(sess, data, size); > + > return 0; > } > > @@ -2188,6 +2272,8 @@ rte_cryptodev_asym_session_get_user_data(void *session) > if (sess == NULL || sess->user_data_sz == 0) > return NULL; > > + rte_cryptodev_trace_asym_session_get_user_data(sess); > + > return (void *)(sess->sess_private_data + > sess->max_priv_data_sz); > } > @@ -2207,6 +2293,8 @@ rte_cryptodev_sym_cpu_crypto_process(uint8_t dev_id, > { > struct rte_cryptodev *dev; > > + rte_cryptodev_trace_sym_cpu_crypto_process(dev_id, sess); > + > if (!rte_cryptodev_is_valid_dev(dev_id)) { > sym_crypto_fill_status(vec, EINVAL); > return 0; > @@ -2230,6 +2318,8 @@ rte_cryptodev_get_raw_dp_ctx_size(uint8_t dev_id) > int32_t size = sizeof(struct rte_crypto_raw_dp_ctx); > int32_t priv_size; > > + rte_cryptodev_trace_get_raw_dp_ctx_size(dev_id); > + > if (!rte_cryptodev_is_valid_dev(dev_id)) > return -EINVAL; > > @@ -2256,6 +2346,8 @@ rte_cryptodev_configure_raw_dp_ctx(uint8_t dev_id, uint16_t qp_id, > { > struct rte_cryptodev *dev; > > + rte_cryptodev_trace_configure_raw_dp_ctx(dev_id, qp_id, sess_type); > + > if (!rte_cryptodev_get_qp_status(dev_id, qp_id)) > return -EINVAL; > > @@ -2280,6 +2372,9 @@ rte_cryptodev_session_event_mdata_set(uint8_t dev_id, void *sess, > if (sess == NULL || ev_mdata == NULL) > return -EINVAL; > > + rte_cryptodev_trace_session_event_mdata_set(dev_id, sess, op_type, > + sess_type, ev_mdata, size); > + > if (!rte_cryptodev_is_valid_dev(dev_id)) > goto skip_pmd_op; > > @@ -2429,6 +2524,7 @@ rte_crypto_op_pool_create(const char *name, enum rte_crypto_op_type type, > priv->priv_size = priv_size; > priv->type = type; > > + rte_cryptodev_trace_op_pool_create(name, socket_id, type, nb_elts, mp); > return mp; > } > > @@ -2441,6 +2537,8 @@ rte_cryptodev_pmd_create_dev_name(char *name, const char *dev_name_prefix) > if (name == NULL) > return -EINVAL; > > + rte_cryptodev_trace_pmd_create_dev_name(dev_name_prefix); > + > for (i = 0; i < RTE_CRYPTO_MAX_DEVS; i++) { > int ret = snprintf(name, RTE_CRYPTODEV_NAME_MAX_LEN, > "%s_%u", dev_name_prefix, i); > @@ -2467,6 +2565,8 @@ rte_cryptodev_driver_id_get(const char *name) > struct cryptodev_driver *driver; > const char *driver_name; > > + rte_cryptodev_trace_driver_id_get(name); > + > if (name == NULL) { > RTE_LOG(DEBUG, CRYPTODEV, "name pointer NULL"); > return -1; > @@ -2494,6 +2594,8 @@ rte_cryptodev_name_get(uint8_t dev_id) > if (dev == NULL) > return NULL; > > + rte_cryptodev_trace_name_get(dev_id, dev->data->name); > + > return dev->data->name; > } > > @@ -2503,8 +2605,11 @@ rte_cryptodev_driver_name_get(uint8_t driver_id) > struct cryptodev_driver *driver; > > TAILQ_FOREACH(driver, &cryptodev_driver_list, next) > - if (driver->id == driver_id) > + if (driver->id == driver_id) { > + rte_cryptodev_trace_driver_name_get(driver_id, > + driver->driver->name); > return driver->driver->name; > + } > return NULL; > } > > @@ -2517,6 +2622,8 @@ rte_cryptodev_allocate_driver(struct cryptodev_driver *crypto_drv, > > TAILQ_INSERT_TAIL(&cryptodev_driver_list, crypto_drv, next); > > + rte_cryptodev_trace_allocate_driver(drv->name); > + > return nb_drivers++; > } > > diff --git a/lib/cryptodev/rte_cryptodev_trace.h b/lib/cryptodev/rte_cryptodev_trace.h > index a3f6048e7d..84991c5b0a 100644 > --- a/lib/cryptodev/rte_cryptodev_trace.h > +++ b/lib/cryptodev/rte_cryptodev_trace.h > @@ -18,6 +18,7 @@ extern "C" { > #include > > #include "rte_cryptodev.h" > +#include "cryptodev_pmd.h" > > RTE_TRACE_POINT( > rte_cryptodev_trace_configure, > @@ -138,6 +139,428 @@ RTE_TRACE_POINT( > rte_trace_point_emit_ptr(sess); > ) > > +RTE_TRACE_POINT( > + rte_cryptodev_trace_callback_register, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id, > + enum rte_cryptodev_event_type event, const void *cb_fn), > + rte_trace_point_emit_u8(dev_id); > + rte_trace_point_emit_int(event); > + rte_trace_point_emit_ptr(cb_fn); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_callback_unregister, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id, > + enum rte_cryptodev_event_type event, const void *cb_fn), > + rte_trace_point_emit_u8(dev_id); > + rte_trace_point_emit_int(event); > + rte_trace_point_emit_ptr(cb_fn); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_device_count_by_driver, > + RTE_TRACE_POINT_ARGS(uint8_t driver_id, uint8_t dev_count), > + rte_trace_point_emit_u8(driver_id); > + rte_trace_point_emit_u8(dev_count); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_devices_get, > + RTE_TRACE_POINT_ARGS(const char *driver_name, uint8_t count), > + rte_trace_point_emit_string(driver_name); > + rte_trace_point_emit_u8(count); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_driver_id_get, > + RTE_TRACE_POINT_ARGS(const char *name), > + rte_trace_point_emit_string(name); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_driver_name_get, > + RTE_TRACE_POINT_ARGS(uint8_t driver_id, const char *name), > + rte_trace_point_emit_u8(driver_id); > + rte_trace_point_emit_string(name); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_get_aead_algo_enum, > + RTE_TRACE_POINT_ARGS(const char *algo_string), > + rte_trace_point_emit_string(algo_string); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_get_auth_algo_enum, > + RTE_TRACE_POINT_ARGS(const char *algo_string), > + rte_trace_point_emit_string(algo_string); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_get_cipher_algo_enum, > + RTE_TRACE_POINT_ARGS(const char *algo_string), > + rte_trace_point_emit_string(algo_string); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_get_dev_id, > + RTE_TRACE_POINT_ARGS(const char *name), > + rte_trace_point_emit_string(name); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_get_feature_name, > + RTE_TRACE_POINT_ARGS(uint64_t flag), > + rte_trace_point_emit_u64(flag); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_get_sec_ctx, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id), > + rte_trace_point_emit_u8(dev_id); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_info_get, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id), > + rte_trace_point_emit_u8(dev_id); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_is_valid_dev, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id), > + rte_trace_point_emit_u8(dev_id); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_name_get, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id, const char *name), > + rte_trace_point_emit_u8(dev_id); > + rte_trace_point_emit_string(name); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_queue_pair_count, > + RTE_TRACE_POINT_ARGS(const struct rte_cryptodev *dev), > + rte_trace_point_emit_ptr(dev); > + rte_trace_point_emit_string(dev->data->name); > + rte_trace_point_emit_u8(dev->data->socket_id); > + rte_trace_point_emit_u8(dev->data->dev_id); > + rte_trace_point_emit_u16(dev->data->nb_queue_pairs); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_socket_id, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id, const char *name, int socket_id), > + rte_trace_point_emit_u8(dev_id); > + rte_trace_point_emit_string(name); > + rte_trace_point_emit_int(socket_id); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_stats_get, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id, > + const struct rte_cryptodev_stats *stats), > + rte_trace_point_emit_u8(dev_id); > + rte_trace_point_emit_u64(stats->enqueued_count); > + rte_trace_point_emit_u64(stats->dequeued_count); > + rte_trace_point_emit_u64(stats->enqueue_err_count); > + rte_trace_point_emit_u64(stats->dequeue_err_count); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_stats_reset, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id), > + rte_trace_point_emit_u8(dev_id); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_sym_capability_check_aead, > + RTE_TRACE_POINT_ARGS( > + const struct rte_cryptodev_symmetric_capability *capability, > + uint16_t key_size, uint16_t digest_size, uint16_t aad_size, > + uint16_t iv_size), > + rte_trace_point_emit_ptr(capability); > + rte_trace_point_emit_int(capability->xform_type); > + rte_trace_point_emit_u16(key_size); > + rte_trace_point_emit_u16(digest_size); > + rte_trace_point_emit_u16(aad_size); > + rte_trace_point_emit_u16(iv_size); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_sym_capability_check_auth, > + RTE_TRACE_POINT_ARGS( > + const struct rte_cryptodev_symmetric_capability *capability, > + uint16_t key_size, uint16_t digest_size, uint16_t iv_size), > + rte_trace_point_emit_ptr(capability); > + rte_trace_point_emit_int(capability->xform_type); > + rte_trace_point_emit_u16(key_size); > + rte_trace_point_emit_u16(digest_size); > + rte_trace_point_emit_u16(iv_size); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_sym_capability_check_cipher, > + RTE_TRACE_POINT_ARGS( > + const struct rte_cryptodev_symmetric_capability *capability, > + uint16_t key_size, uint16_t iv_size), > + rte_trace_point_emit_ptr(capability); > + rte_trace_point_emit_int(capability->xform_type); > + rte_trace_point_emit_u16(key_size); > + rte_trace_point_emit_u16(iv_size); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_sym_capability_get, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id, const char *driver_name, > + uint8_t driver_id, int idx_type), > + rte_trace_point_emit_u8(dev_id); > + rte_trace_point_emit_string(driver_name); > + rte_trace_point_emit_u8(driver_id); > + rte_trace_point_emit_int(idx_type); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_sym_get_private_session_size, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id, uint32_t priv_sess_size), > + rte_trace_point_emit_u8(dev_id); > + rte_trace_point_emit_u32(priv_sess_size); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_asym_capability_get, > + RTE_TRACE_POINT_ARGS(const char *driver_name, uint8_t driver_id, > + int idx_type), > + rte_trace_point_emit_string(driver_name); > + rte_trace_point_emit_u8(driver_id); > + rte_trace_point_emit_int(idx_type); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_asym_get_private_session_size, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id, uint32_t priv_sess_size), > + rte_trace_point_emit_u8(dev_id); > + rte_trace_point_emit_u32(priv_sess_size); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_asym_get_xform_enum, > + RTE_TRACE_POINT_ARGS(const char *xform_string), > + rte_trace_point_emit_string(xform_string); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_asym_xform_capability_check_modlen, > + RTE_TRACE_POINT_ARGS(const void *capability, uint16_t modlen), > + rte_trace_point_emit_ptr(capability); > + rte_trace_point_emit_u16(modlen); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_sym_cpu_crypto_process, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id, const void *sess), > + rte_trace_point_emit_u8(dev_id); > + rte_trace_point_emit_ptr(sess); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_sym_get_existing_header_session_size, > + RTE_TRACE_POINT_ARGS(struct rte_cryptodev_sym_session *sess), > + rte_trace_point_emit_ptr(sess); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_sym_session_get_user_data, > + RTE_TRACE_POINT_ARGS(const void *sess), > + rte_trace_point_emit_ptr(sess); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_sym_session_set_user_data, > + RTE_TRACE_POINT_ARGS(const void *sess, const void *data, uint16_t size), > + rte_trace_point_emit_ptr(sess); > + rte_trace_point_emit_ptr(data); > + rte_trace_point_emit_u16(size); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_get_qp_status, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id, uint16_t queue_pair_id), > + rte_trace_point_emit_u8(dev_id); > + rte_trace_point_emit_u16(queue_pair_id); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_configure_raw_dp_ctx, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id, uint16_t qp_id, int sess_type), > + rte_trace_point_emit_u8(dev_id); > + rte_trace_point_emit_u16(qp_id); > + rte_trace_point_emit_int(sess_type); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_get_raw_dp_ctx_size, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id), > + rte_trace_point_emit_u8(dev_id); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_add_deq_callback, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id, uint16_t qp_id, const void *cb_fn), > + rte_trace_point_emit_u8(dev_id); > + rte_trace_point_emit_u16(qp_id); > + rte_trace_point_emit_ptr(cb_fn); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_add_enq_callback, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id, uint16_t qp_id, const void *cb_fn), > + rte_trace_point_emit_u8(dev_id); > + rte_trace_point_emit_u16(qp_id); > + rte_trace_point_emit_ptr(cb_fn); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_remove_deq_callback, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id, uint16_t qp_id, const void *fn), > + rte_trace_point_emit_u8(dev_id); > + rte_trace_point_emit_u16(qp_id); > + rte_trace_point_emit_ptr(fn); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_remove_enq_callback, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id, uint16_t qp_id, const void *fn), > + rte_trace_point_emit_u8(dev_id); > + rte_trace_point_emit_u16(qp_id); > + rte_trace_point_emit_ptr(fn); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_asym_session_get_user_data, > + RTE_TRACE_POINT_ARGS(const void *sess), > + rte_trace_point_emit_ptr(sess); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_asym_session_set_user_data, > + RTE_TRACE_POINT_ARGS(const void *sess, const void *data, uint16_t size), > + rte_trace_point_emit_ptr(sess); > + rte_trace_point_emit_ptr(data); > + rte_trace_point_emit_u16(size); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_session_event_mdata_set, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id, const void *sess, int op_type, > + int sess_type, const void *ev_mdata, uint16_t size), > + rte_trace_point_emit_u8(dev_id); > + rte_trace_point_emit_ptr(sess); > + rte_trace_point_emit_int(op_type); > + rte_trace_point_emit_int(sess_type); > + rte_trace_point_emit_ptr(ev_mdata); > + rte_trace_point_emit_u16(size); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_allocate_driver, > + RTE_TRACE_POINT_ARGS(const char *name), > + rte_trace_point_emit_string(name); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_pmd_allocate, > + RTE_TRACE_POINT_ARGS(const struct rte_cryptodev *cryptodev), > + rte_trace_point_emit_ptr(cryptodev); > + rte_trace_point_emit_string(cryptodev->data->name); > + rte_trace_point_emit_u8(cryptodev->data->socket_id); > + rte_trace_point_emit_u8(cryptodev->data->dev_id); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_pmd_callback_process, > + RTE_TRACE_POINT_ARGS(struct rte_cryptodev *dev, > + enum rte_cryptodev_event_type event), > + rte_trace_point_emit_ptr(dev); > + rte_trace_point_emit_string(dev->data->name); > + rte_trace_point_emit_u8(dev->data->socket_id); > + rte_trace_point_emit_u8(dev->data->dev_id); > + rte_trace_point_emit_int(event); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_pmd_create, > + RTE_TRACE_POINT_ARGS(const char *name, int socket_id, > + const void *cryptodev), > + rte_trace_point_emit_string(name); > + rte_trace_point_emit_int(socket_id); > + rte_trace_point_emit_ptr(cryptodev); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_pmd_create_dev_name, > + RTE_TRACE_POINT_ARGS(const char *dev_name_prefix), > + rte_trace_point_emit_string(dev_name_prefix); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_pmd_destroy, > + RTE_TRACE_POINT_ARGS(const struct rte_cryptodev *cryptodev), > + rte_trace_point_emit_ptr(cryptodev); > + rte_trace_point_emit_string(cryptodev->data->name); > + rte_trace_point_emit_u8(cryptodev->data->socket_id); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_pmd_get_dev, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id), > + rte_trace_point_emit_u8(dev_id); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_pmd_get_named_dev, > + RTE_TRACE_POINT_ARGS(const char *name), > + rte_trace_point_emit_string(name); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_pmd_parse_input_args, > + RTE_TRACE_POINT_ARGS(char *name, int socket_id, > + uint32_t max_nb_queue_pairs), > + rte_trace_point_emit_string(name); > + rte_trace_point_emit_int(socket_id); > + rte_trace_point_emit_u32(max_nb_queue_pairs); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_pmd_probing_finish, > + RTE_TRACE_POINT_ARGS(const struct rte_cryptodev *cryptodev), > + rte_trace_point_emit_ptr(cryptodev); > + rte_trace_point_emit_string(cryptodev->data->name); > + rte_trace_point_emit_u8(cryptodev->data->socket_id); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_pmd_release_device, > + RTE_TRACE_POINT_ARGS(const struct rte_cryptodev *cryptodev), > + rte_trace_point_emit_ptr(cryptodev); > + rte_trace_point_emit_string(cryptodev->data->name); > + rte_trace_point_emit_u8(cryptodev->data->socket_id); > + rte_trace_point_emit_u8(cryptodev->data->dev_id); > +) > + > +RTE_TRACE_POINT( > + rte_cryptodev_trace_op_pool_create, > + RTE_TRACE_POINT_ARGS(const char *name, int socket_id, int type, > + uint32_t nb_elts, const void *mp), > + rte_trace_point_emit_string(name); > + rte_trace_point_emit_int(socket_id); > + rte_trace_point_emit_int(type); > + rte_trace_point_emit_u32(nb_elts); > + rte_trace_point_emit_ptr(mp); > +) > + > #ifdef __cplusplus > } > #endif > diff --git a/lib/cryptodev/rte_cryptodev_trace_fp.h b/lib/cryptodev/rte_cryptodev_trace_fp.h > index 9218997c14..03f4503d34 100644 > --- a/lib/cryptodev/rte_cryptodev_trace_fp.h > +++ b/lib/cryptodev/rte_cryptodev_trace_fp.h > @@ -31,6 +31,12 @@ RTE_TRACE_POINT_FP( > rte_trace_point_emit_u16(nb_ops); > ) > > +RTE_TRACE_POINT_FP( > + rte_cryptodev_trace_session_event_mdata_get, > + RTE_TRACE_POINT_ARGS(uint8_t type), > + rte_trace_point_emit_u8(type); > +) > + > #ifdef __cplusplus > } > #endif > diff --git a/lib/cryptodev/version.map b/lib/cryptodev/version.map > index 5aee87c6f7..a788185229 100644 > --- a/lib/cryptodev/version.map > +++ b/lib/cryptodev/version.map > @@ -109,6 +109,63 @@ EXPERIMENTAL { > #added in 22.07 > rte_cryptodev_session_event_mdata_set; > rte_crypto_asym_ke_strings; > + > + #added in 22.11 > + __rte_cryptodev_trace_add_deq_callback; > + __rte_cryptodev_trace_add_enq_callback; > + __rte_cryptodev_trace_allocate_driver; > + __rte_cryptodev_trace_asym_capability_get; > + __rte_cryptodev_trace_asym_get_private_session_size; > + __rte_cryptodev_trace_asym_get_xform_enum; > + __rte_cryptodev_trace_asym_session_get_user_data; > + __rte_cryptodev_trace_asym_session_set_user_data; > + __rte_cryptodev_trace_asym_xform_capability_check_modlen; > + __rte_cryptodev_trace_callback_register; > + __rte_cryptodev_trace_callback_unregister; > + __rte_cryptodev_trace_configure_raw_dp_ctx; > + __rte_cryptodev_trace_device_count_by_driver; > + __rte_cryptodev_trace_devices_get; > + __rte_cryptodev_trace_driver_id_get; > + __rte_cryptodev_trace_driver_name_get; > + __rte_cryptodev_trace_get_aead_algo_enum; > + __rte_cryptodev_trace_get_auth_algo_enum; > + __rte_cryptodev_trace_get_cipher_algo_enum; > + __rte_cryptodev_trace_get_dev_id; > + __rte_cryptodev_trace_get_feature_name; > + __rte_cryptodev_trace_get_qp_status; > + __rte_cryptodev_trace_get_raw_dp_ctx_size; > + __rte_cryptodev_trace_get_sec_ctx; > + __rte_cryptodev_trace_info_get; > + __rte_cryptodev_trace_is_valid_dev; > + __rte_cryptodev_trace_name_get; > + __rte_cryptodev_trace_op_pool_create; > + __rte_cryptodev_trace_pmd_allocate; > + __rte_cryptodev_trace_pmd_callback_process; > + __rte_cryptodev_trace_pmd_create; > + __rte_cryptodev_trace_pmd_create_dev_name; > + __rte_cryptodev_trace_pmd_destroy; > + __rte_cryptodev_trace_pmd_get_dev; > + __rte_cryptodev_trace_pmd_get_named_dev; > + __rte_cryptodev_trace_pmd_parse_input_args; > + __rte_cryptodev_trace_pmd_probing_finish; > + __rte_cryptodev_trace_pmd_release_device; > + __rte_cryptodev_trace_queue_pair_count; > + __rte_cryptodev_trace_remove_deq_callback; > + __rte_cryptodev_trace_remove_enq_callback; > + __rte_cryptodev_trace_session_event_mdata_get; > + __rte_cryptodev_trace_session_event_mdata_set; > + __rte_cryptodev_trace_socket_id; > + __rte_cryptodev_trace_stats_get; > + __rte_cryptodev_trace_stats_reset; > + __rte_cryptodev_trace_sym_capability_check_aead; > + __rte_cryptodev_trace_sym_capability_check_auth; > + __rte_cryptodev_trace_sym_capability_check_cipher; > + __rte_cryptodev_trace_sym_capability_get; > + __rte_cryptodev_trace_sym_cpu_crypto_process; > + __rte_cryptodev_trace_sym_get_existing_header_session_size; > + __rte_cryptodev_trace_sym_get_private_session_size; > + __rte_cryptodev_trace_sym_session_get_user_data; > + __rte_cryptodev_trace_sym_session_set_user_data; > }; > > INTERNAL { > -- > 2.25.1 >