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 C731045B90; Mon, 21 Oct 2024 11:00:45 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id B6BE94065E; Mon, 21 Oct 2024 11:00:45 +0200 (CEST) Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on2056.outbound.protection.outlook.com [40.107.249.56]) by mails.dpdk.org (Postfix) with ESMTP id 349DB4021F for ; Mon, 21 Oct 2024 11:00:39 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=i6qogX8DhjA0ppj4SL3OEUZ63Wt6m16MLXWVSJvZ6OBYFzaiZd1h6r9YFhTYo7tyEzwDzo/8OMSa+ZAkOMDGTebKIgebaa1vympxjgXdC7/ql2qLc15xGOlSJQagAyW35cdOoXLkNi/4mN9Bmlqm3pJQg0ZduMd0UyRqoigQ/qmRg8FimrCxEmUGXEgDprVNV/X//FKR4BZK038YaVh7y6JvmliWYNlh+gIVpvXgw/eOFePhWBQGZOyoy79yKvm1X4B3xBBSjmXH2Z4TfiHysT6BBAAwVw3z7RBnE61qkdJWdeZsOGCrz6jSAmhzJIqEXkbYUfFGWwgMT5GpehaLYA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Ouv/KfNwli40Kf7KMb/K0BRMvagD0XvxmKl9YPg3doM=; b=JHiUXaWSPqX84A+JQyR1cyzOeEg3Paby/Eq9cx52Zp4/b5wASp/rpbpHv0gQfG1YfOc1LYoDV992B7il5iKJeNVijCzWqkj2ZUB/QKZn7htG83EMy6FSeDREJBEVxbl5M+xconSl1L+lrQSBvlOPpRY2hq0xuOy+DQ9KT8iumt7sZcV4PZuBlIF7h+iZcN6Wt/u8woiLVxo01JISRTQxbWSAfU5aX1P/jzMg+26/DlToByiPXD4uAdJKmMvnFNem7XA2I2S8DKzcQ5mVJ4xl9No/yr12uEsvwz3yxio3bFt6YHH06MQoAXvFlG/uYpMGZZG1lIqn2cGtPIpC6RmOXA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 192.176.1.74) smtp.rcpttodomain=dpdk.org smtp.mailfrom=ericsson.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=ericsson.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericsson.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Ouv/KfNwli40Kf7KMb/K0BRMvagD0XvxmKl9YPg3doM=; b=QL61/9VpSsAUTTlC+zz9LWbIXQpzIFHS5Bw83jjtw4yqD3lqQnqrx0/fvPGWI2ouf4F5oFBqB3NkF1ZET7E/p6BugwqKdkY897fj4nWEFhp42Q1GP33W6vWphgT7Sq3RlZOXzflvH5fDM18V9wvu/mTLxhSUh+3mfm9azU1vHOU40xnAk6STR0eLecojXRnj2XcypvR296jEBbdLf86/pg5e/88l1GAY6fmGJI/DEbekeMfxy6gw4fXPMFFjPqAi0gKBmvLizp78K6QAW9CmTJKy2oDgplf+KcTxc27CB39HjxLbSRXwyHoQsjzMff+yELvq/BazXusQvvHyINxgew== Received: from MW4PR04CA0040.namprd04.prod.outlook.com (2603:10b6:303:6a::15) by AM8PR07MB7537.eurprd07.prod.outlook.com (2603:10a6:20b:243::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8069.28; Mon, 21 Oct 2024 09:00:36 +0000 Received: from AM1PEPF000252DD.eurprd07.prod.outlook.com (2603:10b6:303:6a:cafe::dd) by MW4PR04CA0040.outlook.office365.com (2603:10b6:303:6a::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8069.28 via Frontend Transport; Mon, 21 Oct 2024 09:00:35 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 192.176.1.74) smtp.mailfrom=ericsson.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=ericsson.com; Received-SPF: Pass (protection.outlook.com: domain of ericsson.com designates 192.176.1.74 as permitted sender) receiver=protection.outlook.com; client-ip=192.176.1.74; helo=oa.msg.ericsson.com; pr=C Received: from oa.msg.ericsson.com (192.176.1.74) by AM1PEPF000252DD.mail.protection.outlook.com (10.167.16.55) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8093.14 via Frontend Transport; Mon, 21 Oct 2024 09:00:35 +0000 Received: from seliicinfr00050.seli.gic.ericsson.se (153.88.142.248) by smtp-central.internal.ericsson.com (100.87.178.69) with Microsoft SMTP Server id 15.2.1544.11; Mon, 21 Oct 2024 11:00:22 +0200 Received: from breslau.. (unknown [10.156.25.100]) by seliicinfr00050.seli.gic.ericsson.se (Postfix) with ESMTP id 770A01C008A; Mon, 21 Oct 2024 11:00:22 +0200 (CEST) From: =?UTF-8?q?Mattias=20R=C3=B6nnblom?= To: Jerin Jacob CC: , =?UTF-8?q?Mattias=20R=C3=B6nnblom?= , David Marchand , "Stephen Hemminger" , Anoob Joseph , Hemant Agrawal , Sachin Saxena , Abdullah Sevincer , Pavan Nikhilesh , Shijith Thotton , Harry van Haaren , =?UTF-8?q?Mattias=20R=C3=B6nnblom?= Subject: [PATCH 10/10] eventdev: remove single event enqueue and dequeue Date: Mon, 21 Oct 2024 10:51:15 +0200 Message-ID: <20241021085115.864114-11-mattias.ronnblom@ericsson.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20241021085115.864114-1-mattias.ronnblom@ericsson.com> References: <20241017063842.848360-1-mattias.ronnblom@ericsson.com> <20241021085115.864114-1-mattias.ronnblom@ericsson.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM1PEPF000252DD:EE_|AM8PR07MB7537:EE_ X-MS-Office365-Filtering-Correlation-Id: 3905927d-1751-4a17-4242-08dcf1aed394 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|7416014|376014|82310400026|36860700013|1800799024; X-Microsoft-Antispam-Message-Info: =?utf-8?B?ZjBNVlpMYnQ3UFk1bzE4QklIRmd4dG5aTE90dTM3Z3loZ0dKWmxVUlZ1V09Q?= =?utf-8?B?b3hTeEN2a3dlNnRyVUtpL2JmOGszbWgrcWczdEN1R2FsY3hDSlpUaVJrV1FQ?= =?utf-8?B?SlFQNEZ1YW1kcHRNblNwdkdlOFZJOEtBbmdjRnJwTm1QdC9PZ1VBS0xqUFJR?= =?utf-8?B?SEs3bk14eVRrNWhGejgrM3VyYmZLQmIrNDFCV3Q4U0RncFBUdlZhTHoxOTRZ?= =?utf-8?B?V3luYTFoZXBRZC9rMTErdmpKRDVOdlM2NkEvTHd2K05KZ2ZUdzJTZEMvVWxm?= =?utf-8?B?MGx5UUFvdVZUYU1acXFkcGhiaTNFTjJqSjNkYnp6bmVQdHlBSCttNW8za1hS?= =?utf-8?B?ZzVXZnRwTHhPTU05L0lnSUpBWHZvTGdUTTBHa3VFbnM5bXk0aGl3UXJwZk5Y?= =?utf-8?B?MzV4dzFnL3pEOWVUK0x6ZGVFNys4aVdzNFBKNnppTG9VY3VybGJvYmF6bkx0?= =?utf-8?B?MldNWnhuUUhrd2ZQWWRoUmxjblZEd010NU9pU2VxL0o0MUN3eUlYa211Qk9k?= =?utf-8?B?VHdOckhacXFBSXRwUy9pVVprNHNCK09xMlBTZnhDZmtJZCtTU1ZvY2pQbHhX?= =?utf-8?B?NndVR0VXSG8xZFZHdHQ2ZUFtMk12Z2dpMUNCUEVyOUVQU01FYjhWdWVkdFlX?= =?utf-8?B?OVVjYWoyZHpHYm5KaWQ5dmpKNUFSODhSdUl5ZXdYTDRKNDRFYnQxZTQ3d05X?= =?utf-8?B?ODh0TFIwdVIrMlVJQnNwNVNBeEdVWFBOaExqTjZvSXI4N1Z1RnNhMk9FcS92?= =?utf-8?B?N1ZaZi9HS0lyb2tVeTR5YTRpbkgzWWREL2pKQUJERnpQZ05QUGxiMklrQ1B3?= =?utf-8?B?V3lzWVJCeE0xcUYyZjJreTVEMHllV2twdndwYlJVTE1nQkp1WTVtV2dNbTlm?= =?utf-8?B?T3JaSEZQdWpUTGNuQjI2bDdPSlB0VnJqa3l1cUZBSDlOZmVkZ2ordkxBR2pJ?= =?utf-8?B?WS9JWDh6ZjdjRERrbm5za0p2RG03S1c5TkZKU05MVS9UL0xaZFlYYm40enY5?= =?utf-8?B?UTE1aS92a2kwcDE4LzdPVklPRnNzVkVMa2xqY2dxMVo4eXViM3J1WXJiaCto?= =?utf-8?B?ZEQydGUxVWl0a3lpNXhUYnNxYU0vd2xKcStUdml1eGE2dm5nM1RzWTd6bmpD?= =?utf-8?B?SWZEU3R1R2RlcHpqdFhsdVB6bnpNQjR3NDdWRklVZGJ6blpkM3hqVUtWVnJL?= =?utf-8?B?Q0lPaDYwbktOQ0wrZXhKT01qMDhpRVk4OHRJOFU3NmVsMWdPbVdQMElBV2Vj?= =?utf-8?B?dGd6aDExQXNzcWhNenFONnFFcDBRK1NnK0h6N3F4LzNrdDdzV2ppN1hjSHNh?= =?utf-8?B?MGVaSXZHNWZkOWJwYXNSVlQ5WUxWS09XejJmWXlnU0JjMzJGdXFjNG8vc3pS?= =?utf-8?B?eFFZMEY4ZldQaXQzMUs1SWdnaFhkemF5NEpYTWFIRnBJV0JCVGt5RHc2aGNs?= =?utf-8?B?QjUySURPMEJNMStScEh3S3BtOTk1ZTRMYWlCWC8rY1d3UStoV3hIclhhU2JF?= =?utf-8?B?S0gyNUM0MzloclhhZm5CckdMb2Q4RjhDNjNGK3FDQ210N21aeHp1V1R1M25X?= =?utf-8?B?U1Q1VnpaeGFybFZBOFNpeXpVOW1lNlZXczMrNEplaFN4Qk5XaTlLRUw2dHlG?= =?utf-8?B?V01jZ29pVWwwdVVqUXZjUWhPVjRpZzJvS1lxd3M0U25vNVIwS2ZlNHNBQS83?= =?utf-8?B?UWtzYWZuRm1zaE1ONEprTkRCRWJkdTlKTi8xZFMzSXI4L25HVkl0WVB5S2hH?= =?utf-8?B?cVFzRlVXeVpUN0ZUM3drTUJPRjlmZm1tSE9qSzRkc0d2YkhQRjNsdW02QWl5?= =?utf-8?B?aWI4ZFp2bmh3WTdEL0hZU2g4OExFcTZ0VGdaYTh2Nm5CNzhLU3JjQU1ZMm40?= =?utf-8?B?VEdiTk9Pa1Y5MlpQcjkyOTBEL0JWWktrN3JodnpFb2FQRFE9PQ==?= X-Forefront-Antispam-Report: CIP:192.176.1.74; CTRY:SE; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:oa.msg.ericsson.com; PTR:office365.se.ericsson.net; CAT:NONE; SFS:(13230040)(7416014)(376014)(82310400026)(36860700013)(1800799024); DIR:OUT; SFP:1101; X-OriginatorOrg: ericsson.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Oct 2024 09:00:35.5611 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 3905927d-1751-4a17-4242-08dcf1aed394 X-MS-Exchange-CrossTenant-Id: 92e84ceb-fbfd-47ab-be52-080c6b87953f X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=92e84ceb-fbfd-47ab-be52-080c6b87953f; Ip=[192.176.1.74]; Helo=[oa.msg.ericsson.com] X-MS-Exchange-CrossTenant-AuthSource: AM1PEPF000252DD.eurprd07.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR07MB7537 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 Remove the single event enqueue and dequeue, since they did not provide any noticeable performance benefits. This is a change of the ABI, previously announced as a deprecation notice. These functions were not directly invoked by the application, so the API remains unaffected. Signed-off-by: Mattias Rönnblom -- RFC v3: * Update release notes. (Jerin Jacob) * Remove single-event enqueue and dequeue function typedefs. (Pavan Nikhilesh) --- doc/guides/rel_notes/deprecation.rst | 6 +----- doc/guides/rel_notes/release_24_11.rst | 3 +++ lib/eventdev/eventdev_pmd.h | 4 ---- lib/eventdev/eventdev_private.c | 22 ---------------------- lib/eventdev/rte_eventdev.h | 21 ++++----------------- lib/eventdev/rte_eventdev_core.h | 11 ----------- 6 files changed, 8 insertions(+), 59 deletions(-) diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst index 17b7332007..a90b54fc77 100644 --- a/doc/guides/rel_notes/deprecation.rst +++ b/doc/guides/rel_notes/deprecation.rst @@ -131,11 +131,7 @@ Deprecation Notices * eventdev: The single-event (non-burst) enqueue and dequeue operations, used by static inline burst enqueue and dequeue functions in ``rte_eventdev.h``, - will be removed in DPDK 23.11. - This simplification includes changing the layout and potentially also - the size of the public ``rte_event_fp_ops`` struct, breaking the ABI. - Since these functions are not called directly by the application, - the API remains unaffected. + are removed in DPDK 24.11. * pipeline: The pipeline library legacy API (functions rte_pipeline_*) will be deprecated and subsequently removed in DPDK 24.11 release. diff --git a/doc/guides/rel_notes/release_24_11.rst b/doc/guides/rel_notes/release_24_11.rst index fa4822d928..5461798970 100644 --- a/doc/guides/rel_notes/release_24_11.rst +++ b/doc/guides/rel_notes/release_24_11.rst @@ -401,6 +401,9 @@ ABI Changes * eventdev: Added ``preschedule_type`` field to ``rte_event_dev_config`` structure. +* eventdev: The PMD single-event enqueue and dequeue function pointers are removed + from ``rte_event_fp_fps``. + * graph: To accommodate node specific xstats counters, added ``xstat_cntrs``, ``xstat_desc`` and ``xstat_count`` to ``rte_graph_cluster_node_stats``, added new structure ``rte_node_xstats`` to ``rte_node_register`` and diff --git a/lib/eventdev/eventdev_pmd.h b/lib/eventdev/eventdev_pmd.h index af855e3467..36148f8d86 100644 --- a/lib/eventdev/eventdev_pmd.h +++ b/lib/eventdev/eventdev_pmd.h @@ -158,16 +158,12 @@ struct __rte_cache_aligned rte_eventdev { uint8_t attached : 1; /**< Flag indicating the device is attached */ - event_enqueue_t enqueue; - /**< Pointer to PMD enqueue function. */ event_enqueue_burst_t enqueue_burst; /**< Pointer to PMD enqueue burst function. */ event_enqueue_burst_t enqueue_new_burst; /**< Pointer to PMD enqueue burst function(op new variant) */ event_enqueue_burst_t enqueue_forward_burst; /**< Pointer to PMD enqueue burst function(op forward variant) */ - event_dequeue_t dequeue; - /**< Pointer to PMD dequeue function. */ event_dequeue_burst_t dequeue_burst; /**< Pointer to PMD dequeue burst function. */ event_maintain_t maintain; diff --git a/lib/eventdev/eventdev_private.c b/lib/eventdev/eventdev_private.c index b628f4a69e..6df129fc2d 100644 --- a/lib/eventdev/eventdev_private.c +++ b/lib/eventdev/eventdev_private.c @@ -5,15 +5,6 @@ #include "eventdev_pmd.h" #include "rte_eventdev.h" -static uint16_t -dummy_event_enqueue(__rte_unused void *port, - __rte_unused const struct rte_event *ev) -{ - RTE_EDEV_LOG_ERR( - "event enqueue requested for unconfigured event device"); - return 0; -} - static uint16_t dummy_event_enqueue_burst(__rte_unused void *port, __rte_unused const struct rte_event ev[], @@ -24,15 +15,6 @@ dummy_event_enqueue_burst(__rte_unused void *port, return 0; } -static uint16_t -dummy_event_dequeue(__rte_unused void *port, __rte_unused struct rte_event *ev, - __rte_unused uint64_t timeout_ticks) -{ - RTE_EDEV_LOG_ERR( - "event dequeue requested for unconfigured event device"); - return 0; -} - static uint16_t dummy_event_dequeue_burst(__rte_unused void *port, __rte_unused struct rte_event ev[], @@ -129,11 +111,9 @@ event_dev_fp_ops_reset(struct rte_event_fp_ops *fp_op) { static void *dummy_data[RTE_MAX_QUEUES_PER_PORT]; static const struct rte_event_fp_ops dummy = { - .enqueue = dummy_event_enqueue, .enqueue_burst = dummy_event_enqueue_burst, .enqueue_new_burst = dummy_event_enqueue_burst, .enqueue_forward_burst = dummy_event_enqueue_burst, - .dequeue = dummy_event_dequeue, .dequeue_burst = dummy_event_dequeue_burst, .maintain = dummy_event_maintain, .txa_enqueue = dummy_event_tx_adapter_enqueue, @@ -153,11 +133,9 @@ void event_dev_fp_ops_set(struct rte_event_fp_ops *fp_op, const struct rte_eventdev *dev) { - fp_op->enqueue = dev->enqueue; fp_op->enqueue_burst = dev->enqueue_burst; fp_op->enqueue_new_burst = dev->enqueue_new_burst; fp_op->enqueue_forward_burst = dev->enqueue_forward_burst; - fp_op->dequeue = dev->dequeue; fp_op->dequeue_burst = dev->dequeue_burst; fp_op->maintain = dev->maintain; fp_op->txa_enqueue = dev->txa_enqueue; diff --git a/lib/eventdev/rte_eventdev.h b/lib/eventdev/rte_eventdev.h index b5c3c16dd0..fabd1490db 100644 --- a/lib/eventdev/rte_eventdev.h +++ b/lib/eventdev/rte_eventdev.h @@ -2596,14 +2596,8 @@ __rte_event_enqueue_burst(uint8_t dev_id, uint8_t port_id, } #endif rte_eventdev_trace_enq_burst(dev_id, port_id, ev, nb_events, (void *)fn); - /* - * Allow zero cost non burst mode routine invocation if application - * requests nb_events as const one - */ - if (nb_events == 1) - return (fp_ops->enqueue)(port, ev); - else - return fn(port, ev, nb_events); + + return fn(port, ev, nb_events); } /** @@ -2852,15 +2846,8 @@ rte_event_dequeue_burst(uint8_t dev_id, uint8_t port_id, struct rte_event ev[], } #endif rte_eventdev_trace_deq_burst(dev_id, port_id, ev, nb_events); - /* - * Allow zero cost non burst mode routine invocation if application - * requests nb_events as const one - */ - if (nb_events == 1) - return (fp_ops->dequeue)(port, ev, timeout_ticks); - else - return (fp_ops->dequeue_burst)(port, ev, nb_events, - timeout_ticks); + + return (fp_ops->dequeue_burst)(port, ev, nb_events, timeout_ticks); } #define RTE_EVENT_DEV_MAINT_OP_FLUSH (1 << 0) diff --git a/lib/eventdev/rte_eventdev_core.h b/lib/eventdev/rte_eventdev_core.h index 2706d5e6c8..1818483044 100644 --- a/lib/eventdev/rte_eventdev_core.h +++ b/lib/eventdev/rte_eventdev_core.h @@ -12,18 +12,11 @@ extern "C" { #endif -typedef uint16_t (*event_enqueue_t)(void *port, const struct rte_event *ev); -/**< @internal Enqueue event on port of a device */ - typedef uint16_t (*event_enqueue_burst_t)(void *port, const struct rte_event ev[], uint16_t nb_events); /**< @internal Enqueue burst of events on port of a device */ -typedef uint16_t (*event_dequeue_t)(void *port, struct rte_event *ev, - uint64_t timeout_ticks); -/**< @internal Dequeue event from port of a device */ - typedef uint16_t (*event_dequeue_burst_t)(void *port, struct rte_event ev[], uint16_t nb_events, uint64_t timeout_ticks); @@ -60,16 +53,12 @@ typedef void (*event_preschedule_t)(void *port, struct __rte_cache_aligned rte_event_fp_ops { void **data; /**< points to array of internal port data pointers */ - event_enqueue_t enqueue; - /**< PMD enqueue function. */ event_enqueue_burst_t enqueue_burst; /**< PMD enqueue burst function. */ event_enqueue_burst_t enqueue_new_burst; /**< PMD enqueue burst new function. */ event_enqueue_burst_t enqueue_forward_burst; /**< PMD enqueue burst fwd function. */ - event_dequeue_t dequeue; - /**< PMD dequeue function. */ event_dequeue_burst_t dequeue_burst; /**< PMD dequeue burst function. */ event_maintain_t maintain; -- 2.43.0