From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jerin Jacob Subject: Re: [RFC] queue: introduce queue APIs and driver framework Date: Wed, 27 Jun 2018 21:49:49 +0530 Message-ID: <20180627161947.GA28037@jerin> References: <1530115574-102162-1-git-send-email-honnappa.nagarahalli@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: dev@dpdk.org, gavin.hu@arm.com, nd@arm.com To: Honnappa Nagarahalli Return-path: Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-sn1nam01on0042.outbound.protection.outlook.com [104.47.32.42]) by dpdk.org (Postfix) with ESMTP id C81831BF59 for ; Wed, 27 Jun 2018 18:20:02 +0200 (CEST) Content-Disposition: inline In-Reply-To: <1530115574-102162-1-git-send-email-honnappa.nagarahalli@arm.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" -----Original Message----- > Date: Wed, 27 Jun 2018 11:06:13 -0500 > From: Honnappa Nagarahalli > To: dev@dpdk.org > CC: honnappa.nagarahalli@arm.com, gavin.hu@arm.com, nd@arm.com > Subject: [dpdk-dev] [RFC] queue: introduce queue APIs and driver framework > X-Mailer: git-send-email 2.7.4 > > > DPDK offers pipeline model of packet processing. One of the key > components of this model is the core to core packet exchange. > rte_ring and rte_event_ring functions are 2 methods provided > currently for core to core communication. However, these two > do not separate the APIs from implementation. This does not > allow using hardware queue implementations in pipeline model. > This change adds queue APIs and driver framework so that > HW queues can be used for core to core communication in > pipeline model. > When different implementations (ex: HW queues and rte_ring) are used Just to understand, Do you have any HW in mind where it can do generic multi producer/multi consumer queue operations for core to core in HW as offload. > for the same object in different platforms, it is important to > make sure that the application is portable. Hence features of > different implementations must be elevated to the API level, so that > the application writers can make the right choice. > Currently, basic APIs are created, will add more required APIs > as this progresses. > > Honnappa Nagarahalli (1): > queue: introduce queue APIs and driver framework > > lib/librte_queue/rte_queue.c | 122 ++++++++++++++++++++++ > lib/librte_queue/rte_queue.h | 200 ++++++++++++++++++++++++++++++++++++ > lib/librte_queue/rte_queue_driver.h | 157 ++++++++++++++++++++++++++++ > 3 files changed, 479 insertions(+) > create mode 100644 lib/librte_queue/rte_queue.c > create mode 100644 lib/librte_queue/rte_queue.h > create mode 100644 lib/librte_queue/rte_queue_driver.h > > -- > 2.7.4 >