From patchwork Tue Dec 12 11:32:16 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 135062 X-Patchwork-Delegate: jerinj@marvell.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id AC76A436D3; Tue, 12 Dec 2023 12:32:45 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 944AA42E1F; Tue, 12 Dec 2023 12:32:39 +0100 (CET) Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.65]) by mails.dpdk.org (Postfix) with ESMTP id C08584026E for ; Tue, 12 Dec 2023 12:32:37 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1702380757; x=1733916757; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=nSxDuu39w51a7L8t6vaUBmttdIKB+OmPX3007iEUhg4=; b=RioxlNzEaHxt3LvD1LOysK4+H49hHGTfiIt9szOVGUnyohDfEQlAD0mF 1N+4lWwkBKWR4EQ293Q5iGnik84E0NIDnDH/GevREMtT2GXzChbymTH3q fgcwJAhhNZuugBWjjM5Y+eMfUx6rM9XOxXFHqdLULVyGVG1MOWzubaFZ6 q+tOUuvEAmWqGv4XaQ0bgp+IdRF8kt/xI3wcrLXHyLYbF9lWlfxY0ETPH iTG2rdZqI6j0po7enbvgQIyWJIIMbSvJMqUFzjlslXmedH5q2ghUS6xQa 9yls7XGr0mM1y/gDoW9A8EmBh5d1H0gjXOU+vuRmS0g6c3XuZ+M0TB0zh A==; X-IronPort-AV: E=McAfee;i="6600,9927,10921"; a="398635853" X-IronPort-AV: E=Sophos;i="6.04,270,1695711600"; d="scan'208";a="398635853" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Dec 2023 03:32:37 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10921"; a="766794690" X-IronPort-AV: E=Sophos;i="6.04,270,1695711600"; d="scan'208";a="766794690" Received: from silpixa00401316.ir.intel.com (HELO silpixa00401385.ir.intel.com) ([10.237.214.22]) by orsmga007.jf.intel.com with ESMTP; 12 Dec 2023 03:32:35 -0800 From: Bruce Richardson To: dev@dpdk.org Cc: jerinj@marvell.com, Bruce Richardson , =?utf-8?q?Mattias_R=C3=B6nnblom?= Subject: [PATCH v3 2/9] eventdev: clarify all-types flag documentation Date: Tue, 12 Dec 2023 11:32:16 +0000 Message-Id: <20231212113223.31147-3-bruce.richardson@intel.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231212113223.31147-1-bruce.richardson@intel.com> References: <20231120172606.505579-1-bruce.richardson@intel.com> <20231212113223.31147-1-bruce.richardson@intel.com> MIME-Version: 1.0 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 Rather than requiring that any device advertising the RTE_EVENT_DEV_CAP_QUEUE_ALL_TYPES flag support all of atomic, ordered and parallel scheduling, we can redefine the field so that it basically means that you don't need to specify the queue scheduling type at config time. Instead all types of supported events can be sent to all queues. Suggested-by: Mattias Rönnblom Signed-off-by: Bruce Richardson Acked-by: Jerin Jacob --- lib/eventdev/rte_eventdev.h | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/lib/eventdev/rte_eventdev.h b/lib/eventdev/rte_eventdev.h index d48957362c..35865f017f 100644 --- a/lib/eventdev/rte_eventdev.h +++ b/lib/eventdev/rte_eventdev.h @@ -250,11 +250,22 @@ struct rte_event; * @see rte_event_dequeue_burst() */ #define RTE_EVENT_DEV_CAP_QUEUE_ALL_TYPES (1ULL << 3) -/**< Event device is capable of enqueuing events of any type to any queue. +/**< Event device is capable of accepting enqueued events, of any type + * advertised as supported by the device, to all destination queues. + * + * When this capability is set, the "schedule_type" field of the + * rte_event_queue_conf structure is ignored when a queue is being configured. + * Instead the the "sched_type" field of each event enqueued is used to + * select the scheduling to be performed on that event. + * * If this capability is not set, the queue only supports events of the - * *RTE_SCHED_TYPE_* type that it was created with. + * *RTE_SCHED_TYPE_* type specified in the rte_event_queue_conf structure + * at time of configuration. * - * @see RTE_SCHED_TYPE_* values + * @see RTE_SCHED_TYPE_ATOMIC + * @see RTE_SCHED_TYPE_ORDERED + * @see RTE_SCHED_TYPE_PARALLEL + * @see rte_event_queue_conf.schedule_type */ #define RTE_EVENT_DEV_CAP_BURST_MODE (1ULL << 4) /**< Event device is capable of operating in burst mode for enqueue(forward,