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 E9BDBA00C5; Mon, 19 Dec 2022 15:11:28 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id D095E40685; Mon, 19 Dec 2022 15:11:28 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by mails.dpdk.org (Postfix) with ESMTP id 68F9E40146 for ; Mon, 19 Dec 2022 15:11:26 +0100 (CET) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 2BJAR3WJ006554; Mon, 19 Dec 2022 06:11:25 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : mime-version : content-transfer-encoding : content-type; s=pfpt0220; bh=yQGfrhI30d6/Cm17xvYXbbbg9iCuHKu8rrXYa8NljZw=; b=L7uOJFZIp3CfkWBe997yJsnJTF47gMXPluC+sII+xUygJ4KFBkrr3/8kxwpNfVB7rb0w MTV+VBhNAkKxI21XKJY+dcL0++ZK9v1Y2uV/Fl/7R+53Mp4oHUR3S6zsyaAHcFe6YURK gBkoHSJYXMpQPtCvH5Jq5Z9OQPeh/dE3RMbjza40kj/20JybRLaxzzBw+WUKsidG+70C qftTsWksFu4ONfeN/p5okk1o/tr/Ti5FoH9apdDjz5YCgEmWqqyPC3zk/igQs9in3KA4 2ynpNidM54XSn5kKY0KbPm8Ce4OS0UWwJf1dBy61suP4ju32eenKZagl0ms8d/jJKE03 /A== Received: from dc5-exch01.marvell.com ([199.233.59.181]) by mx0a-0016f401.pphosted.com (PPS) with ESMTPS id 3mjnanrym3-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Mon, 19 Dec 2022 06:11:25 -0800 Received: from DC5-EXCH02.marvell.com (10.69.176.39) by DC5-EXCH01.marvell.com (10.69.176.38) with Microsoft SMTP Server (TLS) id 15.0.1497.42; Mon, 19 Dec 2022 06:11:23 -0800 Received: from maili.marvell.com (10.69.176.80) by DC5-EXCH02.marvell.com (10.69.176.39) with Microsoft SMTP Server id 15.0.1497.42 via Frontend Transport; Mon, 19 Dec 2022 06:11:23 -0800 Received: from localhost.localdomain (unknown [10.28.36.157]) by maili.marvell.com (Postfix) with ESMTP id 09F023F7054; Mon, 19 Dec 2022 06:11:20 -0800 (PST) From: Amit Prakash Shukla To: Jerin Jacob , Abhinandan Gujjar , Naga Harish K S V , Erik Gabriel Carrillo CC: , Amit Prakash Shukla Subject: [PATCH] eventdev: add trace points Date: Mon, 19 Dec 2022 19:41:14 +0530 Message-ID: <20221219141114.1687608-1-amitprakashs@marvell.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Proofpoint-GUID: IOXQq0VlzgStjNvY6-Ad6AtkuqB6lmCa X-Proofpoint-ORIG-GUID: IOXQq0VlzgStjNvY6-Ad6AtkuqB6lmCa X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.923,Hydra:6.0.545,FMLib:17.11.122.1 definitions=2022-12-19_01,2022-12-15_02,2022-06-22_01 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 Add trace points for cryptodev functions. Signed-off-by: Amit Prakash Shukla --- lib/eventdev/eventdev_trace.h | 502 ++++++++++++++++++++++-- lib/eventdev/eventdev_trace_points.c | 123 ++++++ lib/eventdev/rte_event_crypto_adapter.c | 18 +- lib/eventdev/rte_event_eth_rx_adapter.c | 16 + lib/eventdev/rte_event_eth_tx_adapter.c | 4 + lib/eventdev/rte_event_ring.c | 9 + lib/eventdev/rte_event_timer_adapter.c | 6 + lib/eventdev/rte_eventdev.c | 50 ++- lib/eventdev/version.map | 47 +++ 9 files changed, 731 insertions(+), 44 deletions(-) diff --git a/lib/eventdev/eventdev_trace.h b/lib/eventdev/eventdev_trace.h index d48cd58850..9443bbfa83 100644 --- a/lib/eventdev/eventdev_trace.h +++ b/lib/eventdev/eventdev_trace.h @@ -21,6 +21,9 @@ extern "C" { #include "rte_event_crypto_adapter.h" #include "rte_event_eth_rx_adapter.h" #include "rte_event_timer_adapter.h" +#include "eventdev_pmd.h" +#include "cryptodev_pmd.h" +#include "ethdev_driver.h" RTE_TRACE_POINT( rte_eventdev_trace_configure, @@ -63,6 +66,7 @@ RTE_TRACE_POINT( rte_trace_point_emit_u16(port_conf->enqueue_depth); rte_trace_point_emit_u32(port_conf->event_port_cfg); rte_trace_point_emit_int(rc); + rte_trace_point_emit_ptr(port_conf); ) RTE_TRACE_POINT( @@ -106,9 +110,9 @@ RTE_TRACE_POINT( RTE_TRACE_POINT( rte_eventdev_trace_eth_rx_adapter_create, - RTE_TRACE_POINT_ARGS(uint8_t adptr_id, uint8_t dev_id, void *conf_cb, + RTE_TRACE_POINT_ARGS(uint8_t adapter_id, uint8_t dev_id, void *conf_cb, void *conf_arg), - rte_trace_point_emit_u8(adptr_id); + rte_trace_point_emit_u8(adapter_id); rte_trace_point_emit_u8(dev_id); rte_trace_point_emit_ptr(conf_cb); rte_trace_point_emit_ptr(conf_arg); @@ -116,17 +120,17 @@ RTE_TRACE_POINT( RTE_TRACE_POINT( rte_eventdev_trace_eth_rx_adapter_free, - RTE_TRACE_POINT_ARGS(uint8_t adptr_id), - rte_trace_point_emit_u8(adptr_id); + RTE_TRACE_POINT_ARGS(uint8_t adapter_id), + rte_trace_point_emit_u8(adapter_id); ) RTE_TRACE_POINT( rte_eventdev_trace_eth_rx_adapter_queue_add, - RTE_TRACE_POINT_ARGS(uint8_t adptr_id, uint16_t eth_dev_id, + RTE_TRACE_POINT_ARGS(uint8_t adapter_id, uint16_t eth_dev_id, int32_t rx_queue_id, const struct rte_event_eth_rx_adapter_queue_conf *queue_conf, int rc), - rte_trace_point_emit_u8(adptr_id); + rte_trace_point_emit_u8(adapter_id); rte_trace_point_emit_u16(eth_dev_id); rte_trace_point_emit_i32(rx_queue_id); rte_trace_point_emit_u32(queue_conf->rx_queue_flags); @@ -138,9 +142,9 @@ RTE_TRACE_POINT( RTE_TRACE_POINT( rte_eventdev_trace_eth_rx_adapter_queue_del, - RTE_TRACE_POINT_ARGS(uint8_t adptr_id, uint16_t eth_dev_id, + RTE_TRACE_POINT_ARGS(uint8_t adapter_id, uint16_t eth_dev_id, int32_t rx_queue_id, int rc), - rte_trace_point_emit_u8(adptr_id); + rte_trace_point_emit_u8(adapter_id); rte_trace_point_emit_u16(eth_dev_id); rte_trace_point_emit_i32(rx_queue_id); rte_trace_point_emit_int(rc); @@ -148,21 +152,21 @@ RTE_TRACE_POINT( RTE_TRACE_POINT( rte_eventdev_trace_eth_rx_adapter_start, - RTE_TRACE_POINT_ARGS(uint8_t adptr_id), - rte_trace_point_emit_u8(adptr_id); + RTE_TRACE_POINT_ARGS(uint8_t adapter_id), + rte_trace_point_emit_u8(adapter_id); ) RTE_TRACE_POINT( rte_eventdev_trace_eth_rx_adapter_stop, - RTE_TRACE_POINT_ARGS(uint8_t adptr_id), - rte_trace_point_emit_u8(adptr_id); + RTE_TRACE_POINT_ARGS(uint8_t adapter_id), + rte_trace_point_emit_u8(adapter_id); ) RTE_TRACE_POINT( rte_eventdev_trace_eth_tx_adapter_create, - RTE_TRACE_POINT_ARGS(uint8_t adptr_id, uint8_t dev_id, void *conf_cb, + RTE_TRACE_POINT_ARGS(uint8_t adapter_id, uint8_t dev_id, void *conf_cb, struct rte_event_port_conf *port_conf, int rc), - rte_trace_point_emit_u8(adptr_id); + rte_trace_point_emit_u8(adapter_id); rte_trace_point_emit_u8(dev_id); rte_trace_point_emit_i32(port_conf->new_event_threshold); rte_trace_point_emit_u16(port_conf->dequeue_depth); @@ -174,16 +178,16 @@ RTE_TRACE_POINT( RTE_TRACE_POINT( rte_eventdev_trace_eth_tx_adapter_free, - RTE_TRACE_POINT_ARGS(uint8_t adptr_id, int rc), - rte_trace_point_emit_u8(adptr_id); + RTE_TRACE_POINT_ARGS(uint8_t adapter_id, int rc), + rte_trace_point_emit_u8(adapter_id); rte_trace_point_emit_int(rc); ) RTE_TRACE_POINT( rte_eventdev_trace_eth_tx_adapter_queue_add, - RTE_TRACE_POINT_ARGS(uint8_t adptr_id, uint16_t eth_dev_id, + RTE_TRACE_POINT_ARGS(uint8_t adapter_id, uint16_t eth_dev_id, int32_t queue, int rc), - rte_trace_point_emit_u8(adptr_id); + rte_trace_point_emit_u8(adapter_id); rte_trace_point_emit_u16(eth_dev_id); rte_trace_point_emit_i32(queue); rte_trace_point_emit_int(rc); @@ -191,9 +195,9 @@ RTE_TRACE_POINT( RTE_TRACE_POINT( rte_eventdev_trace_eth_tx_adapter_queue_del, - RTE_TRACE_POINT_ARGS(uint8_t adptr_id, uint16_t eth_dev_id, + RTE_TRACE_POINT_ARGS(uint8_t adapter_id, uint16_t eth_dev_id, int32_t queue, int rc), - rte_trace_point_emit_u8(adptr_id); + rte_trace_point_emit_u8(adapter_id); rte_trace_point_emit_u16(eth_dev_id); rte_trace_point_emit_i32(queue); rte_trace_point_emit_int(rc); @@ -201,15 +205,15 @@ RTE_TRACE_POINT( RTE_TRACE_POINT( rte_eventdev_trace_eth_tx_adapter_start, - RTE_TRACE_POINT_ARGS(uint8_t adptr_id, int rc), - rte_trace_point_emit_u8(adptr_id); + RTE_TRACE_POINT_ARGS(uint8_t adapter_id, int rc), + rte_trace_point_emit_u8(adapter_id); rte_trace_point_emit_int(rc); ) RTE_TRACE_POINT( rte_eventdev_trace_eth_tx_adapter_stop, - RTE_TRACE_POINT_ARGS(uint8_t adptr_id, int rc), - rte_trace_point_emit_u8(adptr_id); + RTE_TRACE_POINT_ARGS(uint8_t adapter_id, int rc), + rte_trace_point_emit_u8(adapter_id); rte_trace_point_emit_int(rc); ) @@ -250,22 +254,23 @@ RTE_TRACE_POINT( RTE_TRACE_POINT( rte_eventdev_trace_crypto_adapter_create, - RTE_TRACE_POINT_ARGS(uint8_t adptr_id, uint8_t dev_id, void *adapter, - struct rte_event_port_conf *port_conf, uint8_t mode), - rte_trace_point_emit_u8(adptr_id); + RTE_TRACE_POINT_ARGS(uint8_t id, uint8_t dev_id, + struct rte_event_port_conf *port_config, int mode, int ret), + rte_trace_point_emit_u8(id); rte_trace_point_emit_u8(dev_id); - rte_trace_point_emit_ptr(adapter); - rte_trace_point_emit_u8(mode); - rte_trace_point_emit_i32(port_conf->new_event_threshold); - rte_trace_point_emit_u16(port_conf->dequeue_depth); - rte_trace_point_emit_u16(port_conf->enqueue_depth); - rte_trace_point_emit_u32(port_conf->event_port_cfg); + rte_trace_point_emit_ptr(port_config); + rte_trace_point_emit_i32(port_config->new_event_threshold); + rte_trace_point_emit_u16(port_config->dequeue_depth); + rte_trace_point_emit_u16(port_config->enqueue_depth); + rte_trace_point_emit_u32(port_config->event_port_cfg); + rte_trace_point_emit_int(mode); + rte_trace_point_emit_int(ret); ) RTE_TRACE_POINT( rte_eventdev_trace_crypto_adapter_free, - RTE_TRACE_POINT_ARGS(uint8_t adptr_id, void *adapter), - rte_trace_point_emit_u8(adptr_id); + RTE_TRACE_POINT_ARGS(uint8_t adapter_id, const void *adapter), + rte_trace_point_emit_u8(adapter_id); rte_trace_point_emit_ptr(adapter); ) @@ -282,9 +287,9 @@ RTE_TRACE_POINT( RTE_TRACE_POINT( rte_eventdev_trace_crypto_adapter_queue_pair_del, - RTE_TRACE_POINT_ARGS(uint8_t adptr_id, uint8_t cdev_id, + RTE_TRACE_POINT_ARGS(uint8_t adapter_id, uint8_t cdev_id, int32_t queue_pair_id, int rc), - rte_trace_point_emit_u8(adptr_id); + rte_trace_point_emit_u8(adapter_id); rte_trace_point_emit_u8(cdev_id); rte_trace_point_emit_i32(queue_pair_id); rte_trace_point_emit_int(rc); @@ -292,15 +297,430 @@ RTE_TRACE_POINT( RTE_TRACE_POINT( rte_eventdev_trace_crypto_adapter_start, - RTE_TRACE_POINT_ARGS(uint8_t adptr_id, void *adapter), - rte_trace_point_emit_u8(adptr_id); + RTE_TRACE_POINT_ARGS(uint8_t adapter_id, const void *adapter), + rte_trace_point_emit_u8(adapter_id); rte_trace_point_emit_ptr(adapter); ) RTE_TRACE_POINT( rte_eventdev_trace_crypto_adapter_stop, - RTE_TRACE_POINT_ARGS(uint8_t adptr_id), - rte_trace_point_emit_u8(adptr_id); + RTE_TRACE_POINT_ARGS(uint8_t adapter_id), + rte_trace_point_emit_u8(adapter_id); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_crypto_adapter_event_port_get, + RTE_TRACE_POINT_ARGS(uint8_t id, uint8_t event_port_id), + rte_trace_point_emit_u8(id); + rte_trace_point_emit_u8(event_port_id); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_crypto_adapter_service_id_get, + RTE_TRACE_POINT_ARGS(uint8_t id, uint32_t service_id), + rte_trace_point_emit_u8(id); + rte_trace_point_emit_u32(service_id); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_attr_get, + RTE_TRACE_POINT_ARGS(const struct rte_eventdev *dev, uint32_t attr_id, + uint32_t attr_value), + rte_trace_point_emit_ptr(dev); + rte_trace_point_emit_string(dev->data->name); + rte_trace_point_emit_u8(dev->data->dev_id); + rte_trace_point_emit_int(dev->data->socket_id); + rte_trace_point_emit_u32(attr_id); + rte_trace_point_emit_u32(attr_value); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_dump, + RTE_TRACE_POINT_ARGS(uint8_t dev_id, const void *f), + rte_trace_point_emit_u8(dev_id); + rte_trace_point_emit_ptr(f); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_get_dev_id, + RTE_TRACE_POINT_ARGS(const char *name, int dev_id), + rte_trace_point_emit_string(name); + rte_trace_point_emit_int(dev_id); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_info_get, + RTE_TRACE_POINT_ARGS(const char *name, uint8_t dev_id, int socket_id, + const char *device_name, const char *driver_name), + rte_trace_point_emit_string(name); + rte_trace_point_emit_u8(dev_id); + rte_trace_point_emit_int(socket_id); + rte_trace_point_emit_string(device_name); + rte_trace_point_emit_string(driver_name); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_selftest, + RTE_TRACE_POINT_ARGS(uint8_t dev_id), + rte_trace_point_emit_u8(dev_id); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_service_id_get, + RTE_TRACE_POINT_ARGS(uint8_t dev_id, uint32_t service_id), + rte_trace_point_emit_u8(dev_id); + rte_trace_point_emit_u32(service_id); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_socket_id, + RTE_TRACE_POINT_ARGS(const char *name, uint8_t dev_id, int socket_id), + rte_trace_point_emit_string(name); + rte_trace_point_emit_u8(dev_id); + rte_trace_point_emit_int(socket_id); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_stop_flush_callback_register, + RTE_TRACE_POINT_ARGS(uint8_t dev_id, + eventdev_stop_flush_t callback, void *userdata), + rte_trace_point_emit_u8(dev_id); + rte_trace_point_emit_ptr(callback); + rte_trace_point_emit_ptr(userdata); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_eth_rx_adapter_caps_get, + RTE_TRACE_POINT_ARGS(const char *name, uint8_t dev_id, int socket_id, + uint16_t eth_port_id), + rte_trace_point_emit_string(name); + rte_trace_point_emit_u8(dev_id); + rte_trace_point_emit_int(socket_id); + rte_trace_point_emit_u16(eth_port_id); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_eth_rx_adapter_cb_register, + RTE_TRACE_POINT_ARGS(uint8_t id, uint16_t eth_dev_id, const void *cb_fn, + const void *cb_arg), + rte_trace_point_emit_u8(id); + rte_trace_point_emit_u16(eth_dev_id); + rte_trace_point_emit_ptr(cb_fn); + rte_trace_point_emit_ptr(cb_arg); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_eth_rx_adapter_create_with_params, + RTE_TRACE_POINT_ARGS(uint8_t id, uint8_t dev_id, + const struct rte_event_port_conf *port_config, + const struct rte_event_eth_rx_adapter_params *rxa_params, + int ret), + rte_trace_point_emit_u8(id); + rte_trace_point_emit_u8(dev_id); + rte_trace_point_emit_ptr(port_config); + rte_trace_point_emit_i32(port_config->new_event_threshold); + rte_trace_point_emit_u16(port_config->dequeue_depth); + rte_trace_point_emit_u16(port_config->enqueue_depth); + rte_trace_point_emit_u32(port_config->event_port_cfg); + rte_trace_point_emit_ptr(rxa_params); + rte_trace_point_emit_u16(rxa_params->event_buf_size); + rte_trace_point_emit_int(ret); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_eth_rx_adapter_service_id_get, + RTE_TRACE_POINT_ARGS(uint8_t id, uint32_t service_id), + rte_trace_point_emit_u8(id); + rte_trace_point_emit_u32(service_id); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_eth_rx_adapter_vector_limits_get, + RTE_TRACE_POINT_ARGS(uint8_t dev_id, uint16_t eth_port_id, + uint16_t min_sz, uint16_t max_sz, uint8_t log2_sz, + uint64_t min_timeout_ns, uint64_t max_timeout_ns, int ret), + rte_trace_point_emit_u8(dev_id); + rte_trace_point_emit_u16(eth_port_id); + rte_trace_point_emit_u16(min_sz); + rte_trace_point_emit_u16(max_sz); + rte_trace_point_emit_u8(log2_sz); + rte_trace_point_emit_u64(min_timeout_ns); + rte_trace_point_emit_u64(max_timeout_ns); + rte_trace_point_emit_int(ret); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_eth_tx_adapter_caps_get, + RTE_TRACE_POINT_ARGS(const struct rte_eventdev *dev, + const struct rte_eth_dev *eth_dev, uint16_t eth_port_id), + rte_trace_point_emit_ptr(dev); + rte_trace_point_emit_string(dev->data->name); + rte_trace_point_emit_u8(dev->data->dev_id); + rte_trace_point_emit_int(dev->data->socket_id); + rte_trace_point_emit_ptr(eth_dev); + rte_trace_point_emit_string(eth_dev->data->name); + rte_trace_point_emit_u16(eth_port_id); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_eth_tx_adapter_event_port_get, + RTE_TRACE_POINT_ARGS(uint8_t id, uint8_t event_port_id), + rte_trace_point_emit_u8(id); + rte_trace_point_emit_u8(event_port_id); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_eth_tx_adapter_service_id_get, + RTE_TRACE_POINT_ARGS(uint8_t id, uint32_t service_id), + rte_trace_point_emit_u8(id); + rte_trace_point_emit_u32(service_id); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_port_attr_get, + RTE_TRACE_POINT_ARGS(const struct rte_eventdev *dev, uint8_t port_id, + uint32_t attr_id, uint32_t attr_value), + rte_trace_point_emit_ptr(dev); + rte_trace_point_emit_string(dev->data->name); + rte_trace_point_emit_u8(dev->data->dev_id); + rte_trace_point_emit_int(dev->data->socket_id); + rte_trace_point_emit_u8(port_id); + rte_trace_point_emit_u32(attr_id); + rte_trace_point_emit_u32(attr_value); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_port_default_conf_get, + RTE_TRACE_POINT_ARGS(const struct rte_eventdev *dev, uint8_t port_id, + const struct rte_event_port_conf *port_conf), + rte_trace_point_emit_ptr(dev); + rte_trace_point_emit_string(dev->data->name); + rte_trace_point_emit_u8(dev->data->dev_id); + rte_trace_point_emit_int(dev->data->socket_id); + rte_trace_point_emit_u8(port_id); + rte_trace_point_emit_ptr(port_conf); + rte_trace_point_emit_i32(port_conf->new_event_threshold); + rte_trace_point_emit_u16(port_conf->dequeue_depth); + rte_trace_point_emit_u16(port_conf->enqueue_depth); + rte_trace_point_emit_u32(port_conf->event_port_cfg); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_port_links_get, + RTE_TRACE_POINT_ARGS(uint8_t dev_id, uint8_t port_id, int count), + rte_trace_point_emit_u8(dev_id); + rte_trace_point_emit_u8(port_id); + rte_trace_point_emit_int(count); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_port_unlinks_in_progress, + RTE_TRACE_POINT_ARGS(uint8_t dev_id, uint8_t port_id), + rte_trace_point_emit_u8(dev_id); + rte_trace_point_emit_u8(port_id); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_queue_attr_get, + RTE_TRACE_POINT_ARGS(const struct rte_eventdev *dev, + const struct rte_event_queue_conf *conf, uint8_t queue_id, + uint32_t attr_id), + rte_trace_point_emit_ptr(dev); + rte_trace_point_emit_string(dev->data->name); + rte_trace_point_emit_u8(dev->data->dev_id); + rte_trace_point_emit_int(dev->data->socket_id); + rte_trace_point_emit_ptr(conf); + rte_trace_point_emit_u32(conf->nb_atomic_flows); + rte_trace_point_emit_u32(conf->nb_atomic_order_sequences); + rte_trace_point_emit_u32(conf->event_queue_cfg); + rte_trace_point_emit_u8(conf->schedule_type); + rte_trace_point_emit_u8(conf->priority); + rte_trace_point_emit_u8(queue_id); + rte_trace_point_emit_u32(attr_id); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_queue_default_conf_get, + RTE_TRACE_POINT_ARGS(const struct rte_eventdev *dev, uint8_t queue_id, + const struct rte_event_queue_conf *queue_conf), + rte_trace_point_emit_ptr(dev); + rte_trace_point_emit_string(dev->data->name); + rte_trace_point_emit_u8(dev->data->dev_id); + rte_trace_point_emit_int(dev->data->socket_id); + rte_trace_point_emit_u8(queue_id); + rte_trace_point_emit_ptr(queue_conf); + rte_trace_point_emit_u32(queue_conf->nb_atomic_flows); + rte_trace_point_emit_u32(queue_conf->nb_atomic_order_sequences); + rte_trace_point_emit_u32(queue_conf->event_queue_cfg); + rte_trace_point_emit_u8(queue_conf->schedule_type); + rte_trace_point_emit_u8(queue_conf->priority); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_ring_create, + RTE_TRACE_POINT_ARGS(const char *name, unsigned int count, + int socket_id, unsigned int flags), + rte_trace_point_emit_string(name); + rte_trace_point_emit_u32(count); + rte_trace_point_emit_int(socket_id); + rte_trace_point_emit_u32(flags); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_ring_free, + RTE_TRACE_POINT_ARGS(const char *name), + rte_trace_point_emit_string(name); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_ring_init, + RTE_TRACE_POINT_ARGS(const void *r, const char *name, + unsigned int count, unsigned int flags), + rte_trace_point_emit_ptr(r); + rte_trace_point_emit_string(name); + rte_trace_point_emit_u32(count); + rte_trace_point_emit_u32(flags); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_ring_lookup, + RTE_TRACE_POINT_ARGS(const char *name), + rte_trace_point_emit_string(name); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_timer_adapter_caps_get, + RTE_TRACE_POINT_ARGS(const char *name, uint8_t dev_id, int socket_id), + rte_trace_point_emit_string(name); + rte_trace_point_emit_u8(dev_id); + rte_trace_point_emit_int(socket_id); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_timer_adapter_get_info, + RTE_TRACE_POINT_ARGS(const struct rte_event_timer_adapter *adapter, + const struct rte_event_timer_adapter_info *adapter_info), + rte_trace_point_emit_ptr(adapter); + rte_trace_point_emit_u8(adapter->data->id); + rte_trace_point_emit_u8(adapter->data->event_dev_id); + rte_trace_point_emit_u32(adapter->data->socket_id); + rte_trace_point_emit_ptr(adapter_info); + rte_trace_point_emit_u64(adapter_info->min_resolution_ns); + rte_trace_point_emit_u64(adapter_info->max_tmo_ns); + rte_trace_point_emit_u32(adapter_info->caps); + rte_trace_point_emit_u16(adapter_info->event_dev_port_id); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_timer_adapter_lookup, + RTE_TRACE_POINT_ARGS(uint16_t adapter_id, const void *adapter), + rte_trace_point_emit_u16(adapter_id); + rte_trace_point_emit_ptr(adapter); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_timer_adapter_service_id_get, + RTE_TRACE_POINT_ARGS(const struct rte_event_timer_adapter *adapter, + uint32_t service_id), + rte_trace_point_emit_ptr(adapter); + rte_trace_point_emit_u32(service_id); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_vector_pool_create, + RTE_TRACE_POINT_ARGS(const void *mp, const char *name, int socket_id, + uint32_t size, uint32_t cache_size, uint32_t elt_size), + rte_trace_point_emit_ptr(mp); + rte_trace_point_emit_string(name); + rte_trace_point_emit_int(socket_id); + rte_trace_point_emit_u32(size); + rte_trace_point_emit_u32(cache_size); + rte_trace_point_emit_u32(elt_size); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_eth_rx_adapter_queue_conf_get, + RTE_TRACE_POINT_ARGS(uint8_t id, uint16_t eth_dev_id, + uint16_t rx_queue_id, const void *queue_conf), + rte_trace_point_emit_u8(id); + rte_trace_point_emit_u16(eth_dev_id); + rte_trace_point_emit_u16(rx_queue_id); + rte_trace_point_emit_ptr(queue_conf); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_queue_attr_set, + RTE_TRACE_POINT_ARGS(uint8_t dev_id, uint8_t queue_id, uint32_t attr_id, + uint32_t attr_value), + rte_trace_point_emit_u8(dev_id); + rte_trace_point_emit_u8(queue_id); + rte_trace_point_emit_u32(attr_id); + rte_trace_point_emit_u32(attr_value); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_port_quiesce, + RTE_TRACE_POINT_ARGS(const struct rte_eventdev *dev, uint8_t port_id), + rte_trace_point_emit_ptr(dev); + rte_trace_point_emit_string(dev->data->name); + rte_trace_point_emit_u8(dev->data->dev_id); + rte_trace_point_emit_int(dev->data->socket_id); + rte_trace_point_emit_u8(port_id); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_crypto_adapter_caps_get, + RTE_TRACE_POINT_ARGS(const struct rte_eventdev *dev, + const struct rte_cryptodev *cdev), + rte_trace_point_emit_ptr(dev); + rte_trace_point_emit_string(dev->data->name); + rte_trace_point_emit_u8(dev->data->dev_id); + rte_trace_point_emit_int(dev->data->socket_id); + rte_trace_point_emit_ptr(cdev); + rte_trace_point_emit_string(cdev->data->name); + rte_trace_point_emit_u8(cdev->data->dev_id); + rte_trace_point_emit_u8(cdev->data->socket_id); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_dequeue_timeout_ticks, + RTE_TRACE_POINT_ARGS(uint8_t dev_id, uint64_t ns, + const void *timeout_ticks), + rte_trace_point_emit_u8(dev_id); + rte_trace_point_emit_u64(ns); + rte_trace_point_emit_ptr(timeout_ticks); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_crypto_adapter_stats_get, + RTE_TRACE_POINT_ARGS(uint8_t id, const void *stats, + uint64_t event_poll_count, uint64_t event_deq_count, + uint64_t crypto_enq_count, uint64_t crypto_enq_fail, + uint64_t crypto_deq_count, uint64_t event_enq_count, + uint64_t event_enq_retry_count, uint64_t event_enq_fail_count), + rte_trace_point_emit_u8(id); + rte_trace_point_emit_ptr(stats); + rte_trace_point_emit_u64(event_poll_count); + rte_trace_point_emit_u64(event_deq_count); + rte_trace_point_emit_u64(crypto_enq_count); + rte_trace_point_emit_u64(crypto_enq_fail); + rte_trace_point_emit_u64(crypto_deq_count); + rte_trace_point_emit_u64(event_enq_count); + rte_trace_point_emit_u64(event_enq_retry_count); + rte_trace_point_emit_u64(event_enq_fail_count); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_crypto_adapter_stats_reset, + RTE_TRACE_POINT_ARGS(uint8_t id), + rte_trace_point_emit_u8(id); +) + +RTE_TRACE_POINT( + rte_eventdev_trace_eth_rx_adapter_stats_get, + RTE_TRACE_POINT_ARGS(uint8_t id, const void *stats), + rte_trace_point_emit_u8(id); + rte_trace_point_emit_ptr(stats); ) #ifdef __cplusplus diff --git a/lib/eventdev/eventdev_trace_points.c b/lib/eventdev/eventdev_trace_points.c index de6b1f4417..a3db2fb0bb 100644 --- a/lib/eventdev/eventdev_trace_points.c +++ b/lib/eventdev/eventdev_trace_points.c @@ -124,3 +124,126 @@ RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_crypto_adapter_stop, RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_crypto_adapter_enqueue, lib.eventdev.crypto.enq) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_crypto_adapter_event_port_get, + lib.eventdev.crypto.adapter_event_port_get) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_crypto_adapter_service_id_get, + lib.eventdev.crypto.adapter_service_id_get) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_attr_get, + lib.eventdev.attr_get) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_dump, + lib.eventdev.dump) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_get_dev_id, + lib.eventdev.get_dev_id) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_info_get, + lib.eventdev.info_get) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_selftest, + lib.eventdev.selftest) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_service_id_get, + lib.eventdev.service_id_get) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_socket_id, + lib.eventdev.socket.id) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_stop_flush_callback_register, + lib.eventdev.stop.flush.callback.register) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_eth_rx_adapter_caps_get, + lib.eventdev.eth.rx.adapter.caps.get) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_eth_rx_adapter_cb_register, + lib.eventdev.eth.rx.adapter.cb.register) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_eth_rx_adapter_service_id_get, + lib.eventdev.eth.rx.adapter.service.id.get) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_eth_rx_adapter_vector_limits_get, + lib.eventdev.eth.rx.adapter.vector.limits.get) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_eth_tx_adapter_caps_get, + lib.eventdev.eth.tx.adapter.caps.get) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_eth_tx_adapter_event_port_get, + lib.eventdev.eth.tx.adapter.event.port.get) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_eth_tx_adapter_service_id_get, + lib.eventdev.eth.tx.adapter.service.id.get) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_port_attr_get, + lib.eventdev.port.attr.get) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_port_default_conf_get, + lib.eventdev.port.default.conf.get) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_port_links_get, + lib.eventdev.port.links.get) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_port_unlinks_in_progress, + lib.eventdev.port.unlinks.in.progress) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_queue_attr_get, + lib.eventdev.queue.attr.get) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_queue_default_conf_get, + lib.eventdev.queue.default.conf.get) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_ring_create, + lib.eventdev.ring.create) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_ring_free, + lib.eventdev.ring.free) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_ring_init, + lib.eventdev.ring.init) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_ring_lookup, + lib.eventdev.ring.lookup) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_timer_adapter_caps_get, + lib.eventdev.timer.adapter.caps.get) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_timer_adapter_get_info, + lib.eventdev.timer.adapter.get.info) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_timer_adapter_lookup, + lib.eventdev.timer.adapter.lookup) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_timer_adapter_service_id_get, + lib.eventdev.timer.adapter.service.id.get) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_vector_pool_create, + lib.eventdev.vector.pool.create) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_eth_rx_adapter_create_with_params, + lib.eventdev.eth.rx.adapter.create.with.params) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_eth_rx_adapter_queue_conf_get, + lib.eventdev.eth.rx.adapter.queue.conf.get) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_queue_attr_set, + lib.eventdev.queue.attr.set) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_port_quiesce, + lib.eventdev.port.quiesce) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_crypto_adapter_caps_get, + lib.eventdev.crypto.adapter.caps.get) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_dequeue_timeout_ticks, + lib.eventdev.dequeue.timeout.ticks) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_crypto_adapter_stats_get, + lib.eventdev.crypto.adapter.stats.get) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_crypto_adapter_stats_reset, + lib.eventdev.crypto.adapter.stats.reset) + +RTE_TRACE_POINT_REGISTER(rte_eventdev_trace_eth_rx_adapter_stats_get, + lib.eventdev.rx.adapter.stats.get) diff --git a/lib/eventdev/rte_event_crypto_adapter.c b/lib/eventdev/rte_event_crypto_adapter.c index 3c585d7b0d..deace64dd6 100644 --- a/lib/eventdev/rte_event_crypto_adapter.c +++ b/lib/eventdev/rte_event_crypto_adapter.c @@ -395,8 +395,6 @@ rte_event_crypto_adapter_create_ext(uint8_t id, uint8_t dev_id, event_crypto_adapter[id] = adapter; - rte_eventdev_trace_crypto_adapter_create(id, dev_id, adapter, conf_arg, - mode); return 0; } @@ -424,6 +422,9 @@ rte_event_crypto_adapter_create(uint8_t id, uint8_t dev_id, if (ret) rte_free(pc); + rte_eventdev_trace_crypto_adapter_create(id, dev_id, port_config, mode, + ret); + return ret; } @@ -1289,6 +1290,12 @@ rte_event_crypto_adapter_stats_get(uint8_t id, stats->crypto_deq_count += dev_stats_sum.crypto_deq_count; stats->event_enq_count += dev_stats_sum.event_enq_count; + rte_eventdev_trace_crypto_adapter_stats_get(id, stats, + stats->event_poll_count, stats->event_deq_count, + stats->crypto_enq_count, stats->crypto_enq_fail, + stats->crypto_deq_count, stats->event_enq_count, + stats->event_enq_retry_count, stats->event_enq_fail_count); + return 0; } @@ -1320,6 +1327,9 @@ rte_event_crypto_adapter_stats_reset(uint8_t id) } memset(&adapter->crypto_stats, 0, sizeof(adapter->crypto_stats)); + + rte_eventdev_trace_crypto_adapter_stats_reset(id); + return 0; } @@ -1337,6 +1347,8 @@ rte_event_crypto_adapter_service_id_get(uint8_t id, uint32_t *service_id) if (adapter->service_inited) *service_id = adapter->service_id; + rte_eventdev_trace_crypto_adapter_service_id_get(id, *service_id); + return adapter->service_inited ? 0 : -ESRCH; } @@ -1353,6 +1365,8 @@ rte_event_crypto_adapter_event_port_get(uint8_t id, uint8_t *event_port_id) *event_port_id = adapter->event_port_id; + rte_eventdev_trace_crypto_adapter_event_port_get(id, *event_port_id); + return 0; } diff --git a/lib/eventdev/rte_event_eth_rx_adapter.c b/lib/eventdev/rte_event_eth_rx_adapter.c index cf7bbd4d69..578448cad4 100644 --- a/lib/eventdev/rte_event_eth_rx_adapter.c +++ b/lib/eventdev/rte_event_eth_rx_adapter.c @@ -2538,6 +2538,9 @@ rte_event_eth_rx_adapter_create_with_params(uint8_t id, uint8_t dev_id, if (ret) rte_free(pc); + rte_eventdev_trace_eth_rx_adapter_create_with_params(id, dev_id, + port_config, rxa_params, ret); + return ret; } @@ -2926,6 +2929,9 @@ rte_event_eth_rx_adapter_vector_limits_get( ret = rxa_sw_vector_limits(limits); } + rte_eventdev_trace_eth_rx_adapter_vector_limits_get(dev_id, eth_port_id, + limits->min_sz, limits->max_sz, limits->log2_sz, + limits->min_timeout_ns, limits->max_timeout_ns, ret); return ret; } @@ -2967,6 +2973,8 @@ rte_event_eth_rx_adapter_stats_get(uint8_t id, uint32_t i, j; int ret; + rte_eventdev_trace_eth_rx_adapter_stats_get(id, stats); + if (rxa_memzone_lookup()) return -ENOMEM; @@ -3200,6 +3208,8 @@ rte_event_eth_rx_adapter_service_id_get(uint8_t id, uint32_t *service_id) if (rx_adapter->service_inited) *service_id = rx_adapter->service_id; + rte_eventdev_trace_eth_rx_adapter_service_id_get(id, *service_id); + return rx_adapter->service_inited ? 0 : -ESRCH; } @@ -3234,6 +3244,9 @@ rte_event_eth_rx_adapter_cb_register(uint8_t id, uint32_t cap; int ret; + rte_eventdev_trace_eth_rx_adapter_cb_register(id, eth_dev_id, cb_fn, + cb_arg); + RTE_EVENT_ETH_RX_ADAPTER_ID_VALID_OR_ERR_RET(id, -EINVAL); RTE_ETH_VALID_PORTID_OR_ERR_RET(eth_dev_id, -EINVAL); @@ -3281,6 +3294,9 @@ rte_event_eth_rx_adapter_queue_conf_get(uint8_t id, struct eth_rx_queue_info *queue_info; int ret; + rte_eventdev_trace_eth_rx_adapter_queue_conf_get(id, eth_dev_id, + rx_queue_id, queue_conf); + if (rxa_memzone_lookup()) return -ENOMEM; diff --git a/lib/eventdev/rte_event_eth_tx_adapter.c b/lib/eventdev/rte_event_eth_tx_adapter.c index 88309d2aaa..ac040db6d9 100644 --- a/lib/eventdev/rte_event_eth_tx_adapter.c +++ b/lib/eventdev/rte_event_eth_tx_adapter.c @@ -985,6 +985,8 @@ txa_service_id_get(uint8_t id, uint32_t *service_id) { struct txa_service_data *txa; + rte_eventdev_trace_eth_tx_adapter_service_id_get(id, *service_id); + txa = txa_service_id_to_data(id); if (txa->service_id == TXA_INVALID_SERVICE_ID) return -ESRCH; @@ -1121,6 +1123,8 @@ rte_event_eth_tx_adapter_create_ext(uint8_t id, uint8_t dev_id, int rte_event_eth_tx_adapter_event_port_get(uint8_t id, uint8_t *event_port_id) { + rte_eventdev_trace_eth_tx_adapter_event_port_get(id, *event_port_id); + TXA_CHECK_OR_ERR_RET(id); return txa_service_event_port_get(id, event_port_id); diff --git a/lib/eventdev/rte_event_ring.c b/lib/eventdev/rte_event_ring.c index c070715148..b965970cf9 100644 --- a/lib/eventdev/rte_event_ring.c +++ b/lib/eventdev/rte_event_ring.c @@ -5,6 +5,7 @@ #include "rte_event_ring.h" +#include "eventdev_trace.h" int rte_event_ring_init(struct rte_event_ring *r, const char *name, @@ -14,6 +15,8 @@ rte_event_ring_init(struct rte_event_ring *r, const char *name, RTE_BUILD_BUG_ON((sizeof(struct rte_event_ring) & RTE_CACHE_LINE_MASK) != 0); + rte_eventdev_trace_ring_init(r, name, count, flags); + /* init the ring structure */ return rte_ring_init(&r->r, name, count, flags); } @@ -23,6 +26,8 @@ struct rte_event_ring * rte_event_ring_create(const char *name, unsigned int count, int socket_id, unsigned int flags) { + rte_eventdev_trace_ring_create(name, count, socket_id, flags); + return (struct rte_event_ring *)rte_ring_create_elem(name, sizeof(struct rte_event), count, socket_id, flags); @@ -32,6 +37,8 @@ rte_event_ring_create(const char *name, unsigned int count, int socket_id, struct rte_event_ring * rte_event_ring_lookup(const char *name) { + rte_eventdev_trace_ring_lookup(name); + return (struct rte_event_ring *)rte_ring_lookup(name); } @@ -39,5 +46,7 @@ rte_event_ring_lookup(const char *name) void rte_event_ring_free(struct rte_event_ring *r) { + rte_eventdev_trace_ring_free(r->r.name); + rte_ring_free((struct rte_ring *)r); } diff --git a/lib/eventdev/rte_event_timer_adapter.c b/lib/eventdev/rte_event_timer_adapter.c index a0f14bf861..04e9b2e475 100644 --- a/lib/eventdev/rte_event_timer_adapter.c +++ b/lib/eventdev/rte_event_timer_adapter.c @@ -271,6 +271,8 @@ rte_event_timer_adapter_get_info(const struct rte_event_timer_adapter *adapter, adapter_info->event_dev_port_id = adapter->data->event_port_id; adapter_info->caps = adapter->data->caps; + rte_eventdev_trace_timer_adapter_get_info(adapter, adapter_info); + return 0; } @@ -382,6 +384,8 @@ rte_event_timer_adapter_lookup(uint16_t adapter_id) adapter->allocated = 1; + rte_eventdev_trace_timer_adapter_lookup(adapter_id, adapter); + return adapter; } @@ -435,6 +439,8 @@ rte_event_timer_adapter_service_id_get(struct rte_event_timer_adapter *adapter, if (adapter->data->service_inited && service_id != NULL) *service_id = adapter->data->service_id; + rte_eventdev_trace_timer_adapter_service_id_get(adapter, *service_id); + return adapter->data->service_inited ? 0 : -ESRCH; } diff --git a/lib/eventdev/rte_eventdev.c b/lib/eventdev/rte_eventdev.c index b0414206d9..0e482434ee 100644 --- a/lib/eventdev/rte_eventdev.c +++ b/lib/eventdev/rte_eventdev.c @@ -62,8 +62,10 @@ rte_event_dev_get_dev_id(const char *name) rte_event_devices[i].dev->driver->name, name, RTE_EVENTDEV_NAME_MAX_LEN) == 0) : 0); if (cmp && (rte_event_devices[i].attached == - RTE_EVENTDEV_ATTACHED)) + RTE_EVENTDEV_ATTACHED)) { + rte_eventdev_trace_get_dev_id(name, i); return i; + } } return -ENODEV; } @@ -76,6 +78,9 @@ rte_event_dev_socket_id(uint8_t dev_id) RTE_EVENTDEV_VALID_DEVID_OR_ERR_RET(dev_id, -EINVAL); dev = &rte_eventdevs[dev_id]; + rte_eventdev_trace_socket_id(dev->data->name, dev->data->dev_id, + dev->data->socket_id); + return dev->data->socket_id; } @@ -99,6 +104,10 @@ rte_event_dev_info_get(uint8_t dev_id, struct rte_event_dev_info *dev_info) dev_info->dequeue_timeout_ns = dev->data->dev_conf.dequeue_timeout_ns; dev_info->dev = dev->dev; + + rte_eventdev_trace_info_get(dev->data->name, dev->data->dev_id, + dev->data->socket_id, dev->dev->name, dev_info->driver_name); + return 0; } @@ -121,6 +130,9 @@ rte_event_eth_rx_adapter_caps_get(uint8_t dev_id, uint16_t eth_port_id, else *caps = 0; + rte_eventdev_trace_eth_rx_adapter_caps_get(dev->data->name, + dev->data->dev_id, dev->data->socket_id, eth_port_id); + return dev->dev_ops->eth_rx_adapter_caps_get ? (*dev->dev_ops->eth_rx_adapter_caps_get)(dev, &rte_eth_devices[eth_port_id], @@ -146,6 +158,9 @@ rte_event_timer_adapter_caps_get(uint8_t dev_id, uint32_t *caps) else *caps = 0; + rte_eventdev_trace_timer_adapter_caps_get(dev->data->name, + dev->data->dev_id, dev->data->socket_id); + return dev->dev_ops->timer_adapter_caps_get ? (*dev->dev_ops->timer_adapter_caps_get)(dev, 0, @@ -176,6 +191,8 @@ rte_event_crypto_adapter_caps_get(uint8_t dev_id, uint8_t cdev_id, else *caps = 0; + rte_eventdev_trace_crypto_adapter_caps_get(dev, cdev); + return dev->dev_ops->crypto_adapter_caps_get ? (*dev->dev_ops->crypto_adapter_caps_get) (dev, cdev, caps) : 0; @@ -202,6 +219,8 @@ rte_event_eth_tx_adapter_caps_get(uint8_t dev_id, uint16_t eth_port_id, else *caps = 0; + rte_eventdev_trace_eth_tx_adapter_caps_get(dev, eth_dev, eth_port_id); + return dev->dev_ops->eth_tx_adapter_caps_get ? (*dev->dev_ops->eth_tx_adapter_caps_get)(dev, eth_dev, @@ -524,6 +543,9 @@ rte_event_queue_default_conf_get(uint8_t dev_id, uint8_t queue_id, return -ENOTSUP; memset(queue_conf, 0, sizeof(struct rte_event_queue_conf)); (*dev->dev_ops->queue_def_conf)(dev, queue_id, queue_conf); + + rte_eventdev_trace_queue_default_conf_get(dev, queue_id, queue_conf); + return 0; } @@ -652,6 +674,9 @@ rte_event_port_default_conf_get(uint8_t dev_id, uint8_t port_id, return -ENOTSUP; memset(port_conf, 0, sizeof(struct rte_event_port_conf)); (*dev->dev_ops->port_def_conf)(dev, port_id, port_conf); + + rte_eventdev_trace_port_default_conf_get(dev, port_id, port_conf); + return 0; } @@ -759,6 +784,8 @@ rte_event_port_quiesce(uint8_t dev_id, uint8_t port_id, return; } + rte_eventdev_trace_port_quiesce(dev, port_id); + if (dev->dev_ops->port_quiesce) (*dev->dev_ops->port_quiesce)(dev, dev->data->ports[port_id], release_cb, args); @@ -789,6 +816,8 @@ rte_event_dev_attr_get(uint8_t dev_id, uint32_t attr_id, return -EINVAL; } + rte_eventdev_trace_attr_get(dev, attr_id, *attr_value); + return 0; } @@ -829,6 +858,9 @@ rte_event_port_attr_get(uint8_t dev_id, uint8_t port_id, uint32_t attr_id, default: return -EINVAL; }; + + rte_eventdev_trace_port_attr_get(dev, port_id, attr_id, *attr_value); + return 0; } @@ -851,6 +883,8 @@ rte_event_queue_attr_get(uint8_t dev_id, uint8_t queue_id, uint32_t attr_id, conf = &dev->data->queues_cfg[queue_id]; + rte_eventdev_trace_queue_attr_get(dev, conf, queue_id, attr_id); + switch (attr_id) { case RTE_EVENT_QUEUE_ATTR_PRIORITY: *attr_value = RTE_EVENT_DEV_PRIORITY_NORMAL; @@ -894,6 +928,8 @@ rte_event_queue_attr_set(uint8_t dev_id, uint8_t queue_id, uint32_t attr_id, { struct rte_eventdev *dev; + rte_eventdev_trace_queue_attr_set(dev_id, queue_id, attr_id, attr_value); + RTE_EVENTDEV_VALID_DEVID_OR_ERR_RET(dev_id, -EINVAL); dev = &rte_eventdevs[dev_id]; if (!is_valid_queue(dev, queue_id)) { @@ -1048,6 +1084,8 @@ rte_event_port_unlinks_in_progress(uint8_t dev_id, uint8_t port_id) { struct rte_eventdev *dev; + rte_eventdev_trace_port_unlinks_in_progress(dev_id, port_id); + RTE_EVENTDEV_VALID_DEVID_OR_ERR_RET(dev_id, -EINVAL); dev = &rte_eventdevs[dev_id]; if (!is_valid_port(dev, port_id)) { @@ -1091,6 +1129,9 @@ rte_event_port_links_get(uint8_t dev_id, uint8_t port_id, ++count; } } + + rte_eventdev_trace_port_links_get(dev_id, port_id, count); + return count; } @@ -1100,6 +1141,8 @@ rte_event_dequeue_timeout_ticks(uint8_t dev_id, uint64_t ns, { struct rte_eventdev *dev; + rte_eventdev_trace_dequeue_timeout_ticks(dev_id, ns, timeout_ticks); + RTE_EVENTDEV_VALID_DEVID_OR_ERR_RET(dev_id, -EINVAL); dev = &rte_eventdevs[dev_id]; if (*dev->dev_ops->timeout_ticks == NULL) @@ -1125,6 +1168,8 @@ rte_event_dev_service_id_get(uint8_t dev_id, uint32_t *service_id) if (dev->data->service_inited) *service_id = dev->data->service_id; + rte_eventdev_trace_service_id_get(dev_id, *service_id); + return dev->data->service_inited ? 0 : -ESRCH; } @@ -1285,6 +1330,9 @@ rte_event_vector_pool_create(const char *name, unsigned int n, if (ret < 0) goto err; + rte_eventdev_trace_vector_pool_create(mp, mp->name, mp->socket_id, + mp->size, mp->cache_size, mp->elt_size); + return mp; err: rte_mempool_free(mp); diff --git a/lib/eventdev/version.map b/lib/eventdev/version.map index dd63ec6f68..ee4e2fd4b3 100644 --- a/lib/eventdev/version.map +++ b/lib/eventdev/version.map @@ -118,6 +118,53 @@ EXPERIMENTAL { rte_event_eth_tx_adapter_instance_get; rte_event_eth_tx_adapter_queue_start; rte_event_eth_tx_adapter_queue_stop; + + # added in 23.03 + __rte_eventdev_trace_eth_rx_adapter_caps_get; + __rte_eventdev_trace_eth_tx_adapter_caps_get; + __rte_eventdev_trace_timer_adapter_caps_get; + __rte_eventdev_trace_crypto_adapter_caps_get; + __rte_eventdev_trace_crypto_adapter_event_port_get; + __rte_eventdev_trace_crypto_adapter_service_id_get; + __rte_eventdev_trace_eth_rx_adapter_cb_register; + __rte_eventdev_trace_eth_rx_adapter_create_with_params; + __rte_eventdev_trace_eth_rx_adapter_queue_conf_get; + __rte_eventdev_trace_eth_rx_adapter_service_id_get; + __rte_eventdev_trace_eth_rx_adapter_vector_limits_get; + __rte_eventdev_trace_eth_tx_adapter_event_port_get; + __rte_eventdev_trace_eth_tx_adapter_service_id_get; + __rte_eventdev_trace_port_attr_get; + __rte_eventdev_trace_port_default_conf_get; + __rte_eventdev_trace_port_links_get; + __rte_eventdev_trace_port_quiesce; + __rte_eventdev_trace_port_unlinks_in_progress; + __rte_eventdev_trace_queue_attr_get; + __rte_eventdev_trace_queue_attr_set; + __rte_eventdev_trace_queue_default_conf_get; + __rte_eventdev_trace_ring_create; + __rte_eventdev_trace_ring_free; + __rte_eventdev_trace_ring_init; + __rte_eventdev_trace_ring_lookup; + __rte_eventdev_trace_timer_adapter_get_info; + __rte_eventdev_trace_timer_adapter_lookup; + __rte_eventdev_trace_timer_adapter_service_id_get; + __rte_eventdev_trace_attr_get; + __rte_eventdev_trace_close; + __rte_eventdev_trace_configure; + __rte_eventdev_trace_dump; + __rte_eventdev_trace_get_dev_id; + __rte_eventdev_trace_info_get; + __rte_eventdev_trace_selftest; + __rte_eventdev_trace_service_id_get; + __rte_eventdev_trace_socket_id; + __rte_eventdev_trace_start; + __rte_eventdev_trace_stop; + __rte_eventdev_trace_stop_flush_callback_register; + __rte_eventdev_trace_vector_pool_create; + __rte_eventdev_trace_dequeue_timeout_ticks; + __rte_eventdev_trace_crypto_adapter_stats_get; + __rte_eventdev_trace_crypto_adapter_stats_reset; + __rte_eventdev_trace_eth_rx_adapter_stats_get; }; INTERNAL { -- 2.25.1