> -----Original Message----- > From: Jerin Jacob <jerinjac...@gmail.com> > Sent: Tuesday, September 29, 2020 1:46 PM > To: McDaniel, Timothy <timothy.mcdan...@intel.com>; Thomas Monjalon > <tho...@monjalon.net>; David Marchand <david.march...@redhat.com>; > Ma, Liang J <liang.j...@intel.com> > Cc: dpdk-dev <dev@dpdk.org>; Carrillo, Erik G <erik.g.carri...@intel.com>; > Eads, Gage <gage.e...@intel.com>; Van Haaren, Harry > <harry.van.haa...@intel.com>; Jerin Jacob <jer...@marvell.com> > Subject: Re: [dpdk-dev] [PATCH 00/22] Add DLB2 PMD > > On Sat, Sep 12, 2020 at 2:00 AM Timothy McDaniel > <timothy.mcdan...@intel.com> wrote: > > > > The following patch series adds support for a new eventdev PMD. The DLB2 > > PMD adds support for the Intel Dynamic Load Balancer 2.0 (DLB2) > > hardware. > > The DLB2 is a PCIe device that provides load-balanced, prioritized > > scheduling of core-to-core communication. The device consists of > > queues and arbiters that connect producer and consumer cores, and > > implements load-balanced queueing features including: > > - Lock-free multi-producer/multi-consumer operation. > > - Multiple priority levels for varying traffic types. > > - 'Direct' traffic (i.e. multi-producer/single-consumer) > > - Simple unordered load-balanced distribution. > > - Atomic lock-free load balancing across multiple consumers. > > - Queue element reordering feature allowing ordered load-balanced > > distribution. > > > > The DLB2 hardware supports both load balanced and directed ports and > > queues. Unlike other eventdev devices already in the repo, not all > > DLB2 ports and queues are equally capable. In particular, directed > > ports are limited to a single link, and must be connected to a > > directed queue. Additionally, even though LDB ports may link multiple > > queues, > > the number of queues that may be linked is limited by hardware. > > > > While reviewing the code, please be aware that this PMD has full > > control over the DLB2 hardware. Intel will be extending the DLB2 PMD > > in the future (not as part of this first series) with a mode that we > > refer to as the bifurcated PMD. The bifurcated PMD communicates with a > > kernel driver to configure the device, ports, and queues, and memory > > maps device MMIO so datapath operations occur purely in user-space. > > Note that the DLB2 hardware is a successor of the DLB hardware, and > > as such is structured similarly, both in terms of code layout and > > implementation. > > > > The framework to support both the PF PMD and bifurcated PMD exists in > > this patchset, and is why the iface.[ch] layer is present. > > > > Depends-on: patch-77466 ("eventdev: add PCI probe named convenience > function") > > Depends-on: series-12160 ("Eventdev ABI changes") > > Depends-on: patch-77460 ("eal: add umonitor umwait to x86 cpuflags") > > Cc: Thomas and David > > There is a duplicate for patch-77460 as > https://patches.dpdk.org/patch/76554/ from different authors, > and both are open comments to be closed. > @McDaniel, Timothy and @Liang Ma , We need to have this eal patch on > master before I merge this > patch series in eventdev-next. Please check. > >
We have discussed this duplication with @Liang Ma, who split out just the bit definitions into its own patch. DLB/DLB2 have been updated to use his new patch going forward, but will duplicate it here until it is merged.